spv.float16.frag
Warning, version 450 is not yet complete; most version-specific features are present, but some are missing.


Linked fragment stage:


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

                              Capability Shader
                              Capability Float16
                              Capability Float64
                              Capability Int64
                              Capability DerivativeControl
                              Capability InterpolationFunction
                              Extension  "SPV_AMD_gpu_shader_half_float"
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 465
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 450
                              SourceExtension  "GL_AMD_gpu_shader_half_float"
                              SourceExtension  "GL_ARB_gpu_shader_int64"
                              Name 4  "main"
                              Name 6  "literal("
                              Name 8  "operators("
                              Name 10  "typeCast("
                              Name 12  "builtinAngleTrigFuncs("
                              Name 14  "builtinExpFuncs("
                              Name 16  "builtinCommonFuncs("
                              Name 18  "builtinPackUnpackFuncs("
                              Name 20  "builtinGeometryFuncs("
                              Name 22  "builtinMatrixFuncs("
                              Name 24  "builtinVecRelFuncs("
                              Name 26  "builtinFragProcFuncs("
                              Name 31  "f16v"
                              Name 42  "f16v"
                              Name 64  "f16m"
                              Name 87  "f16"
                              Name 111  "b"
                              Name 153  "f16v"
                              Name 156  "bv"
                              Name 167  "fv"
                              Name 175  "dv"
                              Name 186  "iv"
                              Name 193  "uv"
                              Name 201  "i64v"
                              Name 209  "u64v"
                              Name 216  "f16v2"
                              Name 217  "f16v1"
                              Name 249  "f16v2"
                              Name 250  "f16v1"
                              Name 266  "f16v2"
                              Name 267  "f16v1"
                              Name 288  "f16"
                              Name 292  "f16v3"
                              Name 332  "bv"
                              Name 353  "b"
                              Name 363  "iv"
                              Name 364  "ResType"
                              Name 372  "u"
                              Name 373  "f16v"
                              Name 378  "f16"
                              Name 379  "f16v1"
                              Name 383  "f16v2"
                              Name 389  "f16v3"
                              Name 408  "f16m3"
                              Name 409  "f16m1"
                              Name 411  "f16m2"
                              Name 420  "f16v1"
                              Name 422  "f16v2"
                              Name 427  "f16m4"
                              Name 430  "f16"
                              Name 433  "f16m5"
                              Name 438  "f16m6"
                              Name 439  "f16m7"
                              Name 442  "bv"
                              Name 443  "f16v1"
                              Name 445  "f16v2"
                              Name 463  "f16v"
                              Name 465  "if16v"
                              Name 514  "S"
                              MemberName 514(S) 0  "x"
                              MemberName 514(S) 1  "y"
                              MemberName 514(S) 2  "z"
                              Name 516  "B1"
                              MemberName 516(B1) 0  "a"
                              MemberName 516(B1) 1  "b"
                              MemberName 516(B1) 2  "c"
                              MemberName 516(B1) 3  "d"
                              MemberName 516(B1) 4  "e"
                              MemberName 516(B1) 5  "f"
                              MemberName 516(B1) 6  "g"
                              MemberName 516(B1) 7  "h"
                              Name 518  ""
                              Name 521  "S"
                              MemberName 521(S) 0  "x"
                              MemberName 521(S) 1  "y"
                              MemberName 521(S) 2  "z"
                              Name 523  "B2"
                              MemberName 523(B2) 0  "o"
                              MemberName 523(B2) 1  "p"
                              MemberName 523(B2) 2  "q"
                              MemberName 523(B2) 3  "r"
                              MemberName 523(B2) 4  "s"
                              MemberName 523(B2) 5  "t"
                              MemberName 523(B2) 6  "u"
                              MemberName 523(B2) 7  "v"
                              Name 525  ""
                              Decorate 512 ArrayStride 16
                              Decorate 513 ArrayStride 32
                              MemberDecorate 514(S) 0 Offset 0
                              MemberDecorate 514(S) 1 Offset 4
                              MemberDecorate 514(S) 2 Offset 8
                              Decorate 515 ArrayStride 16
                              MemberDecorate 516(B1) 0 Offset 0
                              MemberDecorate 516(B1) 1 Offset 4
                              MemberDecorate 516(B1) 2 Offset 8
                              MemberDecorate 516(B1) 3 Offset 16
                              MemberDecorate 516(B1) 4 ColMajor
                              MemberDecorate 516(B1) 4 Offset 48
                              MemberDecorate 516(B1) 4 MatrixStride 16
                              MemberDecorate 516(B1) 5 ColMajor
                              MemberDecorate 516(B1) 5 Offset 80
                              MemberDecorate 516(B1) 5 MatrixStride 16
                              MemberDecorate 516(B1) 6 Offset 144
                              MemberDecorate 516(B1) 7 Offset 160
                              Decorate 516(B1) Block
                              Decorate 518 DescriptorSet 0
                              Decorate 519 ArrayStride 2
                              Decorate 520 ArrayStride 12
                              MemberDecorate 521(S) 0 Offset 0
                              MemberDecorate 521(S) 1 Offset 4
                              MemberDecorate 521(S) 2 Offset 8
                              Decorate 522 ArrayStride 16
                              MemberDecorate 523(B2) 0 Offset 0
                              MemberDecorate 523(B2) 1 Offset 4
                              MemberDecorate 523(B2) 2 Offset 8
                              MemberDecorate 523(B2) 3 Offset 14
                              MemberDecorate 523(B2) 4 RowMajor
                              MemberDecorate 523(B2) 4 Offset 20
                              MemberDecorate 523(B2) 4 MatrixStride 4
                              MemberDecorate 523(B2) 5 RowMajor
                              MemberDecorate 523(B2) 5 Offset 32
                              MemberDecorate 523(B2) 5 MatrixStride 4
                              MemberDecorate 523(B2) 6 Offset 56
                              MemberDecorate 523(B2) 7 Offset 72
                              Decorate 523(B2) BufferBlock
                              Decorate 525 DescriptorSet 0
                              Decorate 526 SpecId 100
                              Decorate 527 SpecId 101
                              Decorate 528 SpecId 102
               2:             TypeVoid
               3:             TypeFunction 2
              28:             TypeFloat 16
              29:             TypeVector 28(float) 2
              30:             TypePointer Function 29(fvec2)
              32:   28(float) Constant 16
              33:             TypeInt 32 0
              34:     33(int) Constant 0
              35:             TypePointer Function 28(float)
              37:   28(float) Constant 46080
              38:   28(float) Constant 10158
              39:   29(fvec2) ConstantComposite 37 38
              56:   28(float) Constant 15360
              62:             TypeMatrix 29(fvec2) 2
              63:             TypePointer Function 62
              90:     33(int) Constant 1
             109:             TypeBool
             110:             TypePointer Function 109(bool)
             151:             TypeVector 28(float) 3
             152:             TypePointer Function 151(fvec3)
             154:             TypeVector 109(bool) 3
             155:             TypePointer Function 154(bvec3)
             158:   28(float) Constant 0
             159:  151(fvec3) ConstantComposite 158 158 158
             160:  151(fvec3) ConstantComposite 56 56 56
             164:             TypeFloat 32
             165:             TypeVector 164(float) 3
             166:             TypePointer Function 165(fvec3)
             172:             TypeFloat 64
             173:             TypeVector 172(float) 3
             174:             TypePointer Function 173(fvec3)
             183:             TypeInt 32 1
             184:             TypeVector 183(int) 3
             185:             TypePointer Function 184(ivec3)
             191:             TypeVector 33(int) 3
             192:             TypePointer Function 191(ivec3)
             198:             TypeInt 64 1
             199:             TypeVector 198(int) 3
             200:             TypePointer Function 199(ivec3)
             206:             TypeInt 64 0
             207:             TypeVector 206(int) 3
             208:             TypePointer Function 207(ivec3)
             214:             TypeVector 28(float) 4
             215:             TypePointer Function 214(fvec4)
    364(ResType):             TypeStruct 151(fvec3) 184(ivec3)
             371:             TypePointer Function 33(int)
             406:             TypeMatrix 151(fvec3) 2
             407:             TypePointer Function 406
             425:             TypeMatrix 29(fvec2) 3
             426:             TypePointer Function 425
             431:             TypeMatrix 151(fvec3) 3
             432:             TypePointer Function 431
             436:             TypeMatrix 214(fvec4) 4
             437:             TypePointer Function 436
             464:             TypePointer Input 151(fvec3)
      465(if16v):    464(ptr) Variable Input
             466:             TypePointer Input 28(float)
             503:    183(int) Constant 1
             508:   28(float) Constant 14336
             509:   29(fvec2) ConstantComposite 508 508
             511:     33(int) Constant 2
             512:             TypeArray 28(float) 511
             513:             TypeArray 406 511
          514(S):             TypeStruct 28(float) 29(fvec2) 151(fvec3)
             515:             TypeArray 514(S) 511
         516(B1):             TypeStruct 28(float) 29(fvec2) 151(fvec3) 512 406 513 514(S) 515
             517:             TypePointer Uniform 516(B1)
             518:    517(ptr) Variable Uniform
             519:             TypeArray 28(float) 511
             520:             TypeArray 406 511
          521(S):             TypeStruct 28(float) 29(fvec2) 151(fvec3)
             522:             TypeArray 521(S) 511
         523(B2):             TypeStruct 28(float) 29(fvec2) 151(fvec3) 519 406 520 521(S) 522
             524:             TypePointer Uniform 523(B2)
             525:    524(ptr) Variable Uniform
             526:   28(float) SpecConstant 12288
             527:  164(float) SpecConstant 1048576000
             528:  172(float) SpecConstant 0 1071644672
             529:  164(float) SpecConstantOp 115 526
             530:  164(float) SpecConstantOp 115 526
             531:  172(float) SpecConstantOp 115 530
             532:   28(float) SpecConstantOp 115 527
             533:   28(float) SpecConstantOp 115 528
         4(main):           2 Function None 3
               5:             Label
                              Return
                              FunctionEnd
     6(literal():           2 Function None 3
               7:             Label
        31(f16v):     30(ptr) Variable Function
              36:     35(ptr) AccessChain 31(f16v) 34
                              Store 36 32
              40:   29(fvec2) Load 31(f16v)
              41:   29(fvec2) FAdd 40 39
                              Store 31(f16v) 41
                              Return
                              FunctionEnd
   8(operators():           2 Function None 3
               9:             Label
        42(f16v):     30(ptr) Variable Function
        64(f16m):     63(ptr) Variable Function
         87(f16):     35(ptr) Variable Function
          111(b):    110(ptr) Variable Function
              43:   29(fvec2) Load 42(f16v)
              44:   29(fvec2) Load 42(f16v)
              45:   29(fvec2) FAdd 44 43
                              Store 42(f16v) 45
              46:   29(fvec2) Load 42(f16v)
              47:   29(fvec2) Load 42(f16v)
              48:   29(fvec2) FSub 47 46
                              Store 42(f16v) 48
              49:   29(fvec2) Load 42(f16v)
              50:   29(fvec2) Load 42(f16v)
              51:   29(fvec2) FMul 50 49
                              Store 42(f16v) 51
              52:   29(fvec2) Load 42(f16v)
              53:   29(fvec2) Load 42(f16v)
              54:   29(fvec2) FDiv 53 52
                              Store 42(f16v) 54
              55:   29(fvec2) Load 42(f16v)
              57:   29(fvec2) CompositeConstruct 56 56
              58:   29(fvec2) FAdd 55 57
                              Store 42(f16v) 58
              59:   29(fvec2) Load 42(f16v)
              60:   29(fvec2) CompositeConstruct 56 56
              61:   29(fvec2) FSub 59 60
                              Store 42(f16v) 61
              65:          62 Load 64(f16m)
              66:   29(fvec2) CompositeConstruct 56 56
              67:   29(fvec2) CompositeExtract 65 0
              68:   29(fvec2) FAdd 67 66
              69:   29(fvec2) CompositeExtract 65 1
              70:   29(fvec2) FAdd 69 66
              71:          62 CompositeConstruct 68 70
                              Store 64(f16m) 71
              72:          62 Load 64(f16m)
              73:   29(fvec2) CompositeConstruct 56 56
              74:   29(fvec2) CompositeExtract 72 0
              75:   29(fvec2) FSub 74 73
              76:   29(fvec2) CompositeExtract 72 1
              77:   29(fvec2) FSub 76 73
              78:          62 CompositeConstruct 75 77
                              Store 64(f16m) 78
              79:   29(fvec2) Load 42(f16v)
              80:   29(fvec2) FNegate 79
                              Store 42(f16v) 80
              81:          62 Load 64(f16m)
              82:   29(fvec2) CompositeExtract 81 0
              83:   29(fvec2) FNegate 82
              84:   29(fvec2) CompositeExtract 81 1
              85:   29(fvec2) FNegate 84
              86:          62 CompositeConstruct 83 85
                              Store 64(f16m) 86
              88:     35(ptr) AccessChain 42(f16v) 34
              89:   28(float) Load 88
              91:     35(ptr) AccessChain 42(f16v) 90
              92:   28(float) Load 91
              93:   28(float) FAdd 89 92
                              Store 87(f16) 93
              94:     35(ptr) AccessChain 42(f16v) 34
              95:   28(float) Load 94
              96:     35(ptr) AccessChain 42(f16v) 90
              97:   28(float) Load 96
              98:   28(float) FSub 95 97
                              Store 87(f16) 98
              99:     35(ptr) AccessChain 42(f16v) 34
             100:   28(float) Load 99
             101:     35(ptr) AccessChain 42(f16v) 90
             102:   28(float) Load 101
             103:   28(float) FMul 100 102
                              Store 87(f16) 103
             104:     35(ptr) AccessChain 42(f16v) 34
             105:   28(float) Load 104
             106:     35(ptr) AccessChain 42(f16v) 90
             107:   28(float) Load 106
             108:   28(float) FDiv 105 107
                              Store 87(f16) 108
             112:     35(ptr) AccessChain 42(f16v) 34
             113:   28(float) Load 112
             114:   28(float) Load 87(f16)
             115:   109(bool) FOrdNotEqual 113 114
                              Store 111(b) 115
             116:     35(ptr) AccessChain 42(f16v) 90
             117:   28(float) Load 116
             118:   28(float) Load 87(f16)
             119:   109(bool) FOrdEqual 117 118
                              Store 111(b) 119
             120:     35(ptr) AccessChain 42(f16v) 34
             121:   28(float) Load 120
             122:   28(float) Load 87(f16)
             123:   109(bool) FOrdGreaterThan 121 122
                              Store 111(b) 123
             124:     35(ptr) AccessChain 42(f16v) 90
             125:   28(float) Load 124
             126:   28(float) Load 87(f16)
             127:   109(bool) FOrdLessThan 125 126
                              Store 111(b) 127
             128:     35(ptr) AccessChain 42(f16v) 34
             129:   28(float) Load 128
             130:   28(float) Load 87(f16)
             131:   109(bool) FOrdGreaterThanEqual 129 130
                              Store 111(b) 131
             132:     35(ptr) AccessChain 42(f16v) 90
             133:   28(float) Load 132
             134:   28(float) Load 87(f16)
             135:   109(bool) FOrdLessThanEqual 133 134
                              Store 111(b) 135
             136:   29(fvec2) Load 42(f16v)
             137:   28(float) Load 87(f16)
             138:   29(fvec2) VectorTimesScalar 136 137
                              Store 42(f16v) 138
             139:          62 Load 64(f16m)
             140:   28(float) Load 87(f16)
             141:          62 MatrixTimesScalar 139 140
                              Store 64(f16m) 141
             142:          62 Load 64(f16m)
             143:   29(fvec2) Load 42(f16v)
             144:   29(fvec2) MatrixTimesVector 142 143
                              Store 42(f16v) 144
             145:   29(fvec2) Load 42(f16v)
             146:          62 Load 64(f16m)
             147:   29(fvec2) VectorTimesMatrix 145 146
                              Store 42(f16v) 147
             148:          62 Load 64(f16m)
             149:          62 Load 64(f16m)
             150:          62 MatrixTimesMatrix 148 149
                              Store 64(f16m) 150
                              Return
                              FunctionEnd
   10(typeCast():           2 Function None 3
              11:             Label
       153(f16v):    152(ptr) Variable Function
         156(bv):    155(ptr) Variable Function
         167(fv):    166(ptr) Variable Function
         175(dv):    174(ptr) Variable Function
         186(iv):    185(ptr) Variable Function
         193(uv):    192(ptr) Variable Function
       201(i64v):    200(ptr) Variable Function
       209(u64v):    208(ptr) Variable Function
             157:  154(bvec3) Load 156(bv)
             161:  151(fvec3) Select 157 160 159
                              Store 153(f16v) 161
             162:  151(fvec3) Load 153(f16v)
             163:  154(bvec3) FOrdNotEqual 162 159
                              Store 156(bv) 163
             168:  165(fvec3) Load 167(fv)
             169:  151(fvec3) FConvert 168
                              Store 153(f16v) 169
             170:  151(fvec3) Load 153(f16v)
             171:  165(fvec3) FConvert 170
                              Store 167(fv) 171
             176:  173(fvec3) Load 175(dv)
             177:  151(fvec3) FConvert 176
                              Store 153(f16v) 177
             178:  173(fvec3) Load 175(dv)
             179:  172(float) CompositeExtract 178 0
             180:  172(float) CompositeExtract 178 1
             181:  172(float) CompositeExtract 178 2
             182:  173(fvec3) CompositeConstruct 179 180 181
                              Store 175(dv) 182
             187:  184(ivec3) Load 186(iv)
             188:  151(fvec3) ConvertSToF 187
                              Store 153(f16v) 188
             189:  151(fvec3) Load 153(f16v)
             190:  184(ivec3) ConvertFToS 189
                              Store 186(iv) 190
             194:  191(ivec3) Load 193(uv)
             195:  151(fvec3) ConvertUToF 194
                              Store 153(f16v) 195
             196:  151(fvec3) Load 153(f16v)
             197:  191(ivec3) ConvertFToU 196
                              Store 193(uv) 197
             202:  199(ivec3) Load 201(i64v)
             203:  151(fvec3) ConvertSToF 202
                              Store 153(f16v) 203
             204:  151(fvec3) Load 153(f16v)
             205:  199(ivec3) ConvertFToS 204
                              Store 201(i64v) 205
             210:  207(ivec3) Load 209(u64v)
             211:  151(fvec3) ConvertUToF 210
                              Store 153(f16v) 211
             212:  151(fvec3) Load 153(f16v)
             213:  207(ivec3) ConvertFToU 212
                              Store 209(u64v) 213
                              Return
                              FunctionEnd
12(builtinAngleTrigFuncs():           2 Function None 3
              13:             Label
      216(f16v2):    215(ptr) Variable Function
      217(f16v1):    215(ptr) Variable Function
             218:  214(fvec4) Load 217(f16v1)
             219:  214(fvec4) ExtInst 1(GLSL.std.450) 11(Radians) 218
                              Store 216(f16v2) 219
             220:  214(fvec4) Load 217(f16v1)
             221:  214(fvec4) ExtInst 1(GLSL.std.450) 12(Degrees) 220
                              Store 216(f16v2) 221
             222:  214(fvec4) Load 217(f16v1)
             223:  214(fvec4) ExtInst 1(GLSL.std.450) 13(Sin) 222
                              Store 216(f16v2) 223
             224:  214(fvec4) Load 217(f16v1)
             225:  214(fvec4) ExtInst 1(GLSL.std.450) 14(Cos) 224
                              Store 216(f16v2) 225
             226:  214(fvec4) Load 217(f16v1)
             227:  214(fvec4) ExtInst 1(GLSL.std.450) 15(Tan) 226
                              Store 216(f16v2) 227
             228:  214(fvec4) Load 217(f16v1)
             229:  214(fvec4) ExtInst 1(GLSL.std.450) 16(Asin) 228
                              Store 216(f16v2) 229
             230:  214(fvec4) Load 217(f16v1)
             231:  214(fvec4) ExtInst 1(GLSL.std.450) 17(Acos) 230
                              Store 216(f16v2) 231
             232:  214(fvec4) Load 217(f16v1)
             233:  214(fvec4) Load 216(f16v2)
             234:  214(fvec4) ExtInst 1(GLSL.std.450) 25(Atan2) 232 233
                              Store 216(f16v2) 234
             235:  214(fvec4) Load 217(f16v1)
             236:  214(fvec4) ExtInst 1(GLSL.std.450) 18(Atan) 235
                              Store 216(f16v2) 236
             237:  214(fvec4) Load 217(f16v1)
             238:  214(fvec4) ExtInst 1(GLSL.std.450) 19(Sinh) 237
                              Store 216(f16v2) 238
             239:  214(fvec4) Load 217(f16v1)
             240:  214(fvec4) ExtInst 1(GLSL.std.450) 20(Cosh) 239
                              Store 216(f16v2) 240
             241:  214(fvec4) Load 217(f16v1)
             242:  214(fvec4) ExtInst 1(GLSL.std.450) 21(Tanh) 241
                              Store 216(f16v2) 242
             243:  214(fvec4) Load 217(f16v1)
             244:  214(fvec4) ExtInst 1(GLSL.std.450) 22(Asinh) 243
                              Store 216(f16v2) 244
             245:  214(fvec4) Load 217(f16v1)
             246:  214(fvec4) ExtInst 1(GLSL.std.450) 23(Acosh) 245
                              Store 216(f16v2) 246
             247:  214(fvec4) Load 217(f16v1)
             248:  214(fvec4) ExtInst 1(GLSL.std.450) 24(Atanh) 247
                              Store 216(f16v2) 248
                              Return
                              FunctionEnd
14(builtinExpFuncs():           2 Function None 3
              15:             Label
      249(f16v2):     30(ptr) Variable Function
      250(f16v1):     30(ptr) Variable Function
             251:   29(fvec2) Load 250(f16v1)
             252:   29(fvec2) Load 249(f16v2)
             253:   29(fvec2) ExtInst 1(GLSL.std.450) 26(Pow) 251 252
                              Store 249(f16v2) 253
             254:   29(fvec2) Load 250(f16v1)
             255:   29(fvec2) ExtInst 1(GLSL.std.450) 27(Exp) 254
                              Store 249(f16v2) 255
             256:   29(fvec2) Load 250(f16v1)
             257:   29(fvec2) ExtInst 1(GLSL.std.450) 28(Log) 256
                              Store 249(f16v2) 257
             258:   29(fvec2) Load 250(f16v1)
             259:   29(fvec2) ExtInst 1(GLSL.std.450) 29(Exp2) 258
                              Store 249(f16v2) 259
             260:   29(fvec2) Load 250(f16v1)
             261:   29(fvec2) ExtInst 1(GLSL.std.450) 30(Log2) 260
                              Store 249(f16v2) 261
             262:   29(fvec2) Load 250(f16v1)
             263:   29(fvec2) ExtInst 1(GLSL.std.450) 31(Sqrt) 262
                              Store 249(f16v2) 263
             264:   29(fvec2) Load 250(f16v1)
             265:   29(fvec2) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 264
                              Store 249(f16v2) 265
                              Return
                              FunctionEnd
16(builtinCommonFuncs():           2 Function None 3
              17:             Label
      266(f16v2):    152(ptr) Variable Function
      267(f16v1):    152(ptr) Variable Function
        288(f16):     35(ptr) Variable Function
      292(f16v3):    152(ptr) Variable Function
         332(bv):    155(ptr) Variable Function
          353(b):    110(ptr) Variable Function
         363(iv):    185(ptr) Variable Function
             268:  151(fvec3) Load 267(f16v1)
             269:  151(fvec3) ExtInst 1(GLSL.std.450) 4(FAbs) 268
                              Store 266(f16v2) 269
             270:  151(fvec3) Load 267(f16v1)
             271:  151(fvec3) ExtInst 1(GLSL.std.450) 6(FSign) 270
                              Store 266(f16v2) 271
             272:  151(fvec3) Load 267(f16v1)
             273:  151(fvec3) ExtInst 1(GLSL.std.450) 8(Floor) 272
                              Store 266(f16v2) 273
             274:  151(fvec3) Load 267(f16v1)
             275:  151(fvec3) ExtInst 1(GLSL.std.450) 3(Trunc) 274
                              Store 266(f16v2) 275
             276:  151(fvec3) Load 267(f16v1)
             277:  151(fvec3) ExtInst 1(GLSL.std.450) 1(Round) 276
                              Store 266(f16v2) 277
             278:  151(fvec3) Load 267(f16v1)
             279:  151(fvec3) ExtInst 1(GLSL.std.450) 2(RoundEven) 278
                              Store 266(f16v2) 279
             280:  151(fvec3) Load 267(f16v1)
             281:  151(fvec3) ExtInst 1(GLSL.std.450) 9(Ceil) 280
                              Store 266(f16v2) 281
             282:  151(fvec3) Load 267(f16v1)
             283:  151(fvec3) ExtInst 1(GLSL.std.450) 10(Fract) 282
                              Store 266(f16v2) 283
             284:  151(fvec3) Load 267(f16v1)
             285:  151(fvec3) Load 266(f16v2)
             286:  151(fvec3) FMod 284 285
                              Store 266(f16v2) 286
             287:  151(fvec3) Load 267(f16v1)
             289:   28(float) Load 288(f16)
             290:  151(fvec3) CompositeConstruct 289 289 289
             291:  151(fvec3) FMod 287 290
                              Store 266(f16v2) 291
             293:  151(fvec3) Load 267(f16v1)
             294:  151(fvec3) ExtInst 1(GLSL.std.450) 35(Modf) 293 266(f16v2)
                              Store 292(f16v3) 294
             295:  151(fvec3) Load 267(f16v1)
             296:  151(fvec3) Load 266(f16v2)
             297:  151(fvec3) ExtInst 1(GLSL.std.450) 37(FMin) 295 296
                              Store 292(f16v3) 297
             298:  151(fvec3) Load 267(f16v1)
             299:   28(float) Load 288(f16)
             300:  151(fvec3) CompositeConstruct 299 299 299
             301:  151(fvec3) ExtInst 1(GLSL.std.450) 37(FMin) 298 300
                              Store 292(f16v3) 301
             302:  151(fvec3) Load 267(f16v1)
             303:  151(fvec3) Load 266(f16v2)
             304:  151(fvec3) ExtInst 1(GLSL.std.450) 40(FMax) 302 303
                              Store 292(f16v3) 304
             305:  151(fvec3) Load 267(f16v1)
             306:   28(float) Load 288(f16)
             307:  151(fvec3) CompositeConstruct 306 306 306
             308:  151(fvec3) ExtInst 1(GLSL.std.450) 40(FMax) 305 307
                              Store 292(f16v3) 308
             309:  151(fvec3) Load 267(f16v1)
             310:   28(float) Load 288(f16)
             311:     35(ptr) AccessChain 266(f16v2) 34
             312:   28(float) Load 311
             313:  151(fvec3) CompositeConstruct 310 310 310
             314:  151(fvec3) CompositeConstruct 312 312 312
             315:  151(fvec3) ExtInst 1(GLSL.std.450) 43(FClamp) 309 313 314
                              Store 292(f16v3) 315
             316:  151(fvec3) Load 267(f16v1)
             317:  151(fvec3) Load 266(f16v2)
             318:   28(float) Load 288(f16)
             319:  151(fvec3) CompositeConstruct 318 318 318
             320:  151(fvec3) ExtInst 1(GLSL.std.450) 43(FClamp) 316 317 319
                              Store 292(f16v3) 320
             321:  151(fvec3) Load 267(f16v1)
             322:  151(fvec3) Load 266(f16v2)
             323:   28(float) Load 288(f16)
             324:  151(fvec3) CompositeConstruct 323 323 323
             325:  151(fvec3) ExtInst 1(GLSL.std.450) 46(FMix) 321 322 324
                              Store 292(f16v3) 325
             326:  151(fvec3) Load 267(f16v1)
             327:  151(fvec3) Load 266(f16v2)
             328:  151(fvec3) Load 292(f16v3)
             329:  151(fvec3) ExtInst 1(GLSL.std.450) 46(FMix) 326 327 328
                              Store 292(f16v3) 329
             330:  151(fvec3) Load 267(f16v1)
             331:  151(fvec3) Load 266(f16v2)
             333:  154(bvec3) Load 332(bv)
             334:  151(fvec3) Select 333 331 330
                              Store 292(f16v3) 334
             335:  151(fvec3) Load 267(f16v1)
             336:  151(fvec3) Load 266(f16v2)
             337:  151(fvec3) ExtInst 1(GLSL.std.450) 48(Step) 335 336
                              Store 292(f16v3) 337
             338:   28(float) Load 288(f16)
             339:  151(fvec3) Load 292(f16v3)
             340:  151(fvec3) CompositeConstruct 338 338 338
             341:  151(fvec3) ExtInst 1(GLSL.std.450) 48(Step) 340 339
                              Store 292(f16v3) 341
             342:  151(fvec3) Load 267(f16v1)
             343:  151(fvec3) Load 266(f16v2)
             344:  151(fvec3) Load 292(f16v3)
             345:  151(fvec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 342 343 344
                              Store 292(f16v3) 345
             346:   28(float) Load 288(f16)
             347:     35(ptr) AccessChain 267(f16v1) 34
             348:   28(float) Load 347
             349:  151(fvec3) Load 266(f16v2)
             350:  151(fvec3) CompositeConstruct 346 346 346
             351:  151(fvec3) CompositeConstruct 348 348 348
             352:  151(fvec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 350 351 349
                              Store 292(f16v3) 352
             354:   28(float) Load 288(f16)
             355:   109(bool) IsNan 354
                              Store 353(b) 355
             356:  151(fvec3) Load 267(f16v1)
             357:  154(bvec3) IsInf 356
                              Store 332(bv) 357
             358:  151(fvec3) Load 267(f16v1)
             359:  151(fvec3) Load 266(f16v2)
             360:  151(fvec3) Load 292(f16v3)
             361:  151(fvec3) ExtInst 1(GLSL.std.450) 50(Fma) 358 359 360
                              Store 292(f16v3) 361
             362:  151(fvec3) Load 267(f16v1)
             365:364(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 362
             366:  184(ivec3) CompositeExtract 365 1
                              Store 363(iv) 366
             367:  151(fvec3) CompositeExtract 365 0
                              Store 266(f16v2) 367
             368:  151(fvec3) Load 267(f16v1)
             369:  184(ivec3) Load 363(iv)
             370:  151(fvec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 368 369
                              Store 266(f16v2) 370
                              Return
                              FunctionEnd
18(builtinPackUnpackFuncs():           2 Function None 3
              19:             Label
          372(u):    371(ptr) Variable Function
       373(f16v):     30(ptr) Variable Function
             374:   29(fvec2) Load 373(f16v)
             375:     33(int) Bitcast 374
                              Store 372(u) 375
             376:     33(int) Load 372(u)
             377:   29(fvec2) Bitcast 376
                              Store 373(f16v) 377
                              Return
                              FunctionEnd
20(builtinGeometryFuncs():           2 Function None 3
              21:             Label
        378(f16):     35(ptr) Variable Function
      379(f16v1):    152(ptr) Variable Function
      383(f16v2):    152(ptr) Variable Function
      389(f16v3):    152(ptr) Variable Function
             380:  151(fvec3) Load 379(f16v1)
             381:   28(float) ExtInst 1(GLSL.std.450) 66(Length) 380
                              Store 378(f16) 381
             382:  151(fvec3) Load 379(f16v1)
             384:  151(fvec3) Load 383(f16v2)
             385:   28(float) ExtInst 1(GLSL.std.450) 67(Distance) 382 384
                              Store 378(f16) 385
             386:  151(fvec3) Load 379(f16v1)
             387:  151(fvec3) Load 383(f16v2)
             388:   28(float) Dot 386 387
                              Store 378(f16) 388
             390:  151(fvec3) Load 379(f16v1)
             391:  151(fvec3) Load 383(f16v2)
             392:  151(fvec3) ExtInst 1(GLSL.std.450) 68(Cross) 390 391
                              Store 389(f16v3) 392
             393:  151(fvec3) Load 379(f16v1)
             394:  151(fvec3) ExtInst 1(GLSL.std.450) 69(Normalize) 393
                              Store 383(f16v2) 394
             395:  151(fvec3) Load 379(f16v1)
             396:  151(fvec3) Load 383(f16v2)
             397:  151(fvec3) Load 389(f16v3)
             398:  151(fvec3) ExtInst 1(GLSL.std.450) 70(FaceForward) 395 396 397
                              Store 389(f16v3) 398
             399:  151(fvec3) Load 379(f16v1)
             400:  151(fvec3) Load 383(f16v2)
             401:  151(fvec3) ExtInst 1(GLSL.std.450) 71(Reflect) 399 400
                              Store 389(f16v3) 401
             402:  151(fvec3) Load 379(f16v1)
             403:  151(fvec3) Load 383(f16v2)
             404:   28(float) Load 378(f16)
             405:  151(fvec3) ExtInst 1(GLSL.std.450) 72(Refract) 402 403 404
                              Store 389(f16v3) 405
                              Return
                              FunctionEnd
22(builtinMatrixFuncs():           2 Function None 3
              23:             Label
      408(f16m3):    407(ptr) Variable Function
      409(f16m1):    407(ptr) Variable Function
      411(f16m2):    407(ptr) Variable Function
      420(f16v1):    152(ptr) Variable Function
      422(f16v2):     30(ptr) Variable Function
      427(f16m4):    426(ptr) Variable Function
        430(f16):     35(ptr) Variable Function
      433(f16m5):    432(ptr) Variable Function
      438(f16m6):    437(ptr) Variable Function
      439(f16m7):    437(ptr) Variable Function
             410:         406 Load 409(f16m1)
             412:         406 Load 411(f16m2)
             413:  151(fvec3) CompositeExtract 410 0
             414:  151(fvec3) CompositeExtract 412 0
             415:  151(fvec3) FMul 413 414
             416:  151(fvec3) CompositeExtract 410 1
             417:  151(fvec3) CompositeExtract 412 1
             418:  151(fvec3) FMul 416 417
             419:         406 CompositeConstruct 415 418
                              Store 408(f16m3) 419
             421:  151(fvec3) Load 420(f16v1)
             423:   29(fvec2) Load 422(f16v2)
             424:         406 OuterProduct 421 423
                              Store 409(f16m1) 424
             428:         406 Load 409(f16m1)
             429:         425 Transpose 428
                              Store 427(f16m4) 429
             434:         431 Load 433(f16m5)
             435:   28(float) ExtInst 1(GLSL.std.450) 33(Determinant) 434
                              Store 430(f16) 435
             440:         436 Load 439(f16m7)
             441:         436 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 440
                              Store 438(f16m6) 441
                              Return
                              FunctionEnd
24(builtinVecRelFuncs():           2 Function None 3
              25:             Label
         442(bv):    155(ptr) Variable Function
      443(f16v1):    152(ptr) Variable Function
      445(f16v2):    152(ptr) Variable Function
             444:  151(fvec3) Load 443(f16v1)
             446:  151(fvec3) Load 445(f16v2)
             447:  154(bvec3) FOrdLessThan 444 446
                              Store 442(bv) 447
             448:  151(fvec3) Load 443(f16v1)
             449:  151(fvec3) Load 445(f16v2)
             450:  154(bvec3) FOrdLessThanEqual 448 449
                              Store 442(bv) 450
             451:  151(fvec3) Load 443(f16v1)
             452:  151(fvec3) Load 445(f16v2)
             453:  154(bvec3) FOrdGreaterThan 451 452
                              Store 442(bv) 453
             454:  151(fvec3) Load 443(f16v1)
             455:  151(fvec3) Load 445(f16v2)
             456:  154(bvec3) FOrdGreaterThanEqual 454 455
                              Store 442(bv) 456
             457:  151(fvec3) Load 443(f16v1)
             458:  151(fvec3) Load 445(f16v2)
             459:  154(bvec3) FOrdEqual 457 458
                              Store 442(bv) 459
             460:  151(fvec3) Load 443(f16v1)
             461:  151(fvec3) Load 445(f16v2)
             462:  154(bvec3) FOrdNotEqual 460 461
                              Store 442(bv) 462
                              Return
                              FunctionEnd
26(builtinFragProcFuncs():           2 Function None 3
              27:             Label
       463(f16v):    152(ptr) Variable Function
             467:    466(ptr) AccessChain 465(if16v) 34
             468:   28(float) Load 467
             469:   28(float) DPdx 468
             470:     35(ptr) AccessChain 463(f16v) 34
                              Store 470 469
             471:    466(ptr) AccessChain 465(if16v) 90
             472:   28(float) Load 471
             473:   28(float) DPdy 472
             474:     35(ptr) AccessChain 463(f16v) 90
                              Store 474 473
             475:  151(fvec3) Load 465(if16v)
             476:   29(fvec2) VectorShuffle 475 475 0 1
             477:   29(fvec2) DPdxFine 476
             478:  151(fvec3) Load 463(f16v)
             479:  151(fvec3) VectorShuffle 478 477 3 4 2
                              Store 463(f16v) 479
             480:  151(fvec3) Load 465(if16v)
             481:   29(fvec2) VectorShuffle 480 480 0 1
             482:   29(fvec2) DPdyFine 481
             483:  151(fvec3) Load 463(f16v)
             484:  151(fvec3) VectorShuffle 483 482 3 4 2
                              Store 463(f16v) 484
             485:  151(fvec3) Load 465(if16v)
             486:  151(fvec3) DPdxCoarse 485
                              Store 463(f16v) 486
             487:  151(fvec3) Load 465(if16v)
             488:  151(fvec3) DPdxCoarse 487
                              Store 463(f16v) 488
             489:    466(ptr) AccessChain 465(if16v) 34
             490:   28(float) Load 489
             491:   28(float) Fwidth 490
             492:     35(ptr) AccessChain 463(f16v) 34
                              Store 492 491
             493:  151(fvec3) Load 465(if16v)
             494:   29(fvec2) VectorShuffle 493 493 0 1
             495:   29(fvec2) FwidthFine 494
             496:  151(fvec3) Load 463(f16v)
             497:  151(fvec3) VectorShuffle 496 495 3 4 2
                              Store 463(f16v) 497
             498:  151(fvec3) Load 465(if16v)
             499:  151(fvec3) FwidthCoarse 498
                              Store 463(f16v) 499
             500:    466(ptr) AccessChain 465(if16v) 34
             501:   28(float) ExtInst 1(GLSL.std.450) 76(InterpolateAtCentroid) 500
             502:     35(ptr) AccessChain 463(f16v) 34
                              Store 502 501
             504:  151(fvec3) ExtInst 1(GLSL.std.450) 77(InterpolateAtSample) 465(if16v) 503
             505:   29(fvec2) VectorShuffle 504 504 0 1
             506:  151(fvec3) Load 463(f16v)
             507:  151(fvec3) VectorShuffle 506 505 3 4 2
                              Store 463(f16v) 507
             510:  151(fvec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 465(if16v) 509
                              Store 463(f16v) 510
                              Return
                              FunctionEnd
