blob: 0a5f6fb518e94cef00ea069ad0e1141638f5baba [file] [log] [blame]
spv.bufferhandle18.frag
// Module Version 10000
// Generated by (magic number): 80008
// Id's are bound by 196
Capability Shader
Capability Int64
Capability PhysicalStorageBufferAddressesEXT
Extension "SPV_EXT_physical_storage_buffer"
1: ExtInstImport "GLSL.std.450"
MemoryModel PhysicalStorageBuffer64EXT GLSL450
EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginUpperLeft
Source GLSL 450
SourceExtension "GL_EXT_buffer_reference"
SourceExtension "GL_EXT_buffer_reference2"
SourceExtension "GL_EXT_scalar_block_layout"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int64"
Name 4 "main"
Name 9 "T1"
MemberName 9(T1) 0 "x"
MemberName 9(T1) 1 "y"
Name 11 "a"
Name 15 "b"
Name 18 "c"
Name 24 "d"
Name 26 "e"
Name 29 "f"
Name 59 "arr"
Name 71 "i"
Name 130 "j"
Name 153 "k"
Name 160 "x"
Name 171 "y"
Name 178 "T2"
MemberName 178(T2) 0 "x"
Name 180 "m"
Name 190 "x"
Name 195 "buf"
MemberDecorate 9(T1) 0 Offset 0
MemberDecorate 9(T1) 1 Offset 4
Decorate 9(T1) Block
Decorate 11(a) DecorationAliasedPointerEXT
Decorate 15(b) DecorationAliasedPointerEXT
Decorate 18(c) DecorationAliasedPointerEXT
Decorate 24(d) DecorationAliasedPointerEXT
Decorate 26(e) DecorationAliasedPointerEXT
Decorate 29(f) DecorationAliasedPointerEXT
Decorate 59(arr) DecorationAliasedPointerEXT
Decorate 130(j) DecorationAliasedPointerEXT
Decorate 153(k) DecorationAliasedPointerEXT
MemberDecorate 178(T2) 0 Offset 0
Decorate 178(T2) Block
Decorate 180(m) DecorationAliasedPointerEXT
2: TypeVoid
3: TypeFunction 2
TypeForwardPointer 6 PhysicalStorageBufferEXT
7: TypeInt 32 1
8: TypeInt 32 0
9(T1): TypeStruct 7(int) 8(int)
6: TypePointer PhysicalStorageBufferEXT 9(T1)
10: TypePointer Function 6(ptr)
12: TypeInt 64 0
13: 12(int64_t) Constant 4 0
16: 12(int64_t) Constant 5 0
19: TypeBool
20: 19(bool) ConstantTrue
27: 12(int64_t) Constant 6 0
31: 7(int) Constant 1
32: TypePointer PhysicalStorageBufferEXT 8(int)
35: 8(int) Constant 0
37: 12(int64_t) Constant 8 0
39: 12(int64_t) Constant 9 0
44: 12(int64_t) Constant 24 0
47: 7(int) Constant 0
48: TypePointer PhysicalStorageBufferEXT 7(int)
52: 12(int64_t) Constant 40 0
56: 8(int) Constant 2
57: TypeArray 6(ptr) 56
58: TypePointer Function 57
66: 12(int64_t) Constant 56 0
70: TypePointer Function 7(int)
77: TypeInt 64 1
137: 12(int64_t) Constant 16 0
146: 12(int64_t) Constant 32 0
156: 12(int64_t) Constant 48 0
159: TypePointer Function 77(int64_t)
168: 77(int64_t) Constant 8 0
170: TypePointer Function 12(int64_t)
174: 12(int64_t) Constant 4294967288 4294967295
TypeForwardPointer 177 PhysicalStorageBufferEXT
178(T2): TypeStruct 7(int)
177: TypePointer PhysicalStorageBufferEXT 178(T2)
179: TypePointer Function 177(ptr)
183: 12(int64_t) Constant 64 0
186: 7(int) Constant 3
187: 8(int) Constant 3
188: TypeArray 7(int) 187
189: TypePointer Private 188
190(x): 189(ptr) Variable Private
191: 12(int64_t) Constant 10 0
192: 8(int) Constant 8
193: TypeArray 8(int) 192
194: TypePointer Private 193
195(buf): 194(ptr) Variable Private
4(main): 2 Function None 3
5: Label
11(a): 10(ptr) Variable Function
15(b): 10(ptr) Variable Function
18(c): 10(ptr) Variable Function
24(d): 10(ptr) Variable Function
26(e): 10(ptr) Variable Function
29(f): 10(ptr) Variable Function
59(arr): 58(ptr) Variable Function
71(i): 70(ptr) Variable Function
130(j): 10(ptr) Variable Function
153(k): 10(ptr) Variable Function
160(x): 159(ptr) Variable Function
171(y): 170(ptr) Variable Function
180(m): 179(ptr) Variable Function
14: 6(ptr) Bitcast 13
Store 11(a) 14
17: 6(ptr) Bitcast 16
Store 15(b) 17
21: 6(ptr) Load 11(a)
22: 6(ptr) Load 15(b)
23: 6(ptr) Select 20 21 22
Store 18(c) 23
25: 6(ptr) Load 15(b)
Store 24(d) 25
28: 6(ptr) Bitcast 27
Store 26(e) 28
30: 6(ptr) Load 11(a)
33: 32(ptr) AccessChain 30 31
34: 8(int) Load 33 Aligned 4
36: 19(bool) INotEqual 34 35
38: 6(ptr) Bitcast 37
40: 6(ptr) Bitcast 39
41: 6(ptr) Select 36 38 40
Store 29(f) 41
42: 6(ptr) Load 29(f)
43: 12(int64_t) ConvertPtrToU 42
45: 12(int64_t) IAdd 43 44
46: 6(ptr) ConvertUToPtr 45
49: 48(ptr) AccessChain 46 47
Store 49 31 Aligned 8
50: 6(ptr) Load 29(f)
51: 12(int64_t) ConvertPtrToU 50
53: 12(int64_t) IAdd 51 52
54: 6(ptr) ConvertUToPtr 53
55: 48(ptr) AccessChain 54 47
Store 55 31 Aligned 8
60: 6(ptr) Load 11(a)
61: 6(ptr) Load 29(f)
62: 57 CompositeConstruct 60 61
Store 59(arr) 62
63: 10(ptr) AccessChain 59(arr) 31
64: 6(ptr) Load 63
65: 12(int64_t) ConvertPtrToU 64
67: 12(int64_t) IAdd 65 66
68: 6(ptr) ConvertUToPtr 67
69: 48(ptr) AccessChain 68 47
Store 69 31 Aligned 8
72: 7(int) Load 71(i)
73: 10(ptr) AccessChain 59(arr) 72
74: 6(ptr) Load 73
75: 12(int64_t) ConvertPtrToU 74
76: 7(int) Load 71(i)
78: 77(int64_t) SConvert 76
79: 12(int64_t) Bitcast 78
80: 12(int64_t) IMul 79 37
81: 12(int64_t) IAdd 75 80
82: 6(ptr) ConvertUToPtr 81
83: 48(ptr) AccessChain 82 47
Store 83 31 Aligned 8
84: 7(int) Load 71(i)
85: 10(ptr) AccessChain 59(arr) 84
86: 6(ptr) Load 85
87: 12(int64_t) ConvertPtrToU 86
88: 7(int) Load 71(i)
89: 77(int64_t) SConvert 88
90: 12(int64_t) Bitcast 89
91: 12(int64_t) IMul 90 37
92: 12(int64_t) IAdd 87 91
93: 6(ptr) ConvertUToPtr 92
94: 12(int64_t) ConvertPtrToU 93
95: 7(int) Load 71(i)
96: 77(int64_t) SConvert 95
97: 12(int64_t) Bitcast 96
98: 12(int64_t) IMul 97 37
99: 12(int64_t) IAdd 94 98
100: 6(ptr) ConvertUToPtr 99
101: 12(int64_t) ConvertPtrToU 100
102: 7(int) Load 71(i)
103: 77(int64_t) SConvert 102
104: 12(int64_t) Bitcast 103
105: 12(int64_t) IMul 104 37
106: 12(int64_t) IAdd 101 105
107: 6(ptr) ConvertUToPtr 106
108: 12(int64_t) ConvertPtrToU 107
109: 7(int) Load 71(i)
110: 77(int64_t) SConvert 109
111: 12(int64_t) Bitcast 110
112: 12(int64_t) IMul 111 37
113: 12(int64_t) IAdd 108 112
114: 6(ptr) ConvertUToPtr 113
115: 12(int64_t) ConvertPtrToU 114
116: 7(int) Load 71(i)
117: 77(int64_t) SConvert 116
118: 12(int64_t) Bitcast 117
119: 12(int64_t) IMul 118 37
120: 12(int64_t) IAdd 115 119
121: 6(ptr) ConvertUToPtr 120
122: 12(int64_t) ConvertPtrToU 121
123: 7(int) Load 71(i)
124: 77(int64_t) SConvert 123
125: 12(int64_t) Bitcast 124
126: 12(int64_t) IMul 125 37
127: 12(int64_t) IAdd 122 126
128: 6(ptr) ConvertUToPtr 127
129: 48(ptr) AccessChain 128 47
Store 129 31 Aligned 8
131: 6(ptr) Load 130(j)
132: 12(int64_t) ConvertPtrToU 131
133: 12(int64_t) IAdd 132 37
134: 6(ptr) ConvertUToPtr 133
Store 130(j) 134
135: 6(ptr) Load 130(j)
136: 12(int64_t) ConvertPtrToU 135
138: 12(int64_t) ISub 136 137
139: 6(ptr) ConvertUToPtr 138
Store 130(j) 139
140: 6(ptr) Load 130(j)
141: 12(int64_t) ConvertPtrToU 140
142: 12(int64_t) IAdd 141 44
143: 6(ptr) ConvertUToPtr 142
Store 130(j) 143
144: 6(ptr) Load 130(j)
145: 12(int64_t) ConvertPtrToU 144
147: 12(int64_t) ISub 145 146
148: 6(ptr) ConvertUToPtr 147
Store 130(j) 148
149: 6(ptr) Load 130(j)
150: 12(int64_t) ConvertPtrToU 149
151: 12(int64_t) IAdd 52 150
152: 6(ptr) ConvertUToPtr 151
Store 130(j) 152
154: 6(ptr) Load 130(j)
155: 12(int64_t) ConvertPtrToU 154
157: 12(int64_t) IAdd 155 156
158: 6(ptr) ConvertUToPtr 157
Store 153(k) 158
161: 6(ptr) Load 153(k)
162: 12(int64_t) ConvertPtrToU 161
163: 77(int64_t) Bitcast 162
164: 6(ptr) Load 130(j)
165: 12(int64_t) ConvertPtrToU 164
166: 77(int64_t) Bitcast 165
167: 77(int64_t) ISub 163 166
169: 77(int64_t) SDiv 167 168
Store 160(x) 169
Store 171(y) 37
172: 6(ptr) Load 153(k)
173: 12(int64_t) ConvertPtrToU 172
175: 12(int64_t) IAdd 173 174
176: 6(ptr) ConvertUToPtr 175
Store 153(k) 176
181: 177(ptr) Load 180(m)
182: 12(int64_t) ConvertPtrToU 181
184: 12(int64_t) IAdd 182 183
185: 177(ptr) ConvertUToPtr 184
Store 180(m) 185
Return
FunctionEnd