mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-09 12:00:05 +00:00
Allow 8/16-bit integer as array index
Also enable 8/16 bit int capability in SPIR-V in such cases. Also enable 64 bit capabilities when used in operations. Fixes #2779
This commit is contained in:
parent
6351fcef28
commit
82b2668d58
@ -111,8 +111,6 @@ void Builder::postProcessType(const Instruction& inst, Id typeId)
|
||||
}
|
||||
}
|
||||
break;
|
||||
case OpAccessChain:
|
||||
case OpPtrAccessChain:
|
||||
case OpCopyObject:
|
||||
break;
|
||||
case OpFConvert:
|
||||
@ -172,13 +170,30 @@ void Builder::postProcessType(const Instruction& inst, Id typeId)
|
||||
break;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
if (basicTypeOp == OpTypeFloat && width == 16)
|
||||
addCapability(CapabilityFloat16);
|
||||
if (basicTypeOp == OpTypeInt && width == 16)
|
||||
case OpAccessChain:
|
||||
case OpPtrAccessChain:
|
||||
if (isPointerType(typeId))
|
||||
break;
|
||||
if (basicTypeOp == OpTypeInt) {
|
||||
if (width == 16)
|
||||
addCapability(CapabilityInt16);
|
||||
if (basicTypeOp == OpTypeInt && width == 8)
|
||||
else if (width == 8)
|
||||
addCapability(CapabilityInt8);
|
||||
}
|
||||
default:
|
||||
if (basicTypeOp == OpTypeInt) {
|
||||
if (width == 16)
|
||||
addCapability(CapabilityInt16);
|
||||
else if (width == 8)
|
||||
addCapability(CapabilityInt8);
|
||||
else if (width == 64)
|
||||
addCapability(CapabilityInt64);
|
||||
} else if (basicTypeOp == OpTypeFloat) {
|
||||
if (width == 16)
|
||||
addCapability(CapabilityFloat16);
|
||||
else if (width == 64)
|
||||
addCapability(CapabilityFloat64);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
spv.int16.frag
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 8000a
|
||||
// Id's are bound by 535
|
||||
// Id's are bound by 549
|
||||
|
||||
Capability Shader
|
||||
Capability Float16
|
||||
@ -48,53 +48,55 @@ spv.int16.frag
|
||||
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 530 "Block"
|
||||
MemberName 530(Block) 0 "i16"
|
||||
MemberName 530(Block) 1 "i16v2"
|
||||
MemberName 530(Block) 2 "i16v3"
|
||||
MemberName 530(Block) 3 "i16v4"
|
||||
MemberName 530(Block) 4 "u16"
|
||||
MemberName 530(Block) 5 "u16v2"
|
||||
MemberName 530(Block) 6 "u16v3"
|
||||
MemberName 530(Block) 7 "u16v4"
|
||||
Name 532 "block"
|
||||
Name 533 "si16"
|
||||
Name 534 "su16"
|
||||
Name 196 "arr"
|
||||
Name 204 "u16v"
|
||||
Name 209 "i16"
|
||||
Name 229 "i"
|
||||
Name 236 "uv"
|
||||
Name 252 "i64"
|
||||
Name 290 "b"
|
||||
Name 353 "f"
|
||||
Name 357 "i16v"
|
||||
Name 360 "i16"
|
||||
Name 370 "u16v"
|
||||
Name 372 "u16"
|
||||
Name 442 "i32"
|
||||
Name 445 "i64"
|
||||
Name 448 "i16v4"
|
||||
Name 451 "u32"
|
||||
Name 452 "u16v2"
|
||||
Name 456 "u64"
|
||||
Name 459 "u16v4"
|
||||
Name 471 "bv"
|
||||
Name 544 "Block"
|
||||
MemberName 544(Block) 0 "i16"
|
||||
MemberName 544(Block) 1 "i16v2"
|
||||
MemberName 544(Block) 2 "i16v3"
|
||||
MemberName 544(Block) 3 "i16v4"
|
||||
MemberName 544(Block) 4 "u16"
|
||||
MemberName 544(Block) 5 "u16v2"
|
||||
MemberName 544(Block) 6 "u16v3"
|
||||
MemberName 544(Block) 7 "u16v4"
|
||||
Name 546 "block"
|
||||
Name 547 "si16"
|
||||
Name 548 "su16"
|
||||
MemberDecorate 24(Uniforms) 0 Offset 0
|
||||
Decorate 24(Uniforms) Block
|
||||
Decorate 26 DescriptorSet 0
|
||||
Decorate 26 Binding 0
|
||||
MemberDecorate 530(Block) 0 Offset 0
|
||||
MemberDecorate 530(Block) 1 Offset 4
|
||||
MemberDecorate 530(Block) 2 Offset 8
|
||||
MemberDecorate 530(Block) 3 Offset 16
|
||||
MemberDecorate 530(Block) 4 Offset 24
|
||||
MemberDecorate 530(Block) 5 Offset 28
|
||||
MemberDecorate 530(Block) 6 Offset 32
|
||||
MemberDecorate 530(Block) 7 Offset 40
|
||||
Decorate 530(Block) Block
|
||||
Decorate 532(block) DescriptorSet 0
|
||||
Decorate 532(block) Binding 1
|
||||
Decorate 533(si16) SpecId 100
|
||||
Decorate 534(su16) SpecId 101
|
||||
MemberDecorate 544(Block) 0 Offset 0
|
||||
MemberDecorate 544(Block) 1 Offset 4
|
||||
MemberDecorate 544(Block) 2 Offset 8
|
||||
MemberDecorate 544(Block) 3 Offset 16
|
||||
MemberDecorate 544(Block) 4 Offset 24
|
||||
MemberDecorate 544(Block) 5 Offset 28
|
||||
MemberDecorate 544(Block) 6 Offset 32
|
||||
MemberDecorate 544(Block) 7 Offset 40
|
||||
Decorate 544(Block) Block
|
||||
Decorate 546(block) DescriptorSet 0
|
||||
Decorate 546(block) Binding 1
|
||||
Decorate 547(si16) SpecId 100
|
||||
Decorate 548(su16) SpecId 101
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
14: TypeInt 16 1
|
||||
@ -160,37 +162,46 @@ spv.int16.frag
|
||||
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)
|
||||
530(Block): TypeStruct 14(int16_t) 52(i16vec2) 197(i16vec3) 432(i16vec4) 36(int16_t) 57(i16vec2) 193(i16vec3) 443(i16vec4)
|
||||
531: TypePointer Uniform 530(Block)
|
||||
532(block): 531(ptr) Variable Uniform
|
||||
533(si16): 14(int16_t) SpecConstant 4294967286
|
||||
534(su16): 36(int16_t) SpecConstant 20
|
||||
193: 17(int) Constant 4
|
||||
194: TypeArray 97(float) 193
|
||||
195: TypePointer Function 194
|
||||
197: 97(float) Constant 1065353216
|
||||
198: 97(float) Constant 1073741824
|
||||
199: 97(float) Constant 1077936128
|
||||
200: 97(float) Constant 1082130432
|
||||
201: 194 ConstantComposite 197 198 199 200
|
||||
202: TypeVector 36(int16_t) 3
|
||||
203: TypePointer Function 202(i16vec3)
|
||||
206: TypeVector 14(int16_t) 3
|
||||
228: TypePointer Function 27(int)
|
||||
234: TypeVector 17(int) 3
|
||||
235: TypePointer Function 234(ivec3)
|
||||
251: TypePointer Function 71(int64_t)
|
||||
273: 17(int) Constant 1
|
||||
279: 17(int) Constant 2
|
||||
285: TypeVector 27(int) 3
|
||||
289: TypePointer Function 173(bool)
|
||||
291: 17(int) Constant 0
|
||||
305: TypePointer Function 17(int)
|
||||
352: TypePointer Function 97(float)
|
||||
368: 52(i16vec2) ConstantComposite 21 21
|
||||
377:202(i16vec3) ConstantComposite 184 184 184
|
||||
419: 173(bool) ConstantTrue
|
||||
426: 173(bool) ConstantFalse
|
||||
427: 174(bvec2) ConstantComposite 426 426
|
||||
439: TypeVector 173(bool) 3
|
||||
440: 439(bvec3) ConstantComposite 426 426 426
|
||||
446: TypeVector 14(int16_t) 4
|
||||
447: TypePointer Function 446(i16vec4)
|
||||
455: TypePointer Function 77(int64_t)
|
||||
457: TypeVector 36(int16_t) 4
|
||||
458: TypePointer Function 457(i16vec4)
|
||||
470: TypePointer Function 439(bvec3)
|
||||
544(Block): TypeStruct 14(int16_t) 52(i16vec2) 206(i16vec3) 446(i16vec4) 36(int16_t) 57(i16vec2) 202(i16vec3) 457(i16vec4)
|
||||
545: TypePointer Uniform 544(Block)
|
||||
546(block): 545(ptr) Variable Uniform
|
||||
547(si16): 14(int16_t) SpecConstant 4294967286
|
||||
548(su16): 36(int16_t) SpecConstant 20
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
Return
|
||||
@ -364,397 +375,404 @@ spv.int16.frag
|
||||
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
|
||||
196(arr): 195(ptr) Variable Function
|
||||
204(u16v): 203(ptr) Variable Function
|
||||
209(i16): 15(ptr) Variable Function
|
||||
229(i): 228(ptr) Variable Function
|
||||
236(uv): 235(ptr) Variable Function
|
||||
252(i64): 251(ptr) Variable Function
|
||||
290(b): 289(ptr) Variable Function
|
||||
353(f): 352(ptr) Variable Function
|
||||
Store 196(arr) 201
|
||||
205:202(i16vec3) Load 204(u16v)
|
||||
207:206(i16vec3) CompositeConstruct 179 179 179
|
||||
208:202(i16vec3) IAdd 205 207
|
||||
Store 204(u16v) 208
|
||||
210: 14(int16_t) Load 209(i16)
|
||||
211: 14(int16_t) ISub 210 179
|
||||
Store 209(i16) 211
|
||||
212: 14(int16_t) Load 209(i16)
|
||||
213: 14(int16_t) IAdd 212 179
|
||||
Store 209(i16) 213
|
||||
214:202(i16vec3) Load 204(u16v)
|
||||
215:206(i16vec3) CompositeConstruct 179 179 179
|
||||
216:202(i16vec3) ISub 214 215
|
||||
Store 204(u16v) 216
|
||||
217:202(i16vec3) Load 204(u16v)
|
||||
218:202(i16vec3) Not 217
|
||||
Store 204(u16v) 218
|
||||
219: 14(int16_t) Load 209(i16)
|
||||
Store 209(i16) 219
|
||||
220:202(i16vec3) Load 204(u16v)
|
||||
221:202(i16vec3) SNegate 220
|
||||
Store 204(u16v) 221
|
||||
222: 14(int16_t) Load 209(i16)
|
||||
223: 14(int16_t) Load 209(i16)
|
||||
224: 14(int16_t) IAdd 223 222
|
||||
Store 209(i16) 224
|
||||
225:202(i16vec3) Load 204(u16v)
|
||||
226:202(i16vec3) Load 204(u16v)
|
||||
227:202(i16vec3) ISub 226 225
|
||||
Store 204(u16v) 227
|
||||
230: 14(int16_t) Load 209(i16)
|
||||
231: 27(int) SConvert 230
|
||||
232: 27(int) Load 229(i)
|
||||
233: 27(int) IMul 232 231
|
||||
Store 229(i) 233
|
||||
237:202(i16vec3) Load 204(u16v)
|
||||
238: 234(ivec3) UConvert 237
|
||||
239: 234(ivec3) Load 236(uv)
|
||||
240: 234(ivec3) UDiv 239 238
|
||||
Store 236(uv) 240
|
||||
241: 14(int16_t) Load 209(i16)
|
||||
242: 27(int) SConvert 241
|
||||
243: 17(int) Bitcast 242
|
||||
244: 234(ivec3) Load 236(uv)
|
||||
245: 234(ivec3) CompositeConstruct 243 243 243
|
||||
246: 234(ivec3) UMod 244 245
|
||||
Store 236(uv) 246
|
||||
247:202(i16vec3) Load 204(u16v)
|
||||
248: 234(ivec3) UConvert 247
|
||||
249: 234(ivec3) Load 236(uv)
|
||||
250: 234(ivec3) IAdd 248 249
|
||||
Store 236(uv) 250
|
||||
253: 14(int16_t) Load 209(i16)
|
||||
254: 71(int64_t) SConvert 253
|
||||
255: 71(int64_t) Load 252(i64)
|
||||
256: 71(int64_t) ISub 254 255
|
||||
Store 252(i64) 256
|
||||
257:202(i16vec3) Load 204(u16v)
|
||||
258: 234(ivec3) UConvert 257
|
||||
259: 234(ivec3) Load 236(uv)
|
||||
260: 234(ivec3) IMul 258 259
|
||||
Store 236(uv) 260
|
||||
261: 14(int16_t) Load 209(i16)
|
||||
262: 71(int64_t) SConvert 261
|
||||
263: 71(int64_t) Load 252(i64)
|
||||
264: 71(int64_t) IMul 262 263
|
||||
Store 252(i64) 264
|
||||
265: 14(int16_t) Load 209(i16)
|
||||
266: 27(int) SConvert 265
|
||||
267: 27(int) Load 229(i)
|
||||
268: 27(int) SMod 266 267
|
||||
Store 229(i) 268
|
||||
269: 14(int16_t) Load 209(i16)
|
||||
270:202(i16vec3) Load 204(u16v)
|
||||
271:206(i16vec3) CompositeConstruct 269 269 269
|
||||
272:202(i16vec3) ShiftLeftLogical 270 271
|
||||
Store 204(u16v) 272
|
||||
274: 37(ptr) AccessChain 204(u16v) 273
|
||||
275: 36(int16_t) Load 274
|
||||
276: 14(int16_t) Load 209(i16)
|
||||
277: 14(int16_t) ShiftRightArithmetic 276 275
|
||||
Store 209(i16) 277
|
||||
278: 14(int16_t) Load 209(i16)
|
||||
280: 37(ptr) AccessChain 204(u16v) 279
|
||||
281: 36(int16_t) Load 280
|
||||
282: 14(int16_t) ShiftLeftLogical 278 281
|
||||
Store 209(i16) 282
|
||||
283:202(i16vec3) Load 204(u16v)
|
||||
284: 27(int) Load 229(i)
|
||||
286: 285(ivec3) CompositeConstruct 284 284 284
|
||||
287:202(i16vec3) ShiftLeftLogical 283 286
|
||||
288: 234(ivec3) UConvert 287
|
||||
Store 236(uv) 288
|
||||
292: 37(ptr) AccessChain 204(u16v) 291
|
||||
293: 36(int16_t) Load 292
|
||||
294: 14(int16_t) Load 209(i16)
|
||||
295: 36(int16_t) Bitcast 294
|
||||
296: 173(bool) INotEqual 293 295
|
||||
Store 290(b) 296
|
||||
297: 14(int16_t) Load 209(i16)
|
||||
298: 36(int16_t) Bitcast 297
|
||||
299: 37(ptr) AccessChain 204(u16v) 291
|
||||
300: 36(int16_t) Load 299
|
||||
301: 173(bool) IEqual 298 300
|
||||
Store 290(b) 301
|
||||
302: 37(ptr) AccessChain 204(u16v) 291
|
||||
303: 36(int16_t) Load 302
|
||||
304: 17(int) UConvert 303
|
||||
306: 305(ptr) AccessChain 236(uv) 273
|
||||
307: 17(int) Load 306
|
||||
308: 173(bool) UGreaterThan 304 307
|
||||
Store 290(b) 308
|
||||
309: 14(int16_t) Load 209(i16)
|
||||
310: 27(int) SConvert 309
|
||||
311: 27(int) Load 229(i)
|
||||
312: 173(bool) SLessThan 310 311
|
||||
Store 290(b) 312
|
||||
313: 37(ptr) AccessChain 204(u16v) 273
|
||||
314: 36(int16_t) Load 313
|
||||
315: 17(int) UConvert 314
|
||||
316: 305(ptr) AccessChain 236(uv) 291
|
||||
317: 17(int) Load 316
|
||||
318: 173(bool) UGreaterThanEqual 315 317
|
||||
Store 290(b) 318
|
||||
319: 14(int16_t) Load 209(i16)
|
||||
320: 27(int) SConvert 319
|
||||
321: 27(int) Load 229(i)
|
||||
322: 173(bool) SLessThanEqual 320 321
|
||||
Store 290(b) 322
|
||||
323: 14(int16_t) Load 209(i16)
|
||||
324: 27(int) SConvert 323
|
||||
325: 17(int) Bitcast 324
|
||||
326: 234(ivec3) Load 236(uv)
|
||||
327: 234(ivec3) CompositeConstruct 325 325 325
|
||||
328: 234(ivec3) BitwiseOr 326 327
|
||||
Store 236(uv) 328
|
||||
329: 14(int16_t) Load 209(i16)
|
||||
330: 27(int) SConvert 329
|
||||
331: 27(int) Load 229(i)
|
||||
332: 27(int) BitwiseOr 330 331
|
||||
Store 229(i) 332
|
||||
333: 14(int16_t) Load 209(i16)
|
||||
334: 71(int64_t) SConvert 333
|
||||
335: 71(int64_t) Load 252(i64)
|
||||
336: 71(int64_t) BitwiseAnd 335 334
|
||||
Store 252(i64) 336
|
||||
337:202(i16vec3) Load 204(u16v)
|
||||
338: 234(ivec3) UConvert 337
|
||||
339: 234(ivec3) Load 236(uv)
|
||||
340: 234(ivec3) BitwiseAnd 338 339
|
||||
Store 236(uv) 340
|
||||
341: 14(int16_t) Load 209(i16)
|
||||
342: 27(int) SConvert 341
|
||||
343: 17(int) Bitcast 342
|
||||
344: 234(ivec3) Load 236(uv)
|
||||
345: 234(ivec3) CompositeConstruct 343 343 343
|
||||
346: 234(ivec3) BitwiseXor 344 345
|
||||
Store 236(uv) 346
|
||||
347:202(i16vec3) Load 204(u16v)
|
||||
348: 14(int16_t) Load 209(i16)
|
||||
349: 36(int16_t) Bitcast 348
|
||||
350:202(i16vec3) CompositeConstruct 349 349 349
|
||||
351:202(i16vec3) BitwiseXor 347 350
|
||||
Store 204(u16v) 351
|
||||
354: 14(int16_t) Load 209(i16)
|
||||
355: 352(ptr) AccessChain 196(arr) 354
|
||||
356: 97(float) Load 355
|
||||
Store 353(f) 356
|
||||
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: 280(ptr) AccessChain 457(bv) 282
|
||||
467: 173(bool) CompositeExtract 465 0
|
||||
Store 466 467
|
||||
468: 280(ptr) AccessChain 457(bv) 264
|
||||
469: 173(bool) CompositeExtract 465 1
|
||||
Store 468 469
|
||||
470:193(i16vec3) Load 356(u16v)
|
||||
471: 36(int16_t) Load 358(u16)
|
||||
472:193(i16vec3) CompositeConstruct 471 471 471
|
||||
473: 425(bvec3) ULessThanEqual 470 472
|
||||
Store 457(bv) 473
|
||||
474: 52(i16vec2) Load 343(i16v)
|
||||
475: 14(int16_t) Load 346(i16)
|
||||
476: 52(i16vec2) CompositeConstruct 475 475
|
||||
477: 174(bvec2) SLessThanEqual 474 476
|
||||
478: 280(ptr) AccessChain 457(bv) 282
|
||||
479: 173(bool) CompositeExtract 477 0
|
||||
Store 478 479
|
||||
480: 280(ptr) AccessChain 457(bv) 264
|
||||
481: 173(bool) CompositeExtract 477 1
|
||||
357(i16v): 53(ptr) Variable Function
|
||||
360(i16): 15(ptr) Variable Function
|
||||
370(u16v): 203(ptr) Variable Function
|
||||
372(u16): 37(ptr) Variable Function
|
||||
442(i32): 228(ptr) Variable Function
|
||||
445(i64): 251(ptr) Variable Function
|
||||
448(i16v4): 447(ptr) Variable Function
|
||||
451(u32): 305(ptr) Variable Function
|
||||
452(u16v2): 58(ptr) Variable Function
|
||||
456(u64): 455(ptr) Variable Function
|
||||
459(u16v4): 458(ptr) Variable Function
|
||||
471(bv): 470(ptr) Variable Function
|
||||
358: 52(i16vec2) Load 357(i16v)
|
||||
359: 52(i16vec2) ExtInst 1(GLSL.std.450) 5(SAbs) 358
|
||||
Store 357(i16v) 359
|
||||
361: 14(int16_t) Load 360(i16)
|
||||
362: 14(int16_t) ExtInst 1(GLSL.std.450) 7(SSign) 361
|
||||
Store 360(i16) 362
|
||||
363: 52(i16vec2) Load 357(i16v)
|
||||
364: 14(int16_t) Load 360(i16)
|
||||
365: 52(i16vec2) CompositeConstruct 364 364
|
||||
366: 52(i16vec2) ExtInst 1(GLSL.std.450) 39(SMin) 363 365
|
||||
Store 357(i16v) 366
|
||||
367: 52(i16vec2) Load 357(i16v)
|
||||
369: 52(i16vec2) ExtInst 1(GLSL.std.450) 39(SMin) 367 368
|
||||
Store 357(i16v) 369
|
||||
371:202(i16vec3) Load 370(u16v)
|
||||
373: 36(int16_t) Load 372(u16)
|
||||
374:202(i16vec3) CompositeConstruct 373 373 373
|
||||
375:202(i16vec3) ExtInst 1(GLSL.std.450) 38(UMin) 371 374
|
||||
Store 370(u16v) 375
|
||||
376:202(i16vec3) Load 370(u16v)
|
||||
378:202(i16vec3) ExtInst 1(GLSL.std.450) 38(UMin) 376 377
|
||||
Store 370(u16v) 378
|
||||
379: 52(i16vec2) Load 357(i16v)
|
||||
380: 14(int16_t) Load 360(i16)
|
||||
381: 52(i16vec2) CompositeConstruct 380 380
|
||||
382: 52(i16vec2) ExtInst 1(GLSL.std.450) 42(SMax) 379 381
|
||||
Store 357(i16v) 382
|
||||
383: 52(i16vec2) Load 357(i16v)
|
||||
384: 52(i16vec2) ExtInst 1(GLSL.std.450) 42(SMax) 383 368
|
||||
Store 357(i16v) 384
|
||||
385:202(i16vec3) Load 370(u16v)
|
||||
386: 36(int16_t) Load 372(u16)
|
||||
387:202(i16vec3) CompositeConstruct 386 386 386
|
||||
388:202(i16vec3) ExtInst 1(GLSL.std.450) 41(UMax) 385 387
|
||||
Store 370(u16v) 388
|
||||
389:202(i16vec3) Load 370(u16v)
|
||||
390:202(i16vec3) ExtInst 1(GLSL.std.450) 41(UMax) 389 377
|
||||
Store 370(u16v) 390
|
||||
391: 52(i16vec2) Load 357(i16v)
|
||||
392: 14(int16_t) Load 360(i16)
|
||||
393: 14(int16_t) SNegate 392
|
||||
394: 14(int16_t) Load 360(i16)
|
||||
395: 52(i16vec2) CompositeConstruct 393 393
|
||||
396: 52(i16vec2) CompositeConstruct 394 394
|
||||
397: 52(i16vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 391 395 396
|
||||
Store 357(i16v) 397
|
||||
398: 52(i16vec2) Load 357(i16v)
|
||||
399: 52(i16vec2) Load 357(i16v)
|
||||
400: 52(i16vec2) SNegate 399
|
||||
401: 52(i16vec2) Load 357(i16v)
|
||||
402: 52(i16vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 398 400 401
|
||||
Store 357(i16v) 402
|
||||
403:202(i16vec3) Load 370(u16v)
|
||||
404: 36(int16_t) Load 372(u16)
|
||||
405: 36(int16_t) SNegate 404
|
||||
406: 36(int16_t) Load 372(u16)
|
||||
407:202(i16vec3) CompositeConstruct 405 405 405
|
||||
408:202(i16vec3) CompositeConstruct 406 406 406
|
||||
409:202(i16vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 403 407 408
|
||||
Store 370(u16v) 409
|
||||
410:202(i16vec3) Load 370(u16v)
|
||||
411:202(i16vec3) Load 370(u16v)
|
||||
412:202(i16vec3) SNegate 411
|
||||
413:202(i16vec3) Load 370(u16v)
|
||||
414:202(i16vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 410 412 413
|
||||
Store 370(u16v) 414
|
||||
415: 15(ptr) AccessChain 357(i16v) 291
|
||||
416: 14(int16_t) Load 415
|
||||
417: 15(ptr) AccessChain 357(i16v) 273
|
||||
418: 14(int16_t) Load 417
|
||||
420: 14(int16_t) Select 419 418 416
|
||||
Store 360(i16) 420
|
||||
421: 14(int16_t) Load 360(i16)
|
||||
422: 52(i16vec2) CompositeConstruct 421 421
|
||||
423: 14(int16_t) Load 360(i16)
|
||||
424: 14(int16_t) SNegate 423
|
||||
425: 52(i16vec2) CompositeConstruct 424 424
|
||||
428: 52(i16vec2) Select 427 425 422
|
||||
Store 357(i16v) 428
|
||||
429: 37(ptr) AccessChain 370(u16v) 291
|
||||
430: 36(int16_t) Load 429
|
||||
431: 37(ptr) AccessChain 370(u16v) 273
|
||||
432: 36(int16_t) Load 431
|
||||
433: 36(int16_t) Select 419 432 430
|
||||
Store 372(u16) 433
|
||||
434: 36(int16_t) Load 372(u16)
|
||||
435:202(i16vec3) CompositeConstruct 434 434 434
|
||||
436: 36(int16_t) Load 372(u16)
|
||||
437: 36(int16_t) SNegate 436
|
||||
438:202(i16vec3) CompositeConstruct 437 437 437
|
||||
441:202(i16vec3) Select 440 438 435
|
||||
Store 370(u16v) 441
|
||||
443: 52(i16vec2) Load 357(i16v)
|
||||
444: 27(int) Bitcast 443
|
||||
Store 442(i32) 444
|
||||
449:446(i16vec4) Load 448(i16v4)
|
||||
450: 71(int64_t) Bitcast 449
|
||||
Store 445(i64) 450
|
||||
453: 57(i16vec2) Load 452(u16v2)
|
||||
454: 17(int) Bitcast 453
|
||||
Store 451(u32) 454
|
||||
460:457(i16vec4) Load 459(u16v4)
|
||||
461: 77(int64_t) Bitcast 460
|
||||
Store 456(u64) 461
|
||||
462: 27(int) Load 442(i32)
|
||||
463: 52(i16vec2) Bitcast 462
|
||||
Store 357(i16v) 463
|
||||
464: 71(int64_t) Load 445(i64)
|
||||
465:446(i16vec4) Bitcast 464
|
||||
Store 448(i16v4) 465
|
||||
466: 17(int) Load 451(u32)
|
||||
467: 57(i16vec2) Bitcast 466
|
||||
Store 452(u16v2) 467
|
||||
468: 77(int64_t) Load 456(u64)
|
||||
469:457(i16vec4) Bitcast 468
|
||||
Store 459(u16v4) 469
|
||||
472:202(i16vec3) Load 370(u16v)
|
||||
473: 36(int16_t) Load 372(u16)
|
||||
474:202(i16vec3) CompositeConstruct 473 473 473
|
||||
475: 439(bvec3) ULessThan 472 474
|
||||
Store 471(bv) 475
|
||||
476: 52(i16vec2) Load 357(i16v)
|
||||
477: 14(int16_t) Load 360(i16)
|
||||
478: 52(i16vec2) CompositeConstruct 477 477
|
||||
479: 174(bvec2) SLessThan 476 478
|
||||
480: 289(ptr) AccessChain 471(bv) 291
|
||||
481: 173(bool) CompositeExtract 479 0
|
||||
Store 480 481
|
||||
482:193(i16vec3) Load 356(u16v)
|
||||
483: 36(int16_t) Load 358(u16)
|
||||
484:193(i16vec3) CompositeConstruct 483 483 483
|
||||
485: 425(bvec3) UGreaterThan 482 484
|
||||
Store 457(bv) 485
|
||||
486: 52(i16vec2) Load 343(i16v)
|
||||
487: 14(int16_t) Load 346(i16)
|
||||
488: 52(i16vec2) CompositeConstruct 487 487
|
||||
489: 174(bvec2) SGreaterThan 486 488
|
||||
490: 280(ptr) AccessChain 457(bv) 282
|
||||
491: 173(bool) CompositeExtract 489 0
|
||||
Store 490 491
|
||||
492: 280(ptr) AccessChain 457(bv) 264
|
||||
493: 173(bool) CompositeExtract 489 1
|
||||
482: 289(ptr) AccessChain 471(bv) 273
|
||||
483: 173(bool) CompositeExtract 479 1
|
||||
Store 482 483
|
||||
484:202(i16vec3) Load 370(u16v)
|
||||
485: 36(int16_t) Load 372(u16)
|
||||
486:202(i16vec3) CompositeConstruct 485 485 485
|
||||
487: 439(bvec3) ULessThanEqual 484 486
|
||||
Store 471(bv) 487
|
||||
488: 52(i16vec2) Load 357(i16v)
|
||||
489: 14(int16_t) Load 360(i16)
|
||||
490: 52(i16vec2) CompositeConstruct 489 489
|
||||
491: 174(bvec2) SLessThanEqual 488 490
|
||||
492: 289(ptr) AccessChain 471(bv) 291
|
||||
493: 173(bool) CompositeExtract 491 0
|
||||
Store 492 493
|
||||
494:193(i16vec3) Load 356(u16v)
|
||||
495: 36(int16_t) Load 358(u16)
|
||||
496:193(i16vec3) CompositeConstruct 495 495 495
|
||||
497: 425(bvec3) UGreaterThanEqual 494 496
|
||||
Store 457(bv) 497
|
||||
498: 52(i16vec2) Load 343(i16v)
|
||||
499: 14(int16_t) Load 346(i16)
|
||||
500: 52(i16vec2) CompositeConstruct 499 499
|
||||
501: 174(bvec2) SGreaterThanEqual 498 500
|
||||
502: 280(ptr) AccessChain 457(bv) 282
|
||||
503: 173(bool) CompositeExtract 501 0
|
||||
Store 502 503
|
||||
504: 280(ptr) AccessChain 457(bv) 264
|
||||
505: 173(bool) CompositeExtract 501 1
|
||||
494: 289(ptr) AccessChain 471(bv) 273
|
||||
495: 173(bool) CompositeExtract 491 1
|
||||
Store 494 495
|
||||
496:202(i16vec3) Load 370(u16v)
|
||||
497: 36(int16_t) Load 372(u16)
|
||||
498:202(i16vec3) CompositeConstruct 497 497 497
|
||||
499: 439(bvec3) UGreaterThan 496 498
|
||||
Store 471(bv) 499
|
||||
500: 52(i16vec2) Load 357(i16v)
|
||||
501: 14(int16_t) Load 360(i16)
|
||||
502: 52(i16vec2) CompositeConstruct 501 501
|
||||
503: 174(bvec2) SGreaterThan 500 502
|
||||
504: 289(ptr) AccessChain 471(bv) 291
|
||||
505: 173(bool) CompositeExtract 503 0
|
||||
Store 504 505
|
||||
506:193(i16vec3) Load 356(u16v)
|
||||
507: 36(int16_t) Load 358(u16)
|
||||
508:193(i16vec3) CompositeConstruct 507 507 507
|
||||
509: 425(bvec3) IEqual 506 508
|
||||
Store 457(bv) 509
|
||||
510: 52(i16vec2) Load 343(i16v)
|
||||
511: 14(int16_t) Load 346(i16)
|
||||
512: 52(i16vec2) CompositeConstruct 511 511
|
||||
513: 174(bvec2) IEqual 510 512
|
||||
514: 280(ptr) AccessChain 457(bv) 282
|
||||
515: 173(bool) CompositeExtract 513 0
|
||||
Store 514 515
|
||||
516: 280(ptr) AccessChain 457(bv) 264
|
||||
517: 173(bool) CompositeExtract 513 1
|
||||
506: 289(ptr) AccessChain 471(bv) 273
|
||||
507: 173(bool) CompositeExtract 503 1
|
||||
Store 506 507
|
||||
508:202(i16vec3) Load 370(u16v)
|
||||
509: 36(int16_t) Load 372(u16)
|
||||
510:202(i16vec3) CompositeConstruct 509 509 509
|
||||
511: 439(bvec3) UGreaterThanEqual 508 510
|
||||
Store 471(bv) 511
|
||||
512: 52(i16vec2) Load 357(i16v)
|
||||
513: 14(int16_t) Load 360(i16)
|
||||
514: 52(i16vec2) CompositeConstruct 513 513
|
||||
515: 174(bvec2) SGreaterThanEqual 512 514
|
||||
516: 289(ptr) AccessChain 471(bv) 291
|
||||
517: 173(bool) CompositeExtract 515 0
|
||||
Store 516 517
|
||||
518:193(i16vec3) Load 356(u16v)
|
||||
519: 36(int16_t) Load 358(u16)
|
||||
520:193(i16vec3) CompositeConstruct 519 519 519
|
||||
521: 425(bvec3) INotEqual 518 520
|
||||
Store 457(bv) 521
|
||||
522: 52(i16vec2) Load 343(i16v)
|
||||
523: 14(int16_t) Load 346(i16)
|
||||
524: 52(i16vec2) CompositeConstruct 523 523
|
||||
525: 174(bvec2) INotEqual 522 524
|
||||
526: 280(ptr) AccessChain 457(bv) 282
|
||||
527: 173(bool) CompositeExtract 525 0
|
||||
Store 526 527
|
||||
528: 280(ptr) AccessChain 457(bv) 264
|
||||
529: 173(bool) CompositeExtract 525 1
|
||||
518: 289(ptr) AccessChain 471(bv) 273
|
||||
519: 173(bool) CompositeExtract 515 1
|
||||
Store 518 519
|
||||
520:202(i16vec3) Load 370(u16v)
|
||||
521: 36(int16_t) Load 372(u16)
|
||||
522:202(i16vec3) CompositeConstruct 521 521 521
|
||||
523: 439(bvec3) IEqual 520 522
|
||||
Store 471(bv) 523
|
||||
524: 52(i16vec2) Load 357(i16v)
|
||||
525: 14(int16_t) Load 360(i16)
|
||||
526: 52(i16vec2) CompositeConstruct 525 525
|
||||
527: 174(bvec2) IEqual 524 526
|
||||
528: 289(ptr) AccessChain 471(bv) 291
|
||||
529: 173(bool) CompositeExtract 527 0
|
||||
Store 528 529
|
||||
530: 289(ptr) AccessChain 471(bv) 273
|
||||
531: 173(bool) CompositeExtract 527 1
|
||||
Store 530 531
|
||||
532:202(i16vec3) Load 370(u16v)
|
||||
533: 36(int16_t) Load 372(u16)
|
||||
534:202(i16vec3) CompositeConstruct 533 533 533
|
||||
535: 439(bvec3) INotEqual 532 534
|
||||
Store 471(bv) 535
|
||||
536: 52(i16vec2) Load 357(i16v)
|
||||
537: 14(int16_t) Load 360(i16)
|
||||
538: 52(i16vec2) CompositeConstruct 537 537
|
||||
539: 174(bvec2) INotEqual 536 538
|
||||
540: 289(ptr) AccessChain 471(bv) 291
|
||||
541: 173(bool) CompositeExtract 539 0
|
||||
Store 540 541
|
||||
542: 289(ptr) AccessChain 471(bv) 273
|
||||
543: 173(bool) CompositeExtract 539 1
|
||||
Store 542 543
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -1,7 +1,7 @@
|
||||
spv.int8.frag
|
||||
// Module Version 10300
|
||||
// Generated by (magic number): 8000a
|
||||
// Id's are bound by 530
|
||||
// Id's are bound by 544
|
||||
|
||||
Capability Shader
|
||||
Capability Float16
|
||||
@ -48,53 +48,55 @@ spv.int8.frag
|
||||
Name 117 "f64v"
|
||||
Name 144 "u16v"
|
||||
Name 174 "bv"
|
||||
Name 192 "u8v"
|
||||
Name 197 "i8"
|
||||
Name 217 "i"
|
||||
Name 224 "uv"
|
||||
Name 240 "i16"
|
||||
Name 276 "b"
|
||||
Name 338 "i8v"
|
||||
Name 341 "i8"
|
||||
Name 351 "u8v"
|
||||
Name 353 "u8"
|
||||
Name 423 "i16"
|
||||
Name 426 "i32"
|
||||
Name 429 "i8v4"
|
||||
Name 433 "u16"
|
||||
Name 434 "u8v2"
|
||||
Name 437 "u32"
|
||||
Name 440 "u8v4"
|
||||
Name 452 "bv"
|
||||
Name 525 "Block"
|
||||
MemberName 525(Block) 0 "i8"
|
||||
MemberName 525(Block) 1 "i8v2"
|
||||
MemberName 525(Block) 2 "i8v3"
|
||||
MemberName 525(Block) 3 "i8v4"
|
||||
MemberName 525(Block) 4 "u8"
|
||||
MemberName 525(Block) 5 "u8v2"
|
||||
MemberName 525(Block) 6 "u8v3"
|
||||
MemberName 525(Block) 7 "u8v4"
|
||||
Name 527 "block"
|
||||
Name 528 "si8"
|
||||
Name 529 "su8"
|
||||
Name 193 "arr"
|
||||
Name 201 "u8v"
|
||||
Name 206 "i8"
|
||||
Name 226 "i"
|
||||
Name 233 "uv"
|
||||
Name 249 "i16"
|
||||
Name 285 "b"
|
||||
Name 348 "f"
|
||||
Name 352 "i8v"
|
||||
Name 355 "i8"
|
||||
Name 365 "u8v"
|
||||
Name 367 "u8"
|
||||
Name 437 "i16"
|
||||
Name 440 "i32"
|
||||
Name 443 "i8v4"
|
||||
Name 447 "u16"
|
||||
Name 448 "u8v2"
|
||||
Name 451 "u32"
|
||||
Name 454 "u8v4"
|
||||
Name 466 "bv"
|
||||
Name 539 "Block"
|
||||
MemberName 539(Block) 0 "i8"
|
||||
MemberName 539(Block) 1 "i8v2"
|
||||
MemberName 539(Block) 2 "i8v3"
|
||||
MemberName 539(Block) 3 "i8v4"
|
||||
MemberName 539(Block) 4 "u8"
|
||||
MemberName 539(Block) 5 "u8v2"
|
||||
MemberName 539(Block) 6 "u8v3"
|
||||
MemberName 539(Block) 7 "u8v4"
|
||||
Name 541 "block"
|
||||
Name 542 "si8"
|
||||
Name 543 "su8"
|
||||
MemberDecorate 24(Uniforms) 0 Offset 0
|
||||
Decorate 24(Uniforms) Block
|
||||
Decorate 26 DescriptorSet 0
|
||||
Decorate 26 Binding 0
|
||||
MemberDecorate 525(Block) 0 Offset 0
|
||||
MemberDecorate 525(Block) 1 Offset 2
|
||||
MemberDecorate 525(Block) 2 Offset 4
|
||||
MemberDecorate 525(Block) 3 Offset 8
|
||||
MemberDecorate 525(Block) 4 Offset 12
|
||||
MemberDecorate 525(Block) 5 Offset 14
|
||||
MemberDecorate 525(Block) 6 Offset 16
|
||||
MemberDecorate 525(Block) 7 Offset 20
|
||||
Decorate 525(Block) Block
|
||||
Decorate 527(block) DescriptorSet 0
|
||||
Decorate 527(block) Binding 1
|
||||
Decorate 528(si8) SpecId 100
|
||||
Decorate 529(su8) SpecId 101
|
||||
MemberDecorate 539(Block) 0 Offset 0
|
||||
MemberDecorate 539(Block) 1 Offset 2
|
||||
MemberDecorate 539(Block) 2 Offset 4
|
||||
MemberDecorate 539(Block) 3 Offset 8
|
||||
MemberDecorate 539(Block) 4 Offset 12
|
||||
MemberDecorate 539(Block) 5 Offset 14
|
||||
MemberDecorate 539(Block) 6 Offset 16
|
||||
MemberDecorate 539(Block) 7 Offset 20
|
||||
Decorate 539(Block) Block
|
||||
Decorate 541(block) DescriptorSet 0
|
||||
Decorate 541(block) Binding 1
|
||||
Decorate 542(si8) SpecId 100
|
||||
Decorate 543(su8) SpecId 101
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
14: TypeInt 8 1
|
||||
@ -159,36 +161,45 @@ spv.int8.frag
|
||||
182: 36(int8_t) Constant 1
|
||||
183: 49(i8vec2) ConstantComposite 181 181
|
||||
184: 49(i8vec2) ConstantComposite 182 182
|
||||
190: TypeVector 36(int8_t) 3
|
||||
191: TypePointer Function 190(i8vec3)
|
||||
194: TypeVector 14(int8_t) 3
|
||||
216: TypePointer Function 27(int)
|
||||
222: TypeVector 17(int) 3
|
||||
223: TypePointer Function 222(ivec3)
|
||||
239: TypePointer Function 57(int16_t)
|
||||
261: 17(int) Constant 1
|
||||
267: 17(int) Constant 2
|
||||
275: TypePointer Function 171(bool)
|
||||
277: 17(int) Constant 0
|
||||
291: TypePointer Function 17(int)
|
||||
349: 52(i8vec2) ConstantComposite 21 21
|
||||
358: 190(i8vec3) ConstantComposite 181 181 181
|
||||
400: 171(bool) ConstantTrue
|
||||
407: 171(bool) ConstantFalse
|
||||
408: 172(bvec2) ConstantComposite 407 407
|
||||
420: TypeVector 171(bool) 3
|
||||
421: 420(bvec3) ConstantComposite 407 407 407
|
||||
427: TypeVector 14(int8_t) 4
|
||||
428: TypePointer Function 427(i8vec4)
|
||||
432: TypePointer Function 64(int16_t)
|
||||
438: TypeVector 36(int8_t) 4
|
||||
439: TypePointer Function 438(i8vec4)
|
||||
451: TypePointer Function 420(bvec3)
|
||||
525(Block): TypeStruct 14(int8_t) 52(i8vec2) 194(i8vec3) 427(i8vec4) 36(int8_t) 49(i8vec2) 190(i8vec3) 438(i8vec4)
|
||||
526: TypePointer Uniform 525(Block)
|
||||
527(block): 526(ptr) Variable Uniform
|
||||
528(si8): 14(int8_t) SpecConstant 4294967286
|
||||
529(su8): 36(int8_t) SpecConstant 20
|
||||
190: 17(int) Constant 4
|
||||
191: TypeArray 108(float) 190
|
||||
192: TypePointer Function 191
|
||||
194: 108(float) Constant 1065353216
|
||||
195: 108(float) Constant 1073741824
|
||||
196: 108(float) Constant 1077936128
|
||||
197: 108(float) Constant 1082130432
|
||||
198: 191 ConstantComposite 194 195 196 197
|
||||
199: TypeVector 36(int8_t) 3
|
||||
200: TypePointer Function 199(i8vec3)
|
||||
203: TypeVector 14(int8_t) 3
|
||||
225: TypePointer Function 27(int)
|
||||
231: TypeVector 17(int) 3
|
||||
232: TypePointer Function 231(ivec3)
|
||||
248: TypePointer Function 57(int16_t)
|
||||
270: 17(int) Constant 1
|
||||
276: 17(int) Constant 2
|
||||
284: TypePointer Function 171(bool)
|
||||
286: 17(int) Constant 0
|
||||
300: TypePointer Function 17(int)
|
||||
347: TypePointer Function 108(float)
|
||||
363: 52(i8vec2) ConstantComposite 21 21
|
||||
372: 199(i8vec3) ConstantComposite 181 181 181
|
||||
414: 171(bool) ConstantTrue
|
||||
421: 171(bool) ConstantFalse
|
||||
422: 172(bvec2) ConstantComposite 421 421
|
||||
434: TypeVector 171(bool) 3
|
||||
435: 434(bvec3) ConstantComposite 421 421 421
|
||||
441: TypeVector 14(int8_t) 4
|
||||
442: TypePointer Function 441(i8vec4)
|
||||
446: TypePointer Function 64(int16_t)
|
||||
452: TypeVector 36(int8_t) 4
|
||||
453: TypePointer Function 452(i8vec4)
|
||||
465: TypePointer Function 434(bvec3)
|
||||
539(Block): TypeStruct 14(int8_t) 52(i8vec2) 203(i8vec3) 441(i8vec4) 36(int8_t) 49(i8vec2) 199(i8vec3) 452(i8vec4)
|
||||
540: TypePointer Uniform 539(Block)
|
||||
541(block): 540(ptr) Variable Uniform
|
||||
542(si8): 14(int8_t) SpecConstant 4294967286
|
||||
543(su8): 36(int8_t) SpecConstant 20
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
Return
|
||||
@ -360,396 +371,403 @@ spv.int8.frag
|
||||
FunctionEnd
|
||||
10(operators(): 2 Function None 3
|
||||
11: Label
|
||||
192(u8v): 191(ptr) Variable Function
|
||||
197(i8): 15(ptr) Variable Function
|
||||
217(i): 216(ptr) Variable Function
|
||||
224(uv): 223(ptr) Variable Function
|
||||
240(i16): 239(ptr) Variable Function
|
||||
276(b): 275(ptr) Variable Function
|
||||
193: 190(i8vec3) Load 192(u8v)
|
||||
195: 194(i8vec3) CompositeConstruct 176 176 176
|
||||
196: 190(i8vec3) IAdd 193 195
|
||||
Store 192(u8v) 196
|
||||
198: 14(int8_t) Load 197(i8)
|
||||
199: 14(int8_t) ISub 198 176
|
||||
Store 197(i8) 199
|
||||
200: 14(int8_t) Load 197(i8)
|
||||
201: 14(int8_t) IAdd 200 176
|
||||
Store 197(i8) 201
|
||||
202: 190(i8vec3) Load 192(u8v)
|
||||
203: 194(i8vec3) CompositeConstruct 176 176 176
|
||||
204: 190(i8vec3) ISub 202 203
|
||||
Store 192(u8v) 204
|
||||
205: 190(i8vec3) Load 192(u8v)
|
||||
206: 190(i8vec3) Not 205
|
||||
Store 192(u8v) 206
|
||||
207: 14(int8_t) Load 197(i8)
|
||||
Store 197(i8) 207
|
||||
208: 190(i8vec3) Load 192(u8v)
|
||||
209: 190(i8vec3) SNegate 208
|
||||
Store 192(u8v) 209
|
||||
210: 14(int8_t) Load 197(i8)
|
||||
211: 14(int8_t) Load 197(i8)
|
||||
212: 14(int8_t) IAdd 211 210
|
||||
Store 197(i8) 212
|
||||
213: 190(i8vec3) Load 192(u8v)
|
||||
214: 190(i8vec3) Load 192(u8v)
|
||||
215: 190(i8vec3) ISub 214 213
|
||||
Store 192(u8v) 215
|
||||
218: 14(int8_t) Load 197(i8)
|
||||
219: 27(int) SConvert 218
|
||||
220: 27(int) Load 217(i)
|
||||
221: 27(int) IMul 220 219
|
||||
Store 217(i) 221
|
||||
225: 190(i8vec3) Load 192(u8v)
|
||||
226: 222(ivec3) UConvert 225
|
||||
227: 222(ivec3) Load 224(uv)
|
||||
228: 222(ivec3) UDiv 227 226
|
||||
Store 224(uv) 228
|
||||
229: 14(int8_t) Load 197(i8)
|
||||
230: 27(int) SConvert 229
|
||||
231: 17(int) Bitcast 230
|
||||
232: 222(ivec3) Load 224(uv)
|
||||
233: 222(ivec3) CompositeConstruct 231 231 231
|
||||
234: 222(ivec3) UMod 232 233
|
||||
Store 224(uv) 234
|
||||
235: 190(i8vec3) Load 192(u8v)
|
||||
236: 222(ivec3) UConvert 235
|
||||
237: 222(ivec3) Load 224(uv)
|
||||
238: 222(ivec3) IAdd 236 237
|
||||
Store 224(uv) 238
|
||||
241: 14(int8_t) Load 197(i8)
|
||||
242: 57(int16_t) SConvert 241
|
||||
243: 57(int16_t) Load 240(i16)
|
||||
244: 57(int16_t) ISub 242 243
|
||||
Store 240(i16) 244
|
||||
245: 190(i8vec3) Load 192(u8v)
|
||||
246: 222(ivec3) UConvert 245
|
||||
247: 222(ivec3) Load 224(uv)
|
||||
248: 222(ivec3) IMul 246 247
|
||||
Store 224(uv) 248
|
||||
249: 14(int8_t) Load 197(i8)
|
||||
250: 57(int16_t) SConvert 249
|
||||
251: 57(int16_t) Load 240(i16)
|
||||
252: 57(int16_t) IMul 250 251
|
||||
Store 240(i16) 252
|
||||
253: 14(int8_t) Load 197(i8)
|
||||
254: 27(int) SConvert 253
|
||||
255: 27(int) Load 217(i)
|
||||
256: 27(int) SMod 254 255
|
||||
Store 217(i) 256
|
||||
257: 14(int8_t) Load 197(i8)
|
||||
258: 190(i8vec3) Load 192(u8v)
|
||||
259: 194(i8vec3) CompositeConstruct 257 257 257
|
||||
260: 190(i8vec3) ShiftLeftLogical 258 259
|
||||
Store 192(u8v) 260
|
||||
262: 37(ptr) AccessChain 192(u8v) 261
|
||||
263: 36(int8_t) Load 262
|
||||
264: 14(int8_t) Load 197(i8)
|
||||
265: 14(int8_t) ShiftRightArithmetic 264 263
|
||||
Store 197(i8) 265
|
||||
266: 14(int8_t) Load 197(i8)
|
||||
268: 37(ptr) AccessChain 192(u8v) 267
|
||||
269: 36(int8_t) Load 268
|
||||
270: 14(int8_t) ShiftLeftLogical 266 269
|
||||
Store 197(i8) 270
|
||||
271: 190(i8vec3) Load 192(u8v)
|
||||
272: 14(int8_t) Load 197(i8)
|
||||
273: 194(i8vec3) CompositeConstruct 272 272 272
|
||||
274: 190(i8vec3) ShiftLeftLogical 271 273
|
||||
Store 192(u8v) 274
|
||||
278: 37(ptr) AccessChain 192(u8v) 277
|
||||
279: 36(int8_t) Load 278
|
||||
280: 14(int8_t) Load 197(i8)
|
||||
281: 36(int8_t) Bitcast 280
|
||||
282: 171(bool) INotEqual 279 281
|
||||
Store 276(b) 282
|
||||
283: 14(int8_t) Load 197(i8)
|
||||
284: 36(int8_t) Bitcast 283
|
||||
285: 37(ptr) AccessChain 192(u8v) 277
|
||||
286: 36(int8_t) Load 285
|
||||
287: 171(bool) IEqual 284 286
|
||||
Store 276(b) 287
|
||||
288: 37(ptr) AccessChain 192(u8v) 277
|
||||
289: 36(int8_t) Load 288
|
||||
290: 17(int) UConvert 289
|
||||
292: 291(ptr) AccessChain 224(uv) 261
|
||||
293: 17(int) Load 292
|
||||
294: 171(bool) UGreaterThan 290 293
|
||||
Store 276(b) 294
|
||||
295: 14(int8_t) Load 197(i8)
|
||||
296: 27(int) SConvert 295
|
||||
297: 27(int) Load 217(i)
|
||||
298: 171(bool) SLessThan 296 297
|
||||
Store 276(b) 298
|
||||
299: 37(ptr) AccessChain 192(u8v) 261
|
||||
300: 36(int8_t) Load 299
|
||||
301: 17(int) UConvert 300
|
||||
302: 291(ptr) AccessChain 224(uv) 277
|
||||
303: 17(int) Load 302
|
||||
304: 171(bool) UGreaterThanEqual 301 303
|
||||
Store 276(b) 304
|
||||
305: 14(int8_t) Load 197(i8)
|
||||
306: 27(int) SConvert 305
|
||||
307: 27(int) Load 217(i)
|
||||
308: 171(bool) SLessThanEqual 306 307
|
||||
Store 276(b) 308
|
||||
309: 14(int8_t) Load 197(i8)
|
||||
310: 27(int) SConvert 309
|
||||
311: 17(int) Bitcast 310
|
||||
312: 222(ivec3) Load 224(uv)
|
||||
313: 222(ivec3) CompositeConstruct 311 311 311
|
||||
314: 222(ivec3) BitwiseOr 312 313
|
||||
Store 224(uv) 314
|
||||
315: 14(int8_t) Load 197(i8)
|
||||
316: 27(int) SConvert 315
|
||||
317: 27(int) Load 217(i)
|
||||
318: 27(int) BitwiseOr 316 317
|
||||
Store 217(i) 318
|
||||
319: 14(int8_t) Load 197(i8)
|
||||
320: 57(int16_t) SConvert 319
|
||||
321: 57(int16_t) Load 240(i16)
|
||||
322: 57(int16_t) BitwiseAnd 321 320
|
||||
Store 240(i16) 322
|
||||
323: 190(i8vec3) Load 192(u8v)
|
||||
324: 222(ivec3) UConvert 323
|
||||
325: 222(ivec3) Load 224(uv)
|
||||
326: 222(ivec3) BitwiseAnd 324 325
|
||||
Store 224(uv) 326
|
||||
327: 14(int8_t) Load 197(i8)
|
||||
328: 27(int) SConvert 327
|
||||
329: 17(int) Bitcast 328
|
||||
330: 222(ivec3) Load 224(uv)
|
||||
331: 222(ivec3) CompositeConstruct 329 329 329
|
||||
332: 222(ivec3) BitwiseXor 330 331
|
||||
Store 224(uv) 332
|
||||
333: 190(i8vec3) Load 192(u8v)
|
||||
334: 14(int8_t) Load 197(i8)
|
||||
335: 36(int8_t) Bitcast 334
|
||||
336: 190(i8vec3) CompositeConstruct 335 335 335
|
||||
337: 190(i8vec3) BitwiseXor 333 336
|
||||
Store 192(u8v) 337
|
||||
193(arr): 192(ptr) Variable Function
|
||||
201(u8v): 200(ptr) Variable Function
|
||||
206(i8): 15(ptr) Variable Function
|
||||
226(i): 225(ptr) Variable Function
|
||||
233(uv): 232(ptr) Variable Function
|
||||
249(i16): 248(ptr) Variable Function
|
||||
285(b): 284(ptr) Variable Function
|
||||
348(f): 347(ptr) Variable Function
|
||||
Store 193(arr) 198
|
||||
202: 199(i8vec3) Load 201(u8v)
|
||||
204: 203(i8vec3) CompositeConstruct 176 176 176
|
||||
205: 199(i8vec3) IAdd 202 204
|
||||
Store 201(u8v) 205
|
||||
207: 14(int8_t) Load 206(i8)
|
||||
208: 14(int8_t) ISub 207 176
|
||||
Store 206(i8) 208
|
||||
209: 14(int8_t) Load 206(i8)
|
||||
210: 14(int8_t) IAdd 209 176
|
||||
Store 206(i8) 210
|
||||
211: 199(i8vec3) Load 201(u8v)
|
||||
212: 203(i8vec3) CompositeConstruct 176 176 176
|
||||
213: 199(i8vec3) ISub 211 212
|
||||
Store 201(u8v) 213
|
||||
214: 199(i8vec3) Load 201(u8v)
|
||||
215: 199(i8vec3) Not 214
|
||||
Store 201(u8v) 215
|
||||
216: 14(int8_t) Load 206(i8)
|
||||
Store 206(i8) 216
|
||||
217: 199(i8vec3) Load 201(u8v)
|
||||
218: 199(i8vec3) SNegate 217
|
||||
Store 201(u8v) 218
|
||||
219: 14(int8_t) Load 206(i8)
|
||||
220: 14(int8_t) Load 206(i8)
|
||||
221: 14(int8_t) IAdd 220 219
|
||||
Store 206(i8) 221
|
||||
222: 199(i8vec3) Load 201(u8v)
|
||||
223: 199(i8vec3) Load 201(u8v)
|
||||
224: 199(i8vec3) ISub 223 222
|
||||
Store 201(u8v) 224
|
||||
227: 14(int8_t) Load 206(i8)
|
||||
228: 27(int) SConvert 227
|
||||
229: 27(int) Load 226(i)
|
||||
230: 27(int) IMul 229 228
|
||||
Store 226(i) 230
|
||||
234: 199(i8vec3) Load 201(u8v)
|
||||
235: 231(ivec3) UConvert 234
|
||||
236: 231(ivec3) Load 233(uv)
|
||||
237: 231(ivec3) UDiv 236 235
|
||||
Store 233(uv) 237
|
||||
238: 14(int8_t) Load 206(i8)
|
||||
239: 27(int) SConvert 238
|
||||
240: 17(int) Bitcast 239
|
||||
241: 231(ivec3) Load 233(uv)
|
||||
242: 231(ivec3) CompositeConstruct 240 240 240
|
||||
243: 231(ivec3) UMod 241 242
|
||||
Store 233(uv) 243
|
||||
244: 199(i8vec3) Load 201(u8v)
|
||||
245: 231(ivec3) UConvert 244
|
||||
246: 231(ivec3) Load 233(uv)
|
||||
247: 231(ivec3) IAdd 245 246
|
||||
Store 233(uv) 247
|
||||
250: 14(int8_t) Load 206(i8)
|
||||
251: 57(int16_t) SConvert 250
|
||||
252: 57(int16_t) Load 249(i16)
|
||||
253: 57(int16_t) ISub 251 252
|
||||
Store 249(i16) 253
|
||||
254: 199(i8vec3) Load 201(u8v)
|
||||
255: 231(ivec3) UConvert 254
|
||||
256: 231(ivec3) Load 233(uv)
|
||||
257: 231(ivec3) IMul 255 256
|
||||
Store 233(uv) 257
|
||||
258: 14(int8_t) Load 206(i8)
|
||||
259: 57(int16_t) SConvert 258
|
||||
260: 57(int16_t) Load 249(i16)
|
||||
261: 57(int16_t) IMul 259 260
|
||||
Store 249(i16) 261
|
||||
262: 14(int8_t) Load 206(i8)
|
||||
263: 27(int) SConvert 262
|
||||
264: 27(int) Load 226(i)
|
||||
265: 27(int) SMod 263 264
|
||||
Store 226(i) 265
|
||||
266: 14(int8_t) Load 206(i8)
|
||||
267: 199(i8vec3) Load 201(u8v)
|
||||
268: 203(i8vec3) CompositeConstruct 266 266 266
|
||||
269: 199(i8vec3) ShiftLeftLogical 267 268
|
||||
Store 201(u8v) 269
|
||||
271: 37(ptr) AccessChain 201(u8v) 270
|
||||
272: 36(int8_t) Load 271
|
||||
273: 14(int8_t) Load 206(i8)
|
||||
274: 14(int8_t) ShiftRightArithmetic 273 272
|
||||
Store 206(i8) 274
|
||||
275: 14(int8_t) Load 206(i8)
|
||||
277: 37(ptr) AccessChain 201(u8v) 276
|
||||
278: 36(int8_t) Load 277
|
||||
279: 14(int8_t) ShiftLeftLogical 275 278
|
||||
Store 206(i8) 279
|
||||
280: 199(i8vec3) Load 201(u8v)
|
||||
281: 14(int8_t) Load 206(i8)
|
||||
282: 203(i8vec3) CompositeConstruct 281 281 281
|
||||
283: 199(i8vec3) ShiftLeftLogical 280 282
|
||||
Store 201(u8v) 283
|
||||
287: 37(ptr) AccessChain 201(u8v) 286
|
||||
288: 36(int8_t) Load 287
|
||||
289: 14(int8_t) Load 206(i8)
|
||||
290: 36(int8_t) Bitcast 289
|
||||
291: 171(bool) INotEqual 288 290
|
||||
Store 285(b) 291
|
||||
292: 14(int8_t) Load 206(i8)
|
||||
293: 36(int8_t) Bitcast 292
|
||||
294: 37(ptr) AccessChain 201(u8v) 286
|
||||
295: 36(int8_t) Load 294
|
||||
296: 171(bool) IEqual 293 295
|
||||
Store 285(b) 296
|
||||
297: 37(ptr) AccessChain 201(u8v) 286
|
||||
298: 36(int8_t) Load 297
|
||||
299: 17(int) UConvert 298
|
||||
301: 300(ptr) AccessChain 233(uv) 270
|
||||
302: 17(int) Load 301
|
||||
303: 171(bool) UGreaterThan 299 302
|
||||
Store 285(b) 303
|
||||
304: 14(int8_t) Load 206(i8)
|
||||
305: 27(int) SConvert 304
|
||||
306: 27(int) Load 226(i)
|
||||
307: 171(bool) SLessThan 305 306
|
||||
Store 285(b) 307
|
||||
308: 37(ptr) AccessChain 201(u8v) 270
|
||||
309: 36(int8_t) Load 308
|
||||
310: 17(int) UConvert 309
|
||||
311: 300(ptr) AccessChain 233(uv) 286
|
||||
312: 17(int) Load 311
|
||||
313: 171(bool) UGreaterThanEqual 310 312
|
||||
Store 285(b) 313
|
||||
314: 14(int8_t) Load 206(i8)
|
||||
315: 27(int) SConvert 314
|
||||
316: 27(int) Load 226(i)
|
||||
317: 171(bool) SLessThanEqual 315 316
|
||||
Store 285(b) 317
|
||||
318: 14(int8_t) Load 206(i8)
|
||||
319: 27(int) SConvert 318
|
||||
320: 17(int) Bitcast 319
|
||||
321: 231(ivec3) Load 233(uv)
|
||||
322: 231(ivec3) CompositeConstruct 320 320 320
|
||||
323: 231(ivec3) BitwiseOr 321 322
|
||||
Store 233(uv) 323
|
||||
324: 14(int8_t) Load 206(i8)
|
||||
325: 27(int) SConvert 324
|
||||
326: 27(int) Load 226(i)
|
||||
327: 27(int) BitwiseOr 325 326
|
||||
Store 226(i) 327
|
||||
328: 14(int8_t) Load 206(i8)
|
||||
329: 57(int16_t) SConvert 328
|
||||
330: 57(int16_t) Load 249(i16)
|
||||
331: 57(int16_t) BitwiseAnd 330 329
|
||||
Store 249(i16) 331
|
||||
332: 199(i8vec3) Load 201(u8v)
|
||||
333: 231(ivec3) UConvert 332
|
||||
334: 231(ivec3) Load 233(uv)
|
||||
335: 231(ivec3) BitwiseAnd 333 334
|
||||
Store 233(uv) 335
|
||||
336: 14(int8_t) Load 206(i8)
|
||||
337: 27(int) SConvert 336
|
||||
338: 17(int) Bitcast 337
|
||||
339: 231(ivec3) Load 233(uv)
|
||||
340: 231(ivec3) CompositeConstruct 338 338 338
|
||||
341: 231(ivec3) BitwiseXor 339 340
|
||||
Store 233(uv) 341
|
||||
342: 199(i8vec3) Load 201(u8v)
|
||||
343: 14(int8_t) Load 206(i8)
|
||||
344: 36(int8_t) Bitcast 343
|
||||
345: 199(i8vec3) CompositeConstruct 344 344 344
|
||||
346: 199(i8vec3) BitwiseXor 342 345
|
||||
Store 201(u8v) 346
|
||||
349: 14(int8_t) Load 206(i8)
|
||||
350: 347(ptr) AccessChain 193(arr) 349
|
||||
351: 108(float) Load 350
|
||||
Store 348(f) 351
|
||||
Return
|
||||
FunctionEnd
|
||||
12(builtinFuncs(): 2 Function None 3
|
||||
13: Label
|
||||
338(i8v): 53(ptr) Variable Function
|
||||
341(i8): 15(ptr) Variable Function
|
||||
351(u8v): 191(ptr) Variable Function
|
||||
353(u8): 37(ptr) Variable Function
|
||||
423(i16): 239(ptr) Variable Function
|
||||
426(i32): 216(ptr) Variable Function
|
||||
429(i8v4): 428(ptr) Variable Function
|
||||
433(u16): 432(ptr) Variable Function
|
||||
434(u8v2): 50(ptr) Variable Function
|
||||
437(u32): 291(ptr) Variable Function
|
||||
440(u8v4): 439(ptr) Variable Function
|
||||
452(bv): 451(ptr) Variable Function
|
||||
339: 52(i8vec2) Load 338(i8v)
|
||||
340: 52(i8vec2) ExtInst 1(GLSL.std.450) 5(SAbs) 339
|
||||
Store 338(i8v) 340
|
||||
342: 14(int8_t) Load 341(i8)
|
||||
343: 14(int8_t) ExtInst 1(GLSL.std.450) 7(SSign) 342
|
||||
Store 341(i8) 343
|
||||
344: 52(i8vec2) Load 338(i8v)
|
||||
345: 14(int8_t) Load 341(i8)
|
||||
346: 52(i8vec2) CompositeConstruct 345 345
|
||||
347: 52(i8vec2) ExtInst 1(GLSL.std.450) 39(SMin) 344 346
|
||||
Store 338(i8v) 347
|
||||
348: 52(i8vec2) Load 338(i8v)
|
||||
350: 52(i8vec2) ExtInst 1(GLSL.std.450) 39(SMin) 348 349
|
||||
Store 338(i8v) 350
|
||||
352: 190(i8vec3) Load 351(u8v)
|
||||
354: 36(int8_t) Load 353(u8)
|
||||
355: 190(i8vec3) CompositeConstruct 354 354 354
|
||||
356: 190(i8vec3) ExtInst 1(GLSL.std.450) 38(UMin) 352 355
|
||||
Store 351(u8v) 356
|
||||
357: 190(i8vec3) Load 351(u8v)
|
||||
359: 190(i8vec3) ExtInst 1(GLSL.std.450) 38(UMin) 357 358
|
||||
Store 351(u8v) 359
|
||||
360: 52(i8vec2) Load 338(i8v)
|
||||
361: 14(int8_t) Load 341(i8)
|
||||
362: 52(i8vec2) CompositeConstruct 361 361
|
||||
363: 52(i8vec2) ExtInst 1(GLSL.std.450) 42(SMax) 360 362
|
||||
Store 338(i8v) 363
|
||||
364: 52(i8vec2) Load 338(i8v)
|
||||
365: 52(i8vec2) ExtInst 1(GLSL.std.450) 42(SMax) 364 349
|
||||
Store 338(i8v) 365
|
||||
366: 190(i8vec3) Load 351(u8v)
|
||||
367: 36(int8_t) Load 353(u8)
|
||||
368: 190(i8vec3) CompositeConstruct 367 367 367
|
||||
369: 190(i8vec3) ExtInst 1(GLSL.std.450) 41(UMax) 366 368
|
||||
Store 351(u8v) 369
|
||||
370: 190(i8vec3) Load 351(u8v)
|
||||
371: 190(i8vec3) ExtInst 1(GLSL.std.450) 41(UMax) 370 358
|
||||
Store 351(u8v) 371
|
||||
372: 52(i8vec2) Load 338(i8v)
|
||||
373: 14(int8_t) Load 341(i8)
|
||||
374: 14(int8_t) SNegate 373
|
||||
375: 14(int8_t) Load 341(i8)
|
||||
376: 52(i8vec2) CompositeConstruct 374 374
|
||||
377: 52(i8vec2) CompositeConstruct 375 375
|
||||
378: 52(i8vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 372 376 377
|
||||
Store 338(i8v) 378
|
||||
379: 52(i8vec2) Load 338(i8v)
|
||||
380: 52(i8vec2) Load 338(i8v)
|
||||
381: 52(i8vec2) SNegate 380
|
||||
382: 52(i8vec2) Load 338(i8v)
|
||||
383: 52(i8vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 379 381 382
|
||||
Store 338(i8v) 383
|
||||
384: 190(i8vec3) Load 351(u8v)
|
||||
385: 36(int8_t) Load 353(u8)
|
||||
386: 36(int8_t) SNegate 385
|
||||
387: 36(int8_t) Load 353(u8)
|
||||
388: 190(i8vec3) CompositeConstruct 386 386 386
|
||||
389: 190(i8vec3) CompositeConstruct 387 387 387
|
||||
390: 190(i8vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 384 388 389
|
||||
Store 351(u8v) 390
|
||||
391: 190(i8vec3) Load 351(u8v)
|
||||
392: 190(i8vec3) Load 351(u8v)
|
||||
393: 190(i8vec3) SNegate 392
|
||||
394: 190(i8vec3) Load 351(u8v)
|
||||
395: 190(i8vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 391 393 394
|
||||
Store 351(u8v) 395
|
||||
396: 15(ptr) AccessChain 338(i8v) 277
|
||||
397: 14(int8_t) Load 396
|
||||
398: 15(ptr) AccessChain 338(i8v) 261
|
||||
399: 14(int8_t) Load 398
|
||||
401: 14(int8_t) Select 400 399 397
|
||||
Store 341(i8) 401
|
||||
402: 14(int8_t) Load 341(i8)
|
||||
403: 52(i8vec2) CompositeConstruct 402 402
|
||||
404: 14(int8_t) Load 341(i8)
|
||||
405: 14(int8_t) SNegate 404
|
||||
406: 52(i8vec2) CompositeConstruct 405 405
|
||||
409: 52(i8vec2) Select 408 406 403
|
||||
Store 338(i8v) 409
|
||||
410: 37(ptr) AccessChain 351(u8v) 277
|
||||
411: 36(int8_t) Load 410
|
||||
412: 37(ptr) AccessChain 351(u8v) 261
|
||||
413: 36(int8_t) Load 412
|
||||
414: 36(int8_t) Select 400 413 411
|
||||
Store 353(u8) 414
|
||||
415: 36(int8_t) Load 353(u8)
|
||||
416: 190(i8vec3) CompositeConstruct 415 415 415
|
||||
417: 36(int8_t) Load 353(u8)
|
||||
418: 36(int8_t) SNegate 417
|
||||
419: 190(i8vec3) CompositeConstruct 418 418 418
|
||||
422: 190(i8vec3) Select 421 419 416
|
||||
Store 351(u8v) 422
|
||||
424: 52(i8vec2) Load 338(i8v)
|
||||
425: 57(int16_t) Bitcast 424
|
||||
Store 423(i16) 425
|
||||
430: 427(i8vec4) Load 429(i8v4)
|
||||
431: 27(int) Bitcast 430
|
||||
Store 426(i32) 431
|
||||
435: 49(i8vec2) Load 434(u8v2)
|
||||
436: 64(int16_t) Bitcast 435
|
||||
Store 433(u16) 436
|
||||
441: 438(i8vec4) Load 440(u8v4)
|
||||
442: 17(int) Bitcast 441
|
||||
Store 437(u32) 442
|
||||
443: 57(int16_t) Load 423(i16)
|
||||
444: 52(i8vec2) Bitcast 443
|
||||
Store 338(i8v) 444
|
||||
445: 27(int) Load 426(i32)
|
||||
446: 427(i8vec4) Bitcast 445
|
||||
Store 429(i8v4) 446
|
||||
447: 64(int16_t) Load 433(u16)
|
||||
448: 49(i8vec2) Bitcast 447
|
||||
Store 434(u8v2) 448
|
||||
449: 17(int) Load 437(u32)
|
||||
450: 438(i8vec4) Bitcast 449
|
||||
Store 440(u8v4) 450
|
||||
453: 190(i8vec3) Load 351(u8v)
|
||||
454: 36(int8_t) Load 353(u8)
|
||||
455: 190(i8vec3) CompositeConstruct 454 454 454
|
||||
456: 420(bvec3) ULessThan 453 455
|
||||
Store 452(bv) 456
|
||||
457: 52(i8vec2) Load 338(i8v)
|
||||
458: 14(int8_t) Load 341(i8)
|
||||
459: 52(i8vec2) CompositeConstruct 458 458
|
||||
460: 172(bvec2) SLessThan 457 459
|
||||
461: 275(ptr) AccessChain 452(bv) 277
|
||||
462: 171(bool) CompositeExtract 460 0
|
||||
Store 461 462
|
||||
463: 275(ptr) AccessChain 452(bv) 261
|
||||
464: 171(bool) CompositeExtract 460 1
|
||||
Store 463 464
|
||||
465: 190(i8vec3) Load 351(u8v)
|
||||
466: 36(int8_t) Load 353(u8)
|
||||
467: 190(i8vec3) CompositeConstruct 466 466 466
|
||||
468: 420(bvec3) ULessThanEqual 465 467
|
||||
Store 452(bv) 468
|
||||
469: 52(i8vec2) Load 338(i8v)
|
||||
470: 14(int8_t) Load 341(i8)
|
||||
471: 52(i8vec2) CompositeConstruct 470 470
|
||||
472: 172(bvec2) SLessThanEqual 469 471
|
||||
473: 275(ptr) AccessChain 452(bv) 277
|
||||
474: 171(bool) CompositeExtract 472 0
|
||||
Store 473 474
|
||||
475: 275(ptr) AccessChain 452(bv) 261
|
||||
476: 171(bool) CompositeExtract 472 1
|
||||
352(i8v): 53(ptr) Variable Function
|
||||
355(i8): 15(ptr) Variable Function
|
||||
365(u8v): 200(ptr) Variable Function
|
||||
367(u8): 37(ptr) Variable Function
|
||||
437(i16): 248(ptr) Variable Function
|
||||
440(i32): 225(ptr) Variable Function
|
||||
443(i8v4): 442(ptr) Variable Function
|
||||
447(u16): 446(ptr) Variable Function
|
||||
448(u8v2): 50(ptr) Variable Function
|
||||
451(u32): 300(ptr) Variable Function
|
||||
454(u8v4): 453(ptr) Variable Function
|
||||
466(bv): 465(ptr) Variable Function
|
||||
353: 52(i8vec2) Load 352(i8v)
|
||||
354: 52(i8vec2) ExtInst 1(GLSL.std.450) 5(SAbs) 353
|
||||
Store 352(i8v) 354
|
||||
356: 14(int8_t) Load 355(i8)
|
||||
357: 14(int8_t) ExtInst 1(GLSL.std.450) 7(SSign) 356
|
||||
Store 355(i8) 357
|
||||
358: 52(i8vec2) Load 352(i8v)
|
||||
359: 14(int8_t) Load 355(i8)
|
||||
360: 52(i8vec2) CompositeConstruct 359 359
|
||||
361: 52(i8vec2) ExtInst 1(GLSL.std.450) 39(SMin) 358 360
|
||||
Store 352(i8v) 361
|
||||
362: 52(i8vec2) Load 352(i8v)
|
||||
364: 52(i8vec2) ExtInst 1(GLSL.std.450) 39(SMin) 362 363
|
||||
Store 352(i8v) 364
|
||||
366: 199(i8vec3) Load 365(u8v)
|
||||
368: 36(int8_t) Load 367(u8)
|
||||
369: 199(i8vec3) CompositeConstruct 368 368 368
|
||||
370: 199(i8vec3) ExtInst 1(GLSL.std.450) 38(UMin) 366 369
|
||||
Store 365(u8v) 370
|
||||
371: 199(i8vec3) Load 365(u8v)
|
||||
373: 199(i8vec3) ExtInst 1(GLSL.std.450) 38(UMin) 371 372
|
||||
Store 365(u8v) 373
|
||||
374: 52(i8vec2) Load 352(i8v)
|
||||
375: 14(int8_t) Load 355(i8)
|
||||
376: 52(i8vec2) CompositeConstruct 375 375
|
||||
377: 52(i8vec2) ExtInst 1(GLSL.std.450) 42(SMax) 374 376
|
||||
Store 352(i8v) 377
|
||||
378: 52(i8vec2) Load 352(i8v)
|
||||
379: 52(i8vec2) ExtInst 1(GLSL.std.450) 42(SMax) 378 363
|
||||
Store 352(i8v) 379
|
||||
380: 199(i8vec3) Load 365(u8v)
|
||||
381: 36(int8_t) Load 367(u8)
|
||||
382: 199(i8vec3) CompositeConstruct 381 381 381
|
||||
383: 199(i8vec3) ExtInst 1(GLSL.std.450) 41(UMax) 380 382
|
||||
Store 365(u8v) 383
|
||||
384: 199(i8vec3) Load 365(u8v)
|
||||
385: 199(i8vec3) ExtInst 1(GLSL.std.450) 41(UMax) 384 372
|
||||
Store 365(u8v) 385
|
||||
386: 52(i8vec2) Load 352(i8v)
|
||||
387: 14(int8_t) Load 355(i8)
|
||||
388: 14(int8_t) SNegate 387
|
||||
389: 14(int8_t) Load 355(i8)
|
||||
390: 52(i8vec2) CompositeConstruct 388 388
|
||||
391: 52(i8vec2) CompositeConstruct 389 389
|
||||
392: 52(i8vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 386 390 391
|
||||
Store 352(i8v) 392
|
||||
393: 52(i8vec2) Load 352(i8v)
|
||||
394: 52(i8vec2) Load 352(i8v)
|
||||
395: 52(i8vec2) SNegate 394
|
||||
396: 52(i8vec2) Load 352(i8v)
|
||||
397: 52(i8vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 393 395 396
|
||||
Store 352(i8v) 397
|
||||
398: 199(i8vec3) Load 365(u8v)
|
||||
399: 36(int8_t) Load 367(u8)
|
||||
400: 36(int8_t) SNegate 399
|
||||
401: 36(int8_t) Load 367(u8)
|
||||
402: 199(i8vec3) CompositeConstruct 400 400 400
|
||||
403: 199(i8vec3) CompositeConstruct 401 401 401
|
||||
404: 199(i8vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 398 402 403
|
||||
Store 365(u8v) 404
|
||||
405: 199(i8vec3) Load 365(u8v)
|
||||
406: 199(i8vec3) Load 365(u8v)
|
||||
407: 199(i8vec3) SNegate 406
|
||||
408: 199(i8vec3) Load 365(u8v)
|
||||
409: 199(i8vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 405 407 408
|
||||
Store 365(u8v) 409
|
||||
410: 15(ptr) AccessChain 352(i8v) 286
|
||||
411: 14(int8_t) Load 410
|
||||
412: 15(ptr) AccessChain 352(i8v) 270
|
||||
413: 14(int8_t) Load 412
|
||||
415: 14(int8_t) Select 414 413 411
|
||||
Store 355(i8) 415
|
||||
416: 14(int8_t) Load 355(i8)
|
||||
417: 52(i8vec2) CompositeConstruct 416 416
|
||||
418: 14(int8_t) Load 355(i8)
|
||||
419: 14(int8_t) SNegate 418
|
||||
420: 52(i8vec2) CompositeConstruct 419 419
|
||||
423: 52(i8vec2) Select 422 420 417
|
||||
Store 352(i8v) 423
|
||||
424: 37(ptr) AccessChain 365(u8v) 286
|
||||
425: 36(int8_t) Load 424
|
||||
426: 37(ptr) AccessChain 365(u8v) 270
|
||||
427: 36(int8_t) Load 426
|
||||
428: 36(int8_t) Select 414 427 425
|
||||
Store 367(u8) 428
|
||||
429: 36(int8_t) Load 367(u8)
|
||||
430: 199(i8vec3) CompositeConstruct 429 429 429
|
||||
431: 36(int8_t) Load 367(u8)
|
||||
432: 36(int8_t) SNegate 431
|
||||
433: 199(i8vec3) CompositeConstruct 432 432 432
|
||||
436: 199(i8vec3) Select 435 433 430
|
||||
Store 365(u8v) 436
|
||||
438: 52(i8vec2) Load 352(i8v)
|
||||
439: 57(int16_t) Bitcast 438
|
||||
Store 437(i16) 439
|
||||
444: 441(i8vec4) Load 443(i8v4)
|
||||
445: 27(int) Bitcast 444
|
||||
Store 440(i32) 445
|
||||
449: 49(i8vec2) Load 448(u8v2)
|
||||
450: 64(int16_t) Bitcast 449
|
||||
Store 447(u16) 450
|
||||
455: 452(i8vec4) Load 454(u8v4)
|
||||
456: 17(int) Bitcast 455
|
||||
Store 451(u32) 456
|
||||
457: 57(int16_t) Load 437(i16)
|
||||
458: 52(i8vec2) Bitcast 457
|
||||
Store 352(i8v) 458
|
||||
459: 27(int) Load 440(i32)
|
||||
460: 441(i8vec4) Bitcast 459
|
||||
Store 443(i8v4) 460
|
||||
461: 64(int16_t) Load 447(u16)
|
||||
462: 49(i8vec2) Bitcast 461
|
||||
Store 448(u8v2) 462
|
||||
463: 17(int) Load 451(u32)
|
||||
464: 452(i8vec4) Bitcast 463
|
||||
Store 454(u8v4) 464
|
||||
467: 199(i8vec3) Load 365(u8v)
|
||||
468: 36(int8_t) Load 367(u8)
|
||||
469: 199(i8vec3) CompositeConstruct 468 468 468
|
||||
470: 434(bvec3) ULessThan 467 469
|
||||
Store 466(bv) 470
|
||||
471: 52(i8vec2) Load 352(i8v)
|
||||
472: 14(int8_t) Load 355(i8)
|
||||
473: 52(i8vec2) CompositeConstruct 472 472
|
||||
474: 172(bvec2) SLessThan 471 473
|
||||
475: 284(ptr) AccessChain 466(bv) 286
|
||||
476: 171(bool) CompositeExtract 474 0
|
||||
Store 475 476
|
||||
477: 190(i8vec3) Load 351(u8v)
|
||||
478: 36(int8_t) Load 353(u8)
|
||||
479: 190(i8vec3) CompositeConstruct 478 478 478
|
||||
480: 420(bvec3) UGreaterThan 477 479
|
||||
Store 452(bv) 480
|
||||
481: 52(i8vec2) Load 338(i8v)
|
||||
482: 14(int8_t) Load 341(i8)
|
||||
483: 52(i8vec2) CompositeConstruct 482 482
|
||||
484: 172(bvec2) SGreaterThan 481 483
|
||||
485: 275(ptr) AccessChain 452(bv) 277
|
||||
486: 171(bool) CompositeExtract 484 0
|
||||
Store 485 486
|
||||
487: 275(ptr) AccessChain 452(bv) 261
|
||||
488: 171(bool) CompositeExtract 484 1
|
||||
477: 284(ptr) AccessChain 466(bv) 270
|
||||
478: 171(bool) CompositeExtract 474 1
|
||||
Store 477 478
|
||||
479: 199(i8vec3) Load 365(u8v)
|
||||
480: 36(int8_t) Load 367(u8)
|
||||
481: 199(i8vec3) CompositeConstruct 480 480 480
|
||||
482: 434(bvec3) ULessThanEqual 479 481
|
||||
Store 466(bv) 482
|
||||
483: 52(i8vec2) Load 352(i8v)
|
||||
484: 14(int8_t) Load 355(i8)
|
||||
485: 52(i8vec2) CompositeConstruct 484 484
|
||||
486: 172(bvec2) SLessThanEqual 483 485
|
||||
487: 284(ptr) AccessChain 466(bv) 286
|
||||
488: 171(bool) CompositeExtract 486 0
|
||||
Store 487 488
|
||||
489: 190(i8vec3) Load 351(u8v)
|
||||
490: 36(int8_t) Load 353(u8)
|
||||
491: 190(i8vec3) CompositeConstruct 490 490 490
|
||||
492: 420(bvec3) UGreaterThanEqual 489 491
|
||||
Store 452(bv) 492
|
||||
493: 52(i8vec2) Load 338(i8v)
|
||||
494: 14(int8_t) Load 341(i8)
|
||||
495: 52(i8vec2) CompositeConstruct 494 494
|
||||
496: 172(bvec2) SGreaterThanEqual 493 495
|
||||
497: 275(ptr) AccessChain 452(bv) 277
|
||||
498: 171(bool) CompositeExtract 496 0
|
||||
Store 497 498
|
||||
499: 275(ptr) AccessChain 452(bv) 261
|
||||
500: 171(bool) CompositeExtract 496 1
|
||||
489: 284(ptr) AccessChain 466(bv) 270
|
||||
490: 171(bool) CompositeExtract 486 1
|
||||
Store 489 490
|
||||
491: 199(i8vec3) Load 365(u8v)
|
||||
492: 36(int8_t) Load 367(u8)
|
||||
493: 199(i8vec3) CompositeConstruct 492 492 492
|
||||
494: 434(bvec3) UGreaterThan 491 493
|
||||
Store 466(bv) 494
|
||||
495: 52(i8vec2) Load 352(i8v)
|
||||
496: 14(int8_t) Load 355(i8)
|
||||
497: 52(i8vec2) CompositeConstruct 496 496
|
||||
498: 172(bvec2) SGreaterThan 495 497
|
||||
499: 284(ptr) AccessChain 466(bv) 286
|
||||
500: 171(bool) CompositeExtract 498 0
|
||||
Store 499 500
|
||||
501: 190(i8vec3) Load 351(u8v)
|
||||
502: 36(int8_t) Load 353(u8)
|
||||
503: 190(i8vec3) CompositeConstruct 502 502 502
|
||||
504: 420(bvec3) IEqual 501 503
|
||||
Store 452(bv) 504
|
||||
505: 52(i8vec2) Load 338(i8v)
|
||||
506: 14(int8_t) Load 341(i8)
|
||||
507: 52(i8vec2) CompositeConstruct 506 506
|
||||
508: 172(bvec2) IEqual 505 507
|
||||
509: 275(ptr) AccessChain 452(bv) 277
|
||||
510: 171(bool) CompositeExtract 508 0
|
||||
Store 509 510
|
||||
511: 275(ptr) AccessChain 452(bv) 261
|
||||
512: 171(bool) CompositeExtract 508 1
|
||||
501: 284(ptr) AccessChain 466(bv) 270
|
||||
502: 171(bool) CompositeExtract 498 1
|
||||
Store 501 502
|
||||
503: 199(i8vec3) Load 365(u8v)
|
||||
504: 36(int8_t) Load 367(u8)
|
||||
505: 199(i8vec3) CompositeConstruct 504 504 504
|
||||
506: 434(bvec3) UGreaterThanEqual 503 505
|
||||
Store 466(bv) 506
|
||||
507: 52(i8vec2) Load 352(i8v)
|
||||
508: 14(int8_t) Load 355(i8)
|
||||
509: 52(i8vec2) CompositeConstruct 508 508
|
||||
510: 172(bvec2) SGreaterThanEqual 507 509
|
||||
511: 284(ptr) AccessChain 466(bv) 286
|
||||
512: 171(bool) CompositeExtract 510 0
|
||||
Store 511 512
|
||||
513: 190(i8vec3) Load 351(u8v)
|
||||
514: 36(int8_t) Load 353(u8)
|
||||
515: 190(i8vec3) CompositeConstruct 514 514 514
|
||||
516: 420(bvec3) INotEqual 513 515
|
||||
Store 452(bv) 516
|
||||
517: 52(i8vec2) Load 338(i8v)
|
||||
518: 14(int8_t) Load 341(i8)
|
||||
519: 52(i8vec2) CompositeConstruct 518 518
|
||||
520: 172(bvec2) INotEqual 517 519
|
||||
521: 275(ptr) AccessChain 452(bv) 277
|
||||
522: 171(bool) CompositeExtract 520 0
|
||||
Store 521 522
|
||||
523: 275(ptr) AccessChain 452(bv) 261
|
||||
524: 171(bool) CompositeExtract 520 1
|
||||
513: 284(ptr) AccessChain 466(bv) 270
|
||||
514: 171(bool) CompositeExtract 510 1
|
||||
Store 513 514
|
||||
515: 199(i8vec3) Load 365(u8v)
|
||||
516: 36(int8_t) Load 367(u8)
|
||||
517: 199(i8vec3) CompositeConstruct 516 516 516
|
||||
518: 434(bvec3) IEqual 515 517
|
||||
Store 466(bv) 518
|
||||
519: 52(i8vec2) Load 352(i8v)
|
||||
520: 14(int8_t) Load 355(i8)
|
||||
521: 52(i8vec2) CompositeConstruct 520 520
|
||||
522: 172(bvec2) IEqual 519 521
|
||||
523: 284(ptr) AccessChain 466(bv) 286
|
||||
524: 171(bool) CompositeExtract 522 0
|
||||
Store 523 524
|
||||
525: 284(ptr) AccessChain 466(bv) 270
|
||||
526: 171(bool) CompositeExtract 522 1
|
||||
Store 525 526
|
||||
527: 199(i8vec3) Load 365(u8v)
|
||||
528: 36(int8_t) Load 367(u8)
|
||||
529: 199(i8vec3) CompositeConstruct 528 528 528
|
||||
530: 434(bvec3) INotEqual 527 529
|
||||
Store 466(bv) 530
|
||||
531: 52(i8vec2) Load 352(i8v)
|
||||
532: 14(int8_t) Load 355(i8)
|
||||
533: 52(i8vec2) CompositeConstruct 532 532
|
||||
534: 172(bvec2) INotEqual 531 533
|
||||
535: 284(ptr) AccessChain 466(bv) 286
|
||||
536: 171(bool) CompositeExtract 534 0
|
||||
Store 535 536
|
||||
537: 284(ptr) AccessChain 466(bv) 270
|
||||
538: 171(bool) CompositeExtract 534 1
|
||||
Store 537 538
|
||||
Return
|
||||
FunctionEnd
|
||||
|
@ -116,6 +116,8 @@ void operators()
|
||||
int32_t i;
|
||||
int64_t i64;
|
||||
bool b;
|
||||
float f;
|
||||
float arr[4] = {1.0, 2.0, 3.0, 4.0};
|
||||
|
||||
// Unary
|
||||
u16v++;
|
||||
@ -163,6 +165,9 @@ void operators()
|
||||
uv = u16v & uv;
|
||||
uv ^= i16;
|
||||
u16v = u16v ^ i16;
|
||||
|
||||
// Index
|
||||
f = arr[i16];
|
||||
}
|
||||
|
||||
void builtinFuncs()
|
||||
|
@ -117,6 +117,8 @@ void operators()
|
||||
int32_t i;
|
||||
int16_t i16;
|
||||
bool b;
|
||||
float arr[4] = {1.0, 2.0, 3.0, 4.0};
|
||||
float f;
|
||||
|
||||
// Unary
|
||||
u8v++;
|
||||
@ -164,6 +166,9 @@ void operators()
|
||||
uv = u8v & uv;
|
||||
uv ^= i8;
|
||||
u8v = u8v ^ i8;
|
||||
|
||||
// Index
|
||||
f = arr[i8];
|
||||
}
|
||||
|
||||
void builtinFuncs()
|
||||
|
@ -3029,11 +3029,14 @@ void TParseContext::constantValueCheck(TIntermTyped* node, const char* token)
|
||||
|
||||
//
|
||||
// Both test, and if necessary spit out an error, to see if the node is really
|
||||
// an integer.
|
||||
// a 32-bit integer or can implicitly convert to one.
|
||||
//
|
||||
void TParseContext::integerCheck(const TIntermTyped* node, const char* token)
|
||||
{
|
||||
if ((node->getBasicType() == EbtInt || node->getBasicType() == EbtUint) && node->isScalar())
|
||||
auto from_type = node->getBasicType();
|
||||
if ((from_type == EbtInt || from_type == EbtUint ||
|
||||
intermediate.canImplicitlyPromote(from_type, EbtInt, EOpNull) ||
|
||||
intermediate.canImplicitlyPromote(from_type, EbtUint, EOpNull)) && node->isScalar())
|
||||
return;
|
||||
|
||||
error(node->getLoc(), "scalar integer expression required", token, "");
|
||||
|
Loading…
Reference in New Issue
Block a user