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