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

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

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