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