spv.int8.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 518

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