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