blob: b9949d1858b686fd856b2a52de587ee3c060086c [file] [log] [blame]
spv.int16.amd.frag
// Module Version 10000
// Generated by (magic number): 80002
// Id's are bound by 558
Capability Shader
Capability Float16
Capability Float64
Capability Int64
Capability Int16
Capability StorageUniform16
Capability StorageInputOutput16
Extension "SPV_AMD_gpu_shader_half_float"
Extension "SPV_AMD_gpu_shader_int16"
Extension "SPV_KHR_16bit_storage"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 517 519
ExecutionMode 4 OriginUpperLeft
Source GLSL 450
SourceExtension "GL_AMD_gpu_shader_half_float"
SourceExtension "GL_AMD_gpu_shader_int16"
SourceExtension "GL_ARB_gpu_shader_int64"
Name 4 "main"
Name 6 "literal("
Name 8 "operators("
Name 10 "typeCast("
Name 12 "builtinFuncs("
Name 17 "u16"
Name 26 "Uniforms"
MemberName 26(Uniforms) 0 "i"
Name 28 ""
Name 34 "indexable"
Name 45 "indexable"
Name 51 "u16v"
Name 57 "i16"
Name 70 "u16"
Name 127 "b"
Name 148 "u"
Name 158 "i"
Name 188 "i16v"
Name 191 "bv"
Name 199 "u16v"
Name 211 "iv"
Name 224 "uv"
Name 238 "fv"
Name 250 "dv"
Name 262 "f16v"
Name 274 "i64v"
Name 288 "u64v"
Name 303 "i16v"
Name 309 "i16"
Name 317 "u16v"
Name 319 "u16"
Name 391 "f16v"
Name 394 "exp"
Name 395 "ResType"
Name 416 "packi"
Name 421 "packu"
Name 430 "packi64"
Name 439 "packu64"
Name 448 "bv"
Name 513 "Block"
MemberName 513(Block) 0 "i16v"
MemberName 513(Block) 1 "u16"
Name 515 "block"
Name 517 "iu16v"
Name 519 "ii16"
Name 520 "si64"
Name 521 "su64"
Name 522 "si"
Name 523 "su"
Name 524 "sb"
Name 525 "si16"
Name 526 "su16"
MemberDecorate 26(Uniforms) 0 Offset 0
Decorate 26(Uniforms) Block
Decorate 28 DescriptorSet 0
Decorate 28 Binding 0
MemberDecorate 513(Block) 0 Offset 0
MemberDecorate 513(Block) 1 Offset 6
Decorate 513(Block) Block
Decorate 515(block) DescriptorSet 0
Decorate 515(block) Binding 1
Decorate 517(iu16v) Flat
Decorate 517(iu16v) Location 0
Decorate 519(ii16) Flat
Decorate 519(ii16) Location 1
Decorate 520(si64) SpecId 100
Decorate 521(su64) SpecId 101
Decorate 522(si) SpecId 102
Decorate 523(su) SpecId 103
Decorate 524(sb) SpecId 104
Decorate 525(si16) SpecId 105
Decorate 526(su16) SpecId 106
2: TypeVoid
3: TypeFunction 2
14: TypeInt 16 0
15: TypeInt 32 1
16: TypePointer Function 15(int)
18: TypeInt 16 1
19: TypeInt 32 0
20: 19(int) Constant 3
21: TypeArray 18(int) 20
22: 18(int) Constant 273
23: 18(int) Constant 4294967294
24: 18(int) Constant 256
25: 21 ConstantComposite 22 23 24
26(Uniforms): TypeStruct 19(int)
27: TypePointer Uniform 26(Uniforms)
28: 27(ptr) Variable Uniform
29: 15(int) Constant 0
30: TypePointer Uniform 19(int)
33: TypePointer Function 21
35: TypePointer Function 18(int)
39: TypeArray 15(int) 20
40: 14(int) Constant 65535
41: 39 ConstantComposite 40 40 40
44: TypePointer Function 39
49: TypeVector 15(int) 3
50: TypePointer Function 49(ivec3)
53: 18(int) Constant 1
54: TypeVector 18(int) 3
111: 19(int) Constant 1
117: 19(int) Constant 2
125: TypeBool
126: TypePointer Function 125(bool)
128: 19(int) Constant 0
147: TypePointer Function 19(int)
186: TypeVector 18(int) 2
187: TypePointer Function 186(ivec2)
189: TypeVector 125(bool) 2
190: TypePointer Function 189(bvec2)
193: 18(int) Constant 0
194: 186(ivec2) ConstantComposite 193 193
195: 186(ivec2) ConstantComposite 53 53
197: TypeVector 15(int) 2
198: TypePointer Function 197(ivec2)
201: 14(int) Constant 0
202: 14(int) Constant 1
203: TypeVector 14(int) 2
204: 203(ivec2) ConstantComposite 201 201
205: 203(ivec2) ConstantComposite 202 202
222: TypeVector 19(int) 2
223: TypePointer Function 222(ivec2)
235: TypeFloat 32
236: TypeVector 235(float) 2
237: TypePointer Function 236(fvec2)
247: TypeFloat 64
248: TypeVector 247(float) 2
249: TypePointer Function 248(fvec2)
259: TypeFloat 16
260: TypeVector 259(float) 2
261: TypePointer Function 260(fvec2)
271: TypeInt 64 1
272: TypeVector 271(int) 2
273: TypePointer Function 272(ivec2)
285: TypeInt 64 0
286: TypeVector 285(int) 2
287: TypePointer Function 286(ivec2)
314: 18(int) Constant 4294967295
315: 186(ivec2) ConstantComposite 314 314
324: 49(ivec3) ConstantComposite 201 201 201
366: 125(bool) ConstantTrue
373: 125(bool) ConstantFalse
374: 189(bvec2) ConstantComposite 373 373
386: TypeVector 125(bool) 3
387: 386(bvec3) ConstantComposite 373 373 373
389: TypeVector 259(float) 3
390: TypePointer Function 389(fvec3)
393: TypePointer Function 54(ivec3)
395(ResType): TypeStruct 389(fvec3) 54(ivec3)
405: TypePointer Function 259(float)
429: TypePointer Function 271(int)
432: TypeVector 18(int) 4
438: TypePointer Function 285(int)
441: TypeVector 15(int) 4
447: TypePointer Function 386(bvec3)
513(Block): TypeStruct 54(ivec3) 15(int)
514: TypePointer Uniform 513(Block)
515(block): 514(ptr) Variable Uniform
516: TypePointer Input 49(ivec3)
517(iu16v): 516(ptr) Variable Input
518: TypePointer Input 18(int)
519(ii16): 518(ptr) Variable Input
520(si64): 271(int) SpecConstant 4294967286 4294967295
521(su64): 285(int) SpecConstant 20 0
522(si): 15(int) SpecConstant 4294967291
523(su): 19(int) SpecConstant 4
524(sb): 125(bool) SpecConstantTrue
525(si16): 18(int) SpecConstant 4294967291
526(su16): 14(int) SpecConstant 4
527: 125(bool) SpecConstantOp 171 525(si16) 201
528: 125(bool) SpecConstantOp 171 526(su16) 201
529: 18(int) SpecConstantOp 169 524(sb) 53 193
530: 15(int) SpecConstantOp 169 524(sb) 202 201
531: 15(int) SpecConstantOp 114 525(si16)
532: 15(int) SpecConstantOp 113 526(su16)
533: 15(int) SpecConstantOp 128 532 128
534: 18(int) SpecConstantOp 114 522(si)
535: 18(int) SpecConstantOp 114 522(si)
536: 15(int) SpecConstantOp 128 535 201
537: 15(int) SpecConstantOp 114 525(si16)
538: 19(int) SpecConstantOp 128 537 128
539: 19(int) SpecConstantOp 113 526(su16)
540: 18(int) SpecConstantOp 113 523(su)
541: 18(int) SpecConstantOp 128 540 201
542: 15(int) SpecConstantOp 113 523(su)
543: 271(int) SpecConstantOp 114 525(si16)
544: 271(int) SpecConstantOp 113 526(su16)
545: 285(int) Constant 0 0
546: 271(int) SpecConstantOp 128 544 545
547: 18(int) SpecConstantOp 114 520(si64)
548: 18(int) SpecConstantOp 114 520(si64)
549: 15(int) SpecConstantOp 128 548 201
550: 271(int) SpecConstantOp 114 525(si16)
551: 285(int) SpecConstantOp 128 550 545
552: 285(int) SpecConstantOp 113 526(su16)
553: 18(int) SpecConstantOp 113 521(su64)
554: 18(int) SpecConstantOp 128 553 201
555: 15(int) SpecConstantOp 113 521(su64)
556: 15(int) SpecConstantOp 128 525(si16) 201
557: 18(int) SpecConstantOp 128 526(su16) 201
4(main): 2 Function None 3
5: Label
509: 2 FunctionCall 6(literal()
510: 2 FunctionCall 8(operators()
511: 2 FunctionCall 10(typeCast()
512: 2 FunctionCall 12(builtinFuncs()
Return
FunctionEnd
6(literal(): 2 Function None 3
7: Label
17(u16): 16(ptr) Variable Function
34(indexable): 33(ptr) Variable Function
45(indexable): 44(ptr) Variable Function
31: 30(ptr) AccessChain 28 29
32: 19(int) Load 31
Store 34(indexable) 25
36: 35(ptr) AccessChain 34(indexable) 32
37: 18(int) Load 36
38: 15(int) Bitcast 37
42: 30(ptr) AccessChain 28 29
43: 19(int) Load 42
Store 45(indexable) 41
46: 16(ptr) AccessChain 45(indexable) 43
47: 15(int) Load 46
48: 15(int) IAdd 38 47
Store 17(u16) 48
Return
FunctionEnd
8(operators(): 2 Function None 3
9: Label
51(u16v): 50(ptr) Variable Function
57(i16): 35(ptr) Variable Function
70(u16): 16(ptr) Variable Function
127(b): 126(ptr) Variable Function
148(u): 147(ptr) Variable Function
158(i): 16(ptr) Variable Function
52: 49(ivec3) Load 51(u16v)
55: 54(ivec3) CompositeConstruct 53 53 53
56: 49(ivec3) IAdd 52 55
Store 51(u16v) 56
58: 18(int) Load 57(i16)
59: 18(int) ISub 58 53
Store 57(i16) 59
60: 18(int) Load 57(i16)
61: 18(int) IAdd 60 53
Store 57(i16) 61
62: 49(ivec3) Load 51(u16v)
63: 54(ivec3) CompositeConstruct 53 53 53
64: 49(ivec3) ISub 62 63
Store 51(u16v) 64
65: 49(ivec3) Load 51(u16v)
66: 49(ivec3) Not 65
Store 51(u16v) 66
67: 18(int) Load 57(i16)
Store 57(i16) 67
68: 49(ivec3) Load 51(u16v)
69: 49(ivec3) SNegate 68
Store 51(u16v) 69
71: 18(int) Load 57(i16)
72: 15(int) Bitcast 71
73: 15(int) Load 70(u16)
74: 15(int) IAdd 73 72
Store 70(u16) 74
75: 49(ivec3) Load 51(u16v)
76: 49(ivec3) Load 51(u16v)
77: 49(ivec3) ISub 76 75
Store 51(u16v) 77
78: 18(int) Load 57(i16)
79: 18(int) Load 57(i16)
80: 18(int) IMul 79 78
Store 57(i16) 80
81: 49(ivec3) Load 51(u16v)
82: 49(ivec3) Load 51(u16v)
83: 49(ivec3) UDiv 82 81
Store 51(u16v) 83
84: 18(int) Load 57(i16)
85: 15(int) Bitcast 84
86: 49(ivec3) Load 51(u16v)
87: 49(ivec3) CompositeConstruct 85 85 85
88: 49(ivec3) UMod 86 87
Store 51(u16v) 88
89: 49(ivec3) Load 51(u16v)
90: 49(ivec3) Load 51(u16v)
91: 49(ivec3) IAdd 89 90
Store 51(u16v) 91
92: 18(int) Load 57(i16)
93: 15(int) Bitcast 92
94: 15(int) Load 70(u16)
95: 15(int) ISub 93 94
Store 70(u16) 95
96: 49(ivec3) Load 51(u16v)
97: 18(int) Load 57(i16)
98: 15(int) Bitcast 97
99: 49(ivec3) CompositeConstruct 98 98 98
100: 49(ivec3) IMul 96 99
Store 51(u16v) 100
101: 18(int) Load 57(i16)
102: 18(int) Load 57(i16)
103: 18(int) IMul 101 102
Store 57(i16) 103
104: 18(int) Load 57(i16)
105: 18(int) Load 57(i16)
106: 18(int) SMod 104 105
Store 57(i16) 106
107: 18(int) Load 57(i16)
108: 49(ivec3) Load 51(u16v)
109: 54(ivec3) CompositeConstruct 107 107 107
110: 49(ivec3) ShiftLeftLogical 108 109
Store 51(u16v) 110
112: 16(ptr) AccessChain 51(u16v) 111
113: 15(int) Load 112
114: 18(int) Load 57(i16)
115: 18(int) ShiftRightArithmetic 114 113
Store 57(i16) 115
116: 18(int) Load 57(i16)
118: 16(ptr) AccessChain 51(u16v) 117
119: 15(int) Load 118
120: 18(int) ShiftLeftLogical 116 119
Store 57(i16) 120
121: 49(ivec3) Load 51(u16v)
122: 18(int) Load 57(i16)
123: 54(ivec3) CompositeConstruct 122 122 122
124: 49(ivec3) ShiftLeftLogical 121 123
Store 51(u16v) 124
129: 16(ptr) AccessChain 51(u16v) 128
130: 15(int) Load 129
131: 18(int) Load 57(i16)
132: 15(int) Bitcast 131
133: 125(bool) INotEqual 130 132
Store 127(b) 133
134: 18(int) Load 57(i16)
135: 15(int) Bitcast 134
136: 16(ptr) AccessChain 51(u16v) 128
137: 15(int) Load 136
138: 125(bool) IEqual 135 137
Store 127(b) 138
139: 16(ptr) AccessChain 51(u16v) 128
140: 15(int) Load 139
141: 16(ptr) AccessChain 51(u16v) 111
142: 15(int) Load 141
143: 125(bool) UGreaterThan 140 142
Store 127(b) 143
144: 18(int) Load 57(i16)
145: 15(int) SConvert 144
146: 19(int) Bitcast 145
149: 19(int) Load 148(u)
150: 125(bool) ULessThan 146 149
Store 127(b) 150
151: 16(ptr) AccessChain 51(u16v) 111
152: 15(int) Load 151
153: 16(ptr) AccessChain 51(u16v) 128
154: 15(int) Load 153
155: 125(bool) UGreaterThanEqual 152 154
Store 127(b) 155
156: 18(int) Load 57(i16)
157: 15(int) SConvert 156
159: 15(int) Load 158(i)
160: 125(bool) SLessThanEqual 157 159
Store 127(b) 160
161: 18(int) Load 57(i16)
162: 15(int) Bitcast 161
163: 49(ivec3) Load 51(u16v)
164: 49(ivec3) CompositeConstruct 162 162 162
165: 49(ivec3) BitwiseOr 163 164
Store 51(u16v) 165
166: 18(int) Load 57(i16)
167: 15(int) Bitcast 166
168: 15(int) Load 70(u16)
169: 15(int) BitwiseOr 167 168
Store 70(u16) 169
170: 18(int) Load 57(i16)
171: 18(int) Load 57(i16)
172: 18(int) BitwiseAnd 171 170
Store 57(i16) 172
173: 49(ivec3) Load 51(u16v)
174: 49(ivec3) Load 51(u16v)
175: 49(ivec3) BitwiseAnd 173 174
Store 51(u16v) 175
176: 18(int) Load 57(i16)
177: 15(int) Bitcast 176
178: 49(ivec3) Load 51(u16v)
179: 49(ivec3) CompositeConstruct 177 177 177
180: 49(ivec3) BitwiseXor 178 179
Store 51(u16v) 180
181: 49(ivec3) Load 51(u16v)
182: 18(int) Load 57(i16)
183: 15(int) Bitcast 182
184: 49(ivec3) CompositeConstruct 183 183 183
185: 49(ivec3) BitwiseXor 181 184
Store 51(u16v) 185
Return
FunctionEnd
10(typeCast(): 2 Function None 3
11: Label
188(i16v): 187(ptr) Variable Function
191(bv): 190(ptr) Variable Function
199(u16v): 198(ptr) Variable Function
211(iv): 198(ptr) Variable Function
224(uv): 223(ptr) Variable Function
238(fv): 237(ptr) Variable Function
250(dv): 249(ptr) Variable Function
262(f16v): 261(ptr) Variable Function
274(i64v): 273(ptr) Variable Function
288(u64v): 287(ptr) Variable Function
192: 189(bvec2) Load 191(bv)
196: 186(ivec2) Select 192 195 194
Store 188(i16v) 196
200: 189(bvec2) Load 191(bv)
206: 197(ivec2) Select 200 205 204
Store 199(u16v) 206
207: 186(ivec2) Load 188(i16v)
208: 189(bvec2) INotEqual 207 204
Store 191(bv) 208
209: 197(ivec2) Load 199(u16v)
210: 189(bvec2) INotEqual 209 204
Store 191(bv) 210
212: 197(ivec2) Load 211(iv)
213: 186(ivec2) SConvert 212
Store 188(i16v) 213
214: 197(ivec2) Load 211(iv)
215: 186(ivec2) SConvert 214
216: 197(ivec2) Bitcast 215
Store 199(u16v) 216
217: 186(ivec2) Load 188(i16v)
218: 197(ivec2) SConvert 217
Store 211(iv) 218
219: 197(ivec2) Load 199(u16v)
220: 197(ivec2) UConvert 219
221: 197(ivec2) Bitcast 220
Store 211(iv) 221
225: 222(ivec2) Load 224(uv)
226: 186(ivec2) UConvert 225
227: 186(ivec2) Bitcast 226
Store 188(i16v) 227
228: 222(ivec2) Load 224(uv)
229: 197(ivec2) UConvert 228
Store 199(u16v) 229
230: 186(ivec2) Load 188(i16v)
231: 197(ivec2) SConvert 230
232: 222(ivec2) Bitcast 231
Store 224(uv) 232
233: 197(ivec2) Load 199(u16v)
234: 222(ivec2) UConvert 233
Store 224(uv) 234
239: 236(fvec2) Load 238(fv)
240: 186(ivec2) ConvertFToS 239
Store 188(i16v) 240
241: 236(fvec2) Load 238(fv)
242: 197(ivec2) ConvertFToU 241
Store 199(u16v) 242
243: 186(ivec2) Load 188(i16v)
244: 236(fvec2) ConvertSToF 243
Store 238(fv) 244
245: 197(ivec2) Load 199(u16v)
246: 236(fvec2) ConvertUToF 245
Store 238(fv) 246
251: 248(fvec2) Load 250(dv)
252: 186(ivec2) ConvertFToS 251
Store 188(i16v) 252
253: 248(fvec2) Load 250(dv)
254: 197(ivec2) ConvertFToU 253
Store 199(u16v) 254
255: 186(ivec2) Load 188(i16v)
256: 248(fvec2) ConvertSToF 255
Store 250(dv) 256
257: 197(ivec2) Load 199(u16v)
258: 248(fvec2) ConvertUToF 257
Store 250(dv) 258
263: 260(fvec2) Load 262(f16v)
264: 186(ivec2) ConvertFToS 263
Store 188(i16v) 264
265: 260(fvec2) Load 262(f16v)
266: 197(ivec2) ConvertFToU 265
Store 199(u16v) 266
267: 186(ivec2) Load 188(i16v)
268: 260(fvec2) ConvertSToF 267
Store 262(f16v) 268
269: 197(ivec2) Load 199(u16v)
270: 260(fvec2) ConvertUToF 269
Store 262(f16v) 270
275: 272(ivec2) Load 274(i64v)
276: 186(ivec2) SConvert 275
Store 188(i16v) 276
277: 272(ivec2) Load 274(i64v)
278: 186(ivec2) SConvert 277
279: 197(ivec2) Bitcast 278
Store 199(u16v) 279
280: 186(ivec2) Load 188(i16v)
281: 272(ivec2) SConvert 280
Store 274(i64v) 281
282: 197(ivec2) Load 199(u16v)
283: 272(ivec2) UConvert 282
284: 272(ivec2) Bitcast 283
Store 274(i64v) 284
289: 286(ivec2) Load 288(u64v)
290: 186(ivec2) UConvert 289
291: 186(ivec2) Bitcast 290
Store 188(i16v) 291
292: 286(ivec2) Load 288(u64v)
293: 197(ivec2) UConvert 292
Store 199(u16v) 293
294: 186(ivec2) Load 188(i16v)
295: 272(ivec2) SConvert 294
296: 286(ivec2) Bitcast 295
Store 288(u64v) 296
297: 197(ivec2) Load 199(u16v)
298: 286(ivec2) UConvert 297
Store 288(u64v) 298
299: 197(ivec2) Load 199(u16v)
300: 186(ivec2) Bitcast 299
Store 188(i16v) 300
301: 186(ivec2) Load 188(i16v)
302: 197(ivec2) Bitcast 301
Store 199(u16v) 302
Return
FunctionEnd
12(builtinFuncs(): 2 Function None 3
13: Label
303(i16v): 187(ptr) Variable Function
309(i16): 35(ptr) Variable Function
317(u16v): 50(ptr) Variable Function
319(u16): 16(ptr) Variable Function
391(f16v): 390(ptr) Variable Function
394(exp): 393(ptr) Variable Function
416(packi): 16(ptr) Variable Function
421(packu): 147(ptr) Variable Function
430(packi64): 429(ptr) Variable Function
439(packu64): 438(ptr) Variable Function
448(bv): 447(ptr) Variable Function
304: 186(ivec2) Load 303(i16v)
305: 186(ivec2) ExtInst 1(GLSL.std.450) 5(SAbs) 304
Store 303(i16v) 305
306: 186(ivec2) Load 303(i16v)
307: 186(ivec2) ExtInst 1(GLSL.std.450) 7(SSign) 306
Store 303(i16v) 307
308: 186(ivec2) Load 303(i16v)
310: 18(int) Load 309(i16)
311: 186(ivec2) CompositeConstruct 310 310
312: 186(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 308 311
Store 303(i16v) 312
313: 186(ivec2) Load 303(i16v)
316: 186(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 313 315
Store 303(i16v) 316
318: 49(ivec3) Load 317(u16v)
320: 15(int) Load 319(u16)
321: 49(ivec3) CompositeConstruct 320 320 320
322: 49(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 318 321
Store 317(u16v) 322
323: 49(ivec3) Load 317(u16v)
325: 49(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 323 324
Store 317(u16v) 325
326: 186(ivec2) Load 303(i16v)
327: 18(int) Load 309(i16)
328: 186(ivec2) CompositeConstruct 327 327
329: 186(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 326 328
Store 303(i16v) 329
330: 186(ivec2) Load 303(i16v)
331: 186(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 330 315
Store 303(i16v) 331
332: 49(ivec3) Load 317(u16v)
333: 15(int) Load 319(u16)
334: 49(ivec3) CompositeConstruct 333 333 333
335: 49(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 332 334
Store 317(u16v) 335
336: 49(ivec3) Load 317(u16v)
337: 49(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 336 324
Store 317(u16v) 337
338: 186(ivec2) Load 303(i16v)
339: 18(int) Load 309(i16)
340: 18(int) SNegate 339
341: 18(int) Load 309(i16)
342: 186(ivec2) CompositeConstruct 340 340
343: 186(ivec2) CompositeConstruct 341 341
344: 186(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 338 342 343
Store 303(i16v) 344
345: 186(ivec2) Load 303(i16v)
346: 186(ivec2) Load 303(i16v)
347: 186(ivec2) SNegate 346
348: 186(ivec2) Load 303(i16v)
349: 186(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 345 347 348
Store 303(i16v) 349
350: 49(ivec3) Load 317(u16v)
351: 15(int) Load 319(u16)
352: 15(int) SNegate 351
353: 15(int) Load 319(u16)
354: 49(ivec3) CompositeConstruct 352 352 352
355: 49(ivec3) CompositeConstruct 353 353 353
356: 49(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 350 354 355
Store 317(u16v) 356
357: 49(ivec3) Load 317(u16v)
358: 49(ivec3) Load 317(u16v)
359: 49(ivec3) SNegate 358
360: 49(ivec3) Load 317(u16v)
361: 49(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 357 359 360
Store 317(u16v) 361
362: 35(ptr) AccessChain 303(i16v) 128
363: 18(int) Load 362
364: 35(ptr) AccessChain 303(i16v) 111
365: 18(int) Load 364
367: 18(int) Select 366 365 363
Store 309(i16) 367
368: 18(int) Load 309(i16)
369: 186(ivec2) CompositeConstruct 368 368
370: 18(int) Load 309(i16)
371: 18(int) SNegate 370
372: 186(ivec2) CompositeConstruct 371 371
375: 186(ivec2) Select 374 372 369
Store 303(i16v) 375
376: 16(ptr) AccessChain 317(u16v) 128
377: 15(int) Load 376
378: 16(ptr) AccessChain 317(u16v) 111
379: 15(int) Load 378
380: 15(int) Select 366 379 377
Store 319(u16) 380
381: 15(int) Load 319(u16)
382: 49(ivec3) CompositeConstruct 381 381 381
383: 15(int) Load 319(u16)
384: 15(int) SNegate 383
385: 49(ivec3) CompositeConstruct 384 384 384
388: 49(ivec3) Select 387 385 382
Store 317(u16v) 388
392: 389(fvec3) Load 391(f16v)
396:395(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 392
397: 54(ivec3) CompositeExtract 396 1
Store 394(exp) 397
398: 389(fvec3) CompositeExtract 396 0
Store 391(f16v) 398
399: 389(fvec3) Load 391(f16v)
400: 54(ivec3) Load 394(exp)
401: 389(fvec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 399 400
Store 391(f16v) 401
402: 389(fvec3) Load 391(f16v)
403: 260(fvec2) VectorShuffle 402 402 0 1
404: 186(ivec2) Bitcast 403
Store 303(i16v) 404
406: 405(ptr) AccessChain 391(f16v) 117
407: 259(float) Load 406
408: 15(int) Bitcast 407
409: 16(ptr) AccessChain 317(u16v) 128
Store 409 408
410: 186(ivec2) Load 303(i16v)
411: 260(fvec2) Bitcast 410
412: 389(fvec3) Load 391(f16v)
413: 389(fvec3) VectorShuffle 412 411 3 4 2
Store 391(f16v) 413
414: 49(ivec3) Load 317(u16v)
415: 389(fvec3) Bitcast 414
Store 391(f16v) 415
417: 186(ivec2) Load 303(i16v)
418: 15(int) Bitcast 417
Store 416(packi) 418
419: 15(int) Load 416(packi)
420: 186(ivec2) Bitcast 419
Store 303(i16v) 420
422: 49(ivec3) Load 317(u16v)
423: 197(ivec2) VectorShuffle 422 422 0 1
424: 19(int) Bitcast 423
Store 421(packu) 424
425: 19(int) Load 421(packu)
426: 197(ivec2) Bitcast 425
427: 49(ivec3) Load 317(u16v)
428: 49(ivec3) VectorShuffle 427 426 3 4 2
Store 317(u16v) 428
431: 18(int) Load 309(i16)
433: 432(ivec4) CompositeConstruct 431 431 431 431
434: 271(int) Bitcast 433
Store 430(packi64) 434
435: 271(int) Load 430(packi64)
436: 432(ivec4) Bitcast 435
437: 186(ivec2) VectorShuffle 436 436 0 1
Store 303(i16v) 437
440: 15(int) Load 319(u16)
442: 441(ivec4) CompositeConstruct 440 440 440 440
443: 285(int) Bitcast 442
Store 439(packu64) 443
444: 285(int) Load 439(packu64)
445: 441(ivec4) Bitcast 444
446: 49(ivec3) VectorShuffle 445 445 0 1 2
Store 317(u16v) 446
449: 49(ivec3) Load 317(u16v)
450: 15(int) Load 319(u16)
451: 49(ivec3) CompositeConstruct 450 450 450
452: 386(bvec3) ULessThan 449 451
Store 448(bv) 452
453: 186(ivec2) Load 303(i16v)
454: 18(int) Load 309(i16)
455: 186(ivec2) CompositeConstruct 454 454
456: 189(bvec2) SLessThan 453 455
457: 386(bvec3) Load 448(bv)
458: 386(bvec3) VectorShuffle 457 456 3 4 2
Store 448(bv) 458
459: 49(ivec3) Load 317(u16v)
460: 15(int) Load 319(u16)
461: 49(ivec3) CompositeConstruct 460 460 460
462: 386(bvec3) ULessThanEqual 459 461
Store 448(bv) 462
463: 186(ivec2) Load 303(i16v)
464: 18(int) Load 309(i16)
465: 186(ivec2) CompositeConstruct 464 464
466: 189(bvec2) SLessThanEqual 463 465
467: 386(bvec3) Load 448(bv)
468: 386(bvec3) VectorShuffle 467 466 3 4 2
Store 448(bv) 468
469: 49(ivec3) Load 317(u16v)
470: 15(int) Load 319(u16)
471: 49(ivec3) CompositeConstruct 470 470 470
472: 386(bvec3) UGreaterThan 469 471
Store 448(bv) 472
473: 186(ivec2) Load 303(i16v)
474: 18(int) Load 309(i16)
475: 186(ivec2) CompositeConstruct 474 474
476: 189(bvec2) SGreaterThan 473 475
477: 386(bvec3) Load 448(bv)
478: 386(bvec3) VectorShuffle 477 476 3 4 2
Store 448(bv) 478
479: 49(ivec3) Load 317(u16v)
480: 15(int) Load 319(u16)
481: 49(ivec3) CompositeConstruct 480 480 480
482: 386(bvec3) UGreaterThanEqual 479 481
Store 448(bv) 482
483: 186(ivec2) Load 303(i16v)
484: 18(int) Load 309(i16)
485: 186(ivec2) CompositeConstruct 484 484
486: 189(bvec2) SGreaterThanEqual 483 485
487: 386(bvec3) Load 448(bv)
488: 386(bvec3) VectorShuffle 487 486 3 4 2
Store 448(bv) 488
489: 49(ivec3) Load 317(u16v)
490: 15(int) Load 319(u16)
491: 49(ivec3) CompositeConstruct 490 490 490
492: 386(bvec3) IEqual 489 491
Store 448(bv) 492
493: 186(ivec2) Load 303(i16v)
494: 18(int) Load 309(i16)
495: 186(ivec2) CompositeConstruct 494 494
496: 189(bvec2) IEqual 493 495
497: 386(bvec3) Load 448(bv)
498: 386(bvec3) VectorShuffle 497 496 3 4 2
Store 448(bv) 498
499: 49(ivec3) Load 317(u16v)
500: 15(int) Load 319(u16)
501: 49(ivec3) CompositeConstruct 500 500 500
502: 386(bvec3) INotEqual 499 501
Store 448(bv) 502
503: 186(ivec2) Load 303(i16v)
504: 18(int) Load 309(i16)
505: 186(ivec2) CompositeConstruct 504 504
506: 189(bvec2) INotEqual 503 505
507: 386(bvec3) Load 448(bv)
508: 386(bvec3) VectorShuffle 507 506 3 4 2
Store 448(bv) 508
Return
FunctionEnd