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