spv.explicittypes.frag
error: SPIRV-Tools Validation Errors
error: Capability Float16 is not allowed by Vulkan 1.1 specification (or requires extension)
  OpCapability Float16

// Module Version 10300
// Generated by (magic number): 80007
// Id's are bound by 576

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