Home | History | Annotate | Download | only in baseResults
      1 spv.float16.frag
      2 Validation failed
      3 // Module Version 10000
      4 // Generated by (magic number): 80007
      5 // Id's are bound by 534
      6 
      7                               Capability Shader
      8                               Capability Float16
      9                               Capability Float64
     10                               Capability Int64
     11                               Capability DerivativeControl
     12                               Capability InterpolationFunction
     13                               Capability StorageUniformBufferBlock16
     14                               Capability StorageUniform16
     15                               Capability StorageInputOutput16
     16                               Extension  "SPV_AMD_gpu_shader_half_float"
     17                               Extension  "SPV_KHR_16bit_storage"
     18                1:             ExtInstImport  "GLSL.std.450"
     19                               MemoryModel Logical GLSL450
     20                               EntryPoint Fragment 4  "main" 465
     21                               ExecutionMode 4 OriginUpperLeft
     22                               Source GLSL 450
     23                               SourceExtension  "GL_AMD_gpu_shader_half_float"
     24                               SourceExtension  "GL_ARB_gpu_shader_int64"
     25                               Name 4  "main"
     26                               Name 6  "literal("
     27                               Name 8  "operators("
     28                               Name 10  "typeCast("
     29                               Name 12  "builtinAngleTrigFuncs("
     30                               Name 14  "builtinExpFuncs("
     31                               Name 16  "builtinCommonFuncs("
     32                               Name 18  "builtinPackUnpackFuncs("
     33                               Name 20  "builtinGeometryFuncs("
     34                               Name 22  "builtinMatrixFuncs("
     35                               Name 24  "builtinVecRelFuncs("
     36                               Name 26  "builtinFragProcFuncs("
     37                               Name 31  "f16v"
     38                               Name 42  "f16v"
     39                               Name 64  "f16m"
     40                               Name 87  "f16"
     41                               Name 111  "b"
     42                               Name 153  "f16v"
     43                               Name 156  "bv"
     44                               Name 167  "fv"
     45                               Name 175  "dv"
     46                               Name 186  "iv"
     47                               Name 193  "uv"
     48                               Name 201  "i64v"
     49                               Name 209  "u64v"
     50                               Name 216  "f16v2"
     51                               Name 217  "f16v1"
     52                               Name 249  "f16v2"
     53                               Name 250  "f16v1"
     54                               Name 266  "f16v2"
     55                               Name 267  "f16v1"
     56                               Name 288  "f16"
     57                               Name 292  "f16v3"
     58                               Name 332  "bv"
     59                               Name 353  "b"
     60                               Name 363  "iv"
     61                               Name 364  "ResType"
     62                               Name 372  "u"
     63                               Name 373  "f16v"
     64                               Name 378  "f16"
     65                               Name 379  "f16v1"
     66                               Name 383  "f16v2"
     67                               Name 389  "f16v3"
     68                               Name 408  "f16m3"
     69                               Name 409  "f16m1"
     70                               Name 411  "f16m2"
     71                               Name 420  "f16v1"
     72                               Name 422  "f16v2"
     73                               Name 427  "f16m4"
     74                               Name 430  "f16"
     75                               Name 433  "f16m5"
     76                               Name 438  "f16m6"
     77                               Name 439  "f16m7"
     78                               Name 442  "bv"
     79                               Name 443  "f16v1"
     80                               Name 445  "f16v2"
     81                               Name 463  "f16v"
     82                               Name 465  "if16v"
     83                               Name 514  "S"
     84                               MemberName 514(S) 0  "x"
     85                               MemberName 514(S) 1  "y"
     86                               MemberName 514(S) 2  "z"
     87                               Name 516  "B1"
     88                               MemberName 516(B1) 0  "a"
     89                               MemberName 516(B1) 1  "b"
     90                               MemberName 516(B1) 2  "c"
     91                               MemberName 516(B1) 3  "d"
     92                               MemberName 516(B1) 4  "e"
     93                               MemberName 516(B1) 5  "f"
     94                               MemberName 516(B1) 6  "g"
     95                               MemberName 516(B1) 7  "h"
     96                               Name 518  ""
     97                               Name 521  "S"
     98                               MemberName 521(S) 0  "x"
     99                               MemberName 521(S) 1  "y"
    100                               MemberName 521(S) 2  "z"
    101                               Name 523  "B2"
    102                               MemberName 523(B2) 0  "o"
    103                               MemberName 523(B2) 1  "p"
    104                               MemberName 523(B2) 2  "q"
    105                               MemberName 523(B2) 3  "r"
    106                               MemberName 523(B2) 4  "s"
    107                               MemberName 523(B2) 5  "t"
    108                               MemberName 523(B2) 6  "u"
    109                               MemberName 523(B2) 7  "v"
    110                               Name 525  ""
    111                               Name 526  "sf16"
    112                               Name 527  "sf"
    113                               Name 528  "sd"
    114                               Name 529  "f16_to_f"
    115                               Name 531  "f16_to_d"
    116                               Name 532  "f_to_f16"
    117                               Name 533  "d_to_f16"
    118                               Decorate 512 ArrayStride 16
    119                               Decorate 513 ArrayStride 32
    120                               MemberDecorate 514(S) 0 Offset 0
    121                               MemberDecorate 514(S) 1 Offset 4
    122                               MemberDecorate 514(S) 2 Offset 8
    123                               Decorate 515 ArrayStride 16
    124                               MemberDecorate 516(B1) 0 Offset 0
    125                               MemberDecorate 516(B1) 1 Offset 4
    126                               MemberDecorate 516(B1) 2 Offset 8
    127                               MemberDecorate 516(B1) 3 Offset 16
    128                               MemberDecorate 516(B1) 4 ColMajor
    129                               MemberDecorate 516(B1) 4 Offset 48
    130                               MemberDecorate 516(B1) 4 MatrixStride 16
    131                               MemberDecorate 516(B1) 5 ColMajor
    132                               MemberDecorate 516(B1) 5 Offset 80
    133                               MemberDecorate 516(B1) 5 MatrixStride 16
    134                               MemberDecorate 516(B1) 6 Offset 144
    135                               MemberDecorate 516(B1) 7 Offset 160
    136                               Decorate 516(B1) Block
    137                               Decorate 518 DescriptorSet 0
    138                               Decorate 518 Binding 0
    139                               Decorate 519 ArrayStride 2
    140                               Decorate 520 ArrayStride 12
    141                               MemberDecorate 521(S) 0 Offset 0
    142                               MemberDecorate 521(S) 1 Offset 4
    143                               MemberDecorate 521(S) 2 Offset 8
    144                               Decorate 522 ArrayStride 16
    145                               MemberDecorate 523(B2) 0 Offset 0
    146                               MemberDecorate 523(B2) 1 Offset 4
    147                               MemberDecorate 523(B2) 2 Offset 8
    148                               MemberDecorate 523(B2) 3 Offset 14
    149                               MemberDecorate 523(B2) 4 RowMajor
    150                               MemberDecorate 523(B2) 4 Offset 20
    151                               MemberDecorate 523(B2) 4 MatrixStride 4
    152                               MemberDecorate 523(B2) 5 RowMajor
    153                               MemberDecorate 523(B2) 5 Offset 32
    154                               MemberDecorate 523(B2) 5 MatrixStride 4
    155                               MemberDecorate 523(B2) 6 Offset 56
    156                               MemberDecorate 523(B2) 7 Offset 72
    157                               Decorate 523(B2) BufferBlock
    158                               Decorate 525 DescriptorSet 0
    159                               Decorate 525 Binding 0
    160                               Decorate 526(sf16) SpecId 100
    161                               Decorate 527(sf) SpecId 101
    162                               Decorate 528(sd) SpecId 102
    163                2:             TypeVoid
    164                3:             TypeFunction 2
    165               28:             TypeFloat 16
    166               29:             TypeVector 28(float16_t) 2
    167               30:             TypePointer Function 29(f16vec2)
    168               32:28(float16_t) Constant 16
    169               33:             TypeInt 32 0
    170               34:     33(int) Constant 0
    171               35:             TypePointer Function 28(float16_t)
    172               37:28(float16_t) Constant 46080
    173               38:28(float16_t) Constant 10158
    174               39: 29(f16vec2) ConstantComposite 37 38
    175               56:28(float16_t) Constant 15360
    176               62:             TypeMatrix 29(f16vec2) 2
    177               63:             TypePointer Function 62
    178               90:     33(int) Constant 1
    179              109:             TypeBool
    180              110:             TypePointer Function 109(bool)
    181              151:             TypeVector 28(float16_t) 3
    182              152:             TypePointer Function 151(f16vec3)
    183              154:             TypeVector 109(bool) 3
    184              155:             TypePointer Function 154(bvec3)
    185              158:28(float16_t) Constant 0
    186              159:151(f16vec3) ConstantComposite 158 158 158
    187              160:151(f16vec3) ConstantComposite 56 56 56
    188              164:             TypeFloat 32
    189              165:             TypeVector 164(float) 3
    190              166:             TypePointer Function 165(fvec3)
    191              172:             TypeFloat 64
    192              173:             TypeVector 172(float64_t) 3
    193              174:             TypePointer Function 173(f64vec3)
    194              183:             TypeInt 32 1
    195              184:             TypeVector 183(int) 3
    196              185:             TypePointer Function 184(ivec3)
    197              191:             TypeVector 33(int) 3
    198              192:             TypePointer Function 191(ivec3)
    199              198:             TypeInt 64 1
    200              199:             TypeVector 198(int64_t) 3
    201              200:             TypePointer Function 199(i64vec3)
    202              206:             TypeInt 64 0
    203              207:             TypeVector 206(int64_t) 3
    204              208:             TypePointer Function 207(i64vec3)
    205              214:             TypeVector 28(float16_t) 4
    206              215:             TypePointer Function 214(f16vec4)
    207     364(ResType):             TypeStruct 151(f16vec3) 184(ivec3)
    208              371:             TypePointer Function 33(int)
    209              406:             TypeMatrix 151(f16vec3) 2
    210              407:             TypePointer Function 406
    211              425:             TypeMatrix 29(f16vec2) 3
    212              426:             TypePointer Function 425
    213              431:             TypeMatrix 151(f16vec3) 3
    214              432:             TypePointer Function 431
    215              436:             TypeMatrix 214(f16vec4) 4
    216              437:             TypePointer Function 436
    217              464:             TypePointer Input 151(f16vec3)
    218       465(if16v):    464(ptr) Variable Input
    219              466:             TypePointer Input 28(float16_t)
    220              503:    183(int) Constant 1
    221              508:28(float16_t) Constant 14336
    222              509: 29(f16vec2) ConstantComposite 508 508
    223              511:     33(int) Constant 2
    224              512:             TypeArray 28(float16_t) 511
    225              513:             TypeArray 406 511
    226           514(S):             TypeStruct 28(float16_t) 29(f16vec2) 151(f16vec3)
    227              515:             TypeArray 514(S) 511
    228          516(B1):             TypeStruct 28(float16_t) 29(f16vec2) 151(f16vec3) 512 406 513 514(S) 515
    229              517:             TypePointer Uniform 516(B1)
    230              518:    517(ptr) Variable Uniform
    231              519:             TypeArray 28(float16_t) 511
    232              520:             TypeArray 406 511
    233           521(S):             TypeStruct 28(float16_t) 29(f16vec2) 151(f16vec3)
    234              522:             TypeArray 521(S) 511
    235          523(B2):             TypeStruct 28(float16_t) 29(f16vec2) 151(f16vec3) 519 406 520 521(S) 522
    236              524:             TypePointer Uniform 523(B2)
    237              525:    524(ptr) Variable Uniform
    238        526(sf16):28(float16_t) SpecConstant 12288
    239          527(sf):  164(float) SpecConstant 1048576000
    240          528(sd):172(float64_t) SpecConstant 0 1071644672
    241    529(f16_to_f):  164(float) SpecConstantOp 115 526(sf16)
    242              530:  164(float) SpecConstantOp 115 526(sf16)
    243    531(f16_to_d):172(float64_t) SpecConstantOp 115 530
    244    532(f_to_f16):28(float16_t) SpecConstantOp 115 527(sf)
    245    533(d_to_f16):28(float16_t) SpecConstantOp 115 528(sd)
    246          4(main):           2 Function None 3
    247                5:             Label
    248                               Return
    249                               FunctionEnd
    250      6(literal():           2 Function None 3
    251                7:             Label
    252         31(f16v):     30(ptr) Variable Function
    253               36:     35(ptr) AccessChain 31(f16v) 34
    254                               Store 36 32
    255               40: 29(f16vec2) Load 31(f16v)
    256               41: 29(f16vec2) FAdd 40 39
    257                               Store 31(f16v) 41
    258                               Return
    259                               FunctionEnd
    260    8(operators():           2 Function None 3
    261                9:             Label
    262         42(f16v):     30(ptr) Variable Function
    263         64(f16m):     63(ptr) Variable Function
    264          87(f16):     35(ptr) Variable Function
    265           111(b):    110(ptr) Variable Function
    266               43: 29(f16vec2) Load 42(f16v)
    267               44: 29(f16vec2) Load 42(f16v)
    268               45: 29(f16vec2) FAdd 44 43
    269                               Store 42(f16v) 45
    270               46: 29(f16vec2) Load 42(f16v)
    271               47: 29(f16vec2) Load 42(f16v)
    272               48: 29(f16vec2) FSub 47 46
    273                               Store 42(f16v) 48
    274               49: 29(f16vec2) Load 42(f16v)
    275               50: 29(f16vec2) Load 42(f16v)
    276               51: 29(f16vec2) FMul 50 49
    277                               Store 42(f16v) 51
    278               52: 29(f16vec2) Load 42(f16v)
    279               53: 29(f16vec2) Load 42(f16v)
    280               54: 29(f16vec2) FDiv 53 52
    281                               Store 42(f16v) 54
    282               55: 29(f16vec2) Load 42(f16v)
    283               57: 29(f16vec2) CompositeConstruct 56 56
    284               58: 29(f16vec2) FAdd 55 57
    285                               Store 42(f16v) 58
    286               59: 29(f16vec2) Load 42(f16v)
    287               60: 29(f16vec2) CompositeConstruct 56 56
    288               61: 29(f16vec2) FSub 59 60
    289                               Store 42(f16v) 61
    290               65:          62 Load 64(f16m)
    291               66: 29(f16vec2) CompositeConstruct 56 56
    292               67: 29(f16vec2) CompositeExtract 65 0
    293               68: 29(f16vec2) FAdd 67 66
    294               69: 29(f16vec2) CompositeExtract 65 1
    295               70: 29(f16vec2) FAdd 69 66
    296               71:          62 CompositeConstruct 68 70
    297                               Store 64(f16m) 71
    298               72:          62 Load 64(f16m)
    299               73: 29(f16vec2) CompositeConstruct 56 56
    300               74: 29(f16vec2) CompositeExtract 72 0
    301               75: 29(f16vec2) FSub 74 73
    302               76: 29(f16vec2) CompositeExtract 72 1
    303               77: 29(f16vec2) FSub 76 73
    304               78:          62 CompositeConstruct 75 77
    305                               Store 64(f16m) 78
    306               79: 29(f16vec2) Load 42(f16v)
    307               80: 29(f16vec2) FNegate 79
    308                               Store 42(f16v) 80
    309               81:          62 Load 64(f16m)
    310               82: 29(f16vec2) CompositeExtract 81 0
    311               83: 29(f16vec2) FNegate 82
    312               84: 29(f16vec2) CompositeExtract 81 1
    313               85: 29(f16vec2) FNegate 84
    314               86:          62 CompositeConstruct 83 85
    315                               Store 64(f16m) 86
    316               88:     35(ptr) AccessChain 42(f16v) 34
    317               89:28(float16_t) Load 88
    318               91:     35(ptr) AccessChain 42(f16v) 90
    319               92:28(float16_t) Load 91
    320               93:28(float16_t) FAdd 89 92
    321                               Store 87(f16) 93
    322               94:     35(ptr) AccessChain 42(f16v) 34
    323               95:28(float16_t) Load 94
    324               96:     35(ptr) AccessChain 42(f16v) 90
    325               97:28(float16_t) Load 96
    326               98:28(float16_t) FSub 95 97
    327                               Store 87(f16) 98
    328               99:     35(ptr) AccessChain 42(f16v) 34
    329              100:28(float16_t) Load 99
    330              101:     35(ptr) AccessChain 42(f16v) 90
    331              102:28(float16_t) Load 101
    332              103:28(float16_t) FMul 100 102
    333                               Store 87(f16) 103
    334              104:     35(ptr) AccessChain 42(f16v) 34
    335              105:28(float16_t) Load 104
    336              106:     35(ptr) AccessChain 42(f16v) 90
    337              107:28(float16_t) Load 106
    338              108:28(float16_t) FDiv 105 107
    339                               Store 87(f16) 108
    340              112:     35(ptr) AccessChain 42(f16v) 34
    341              113:28(float16_t) Load 112
    342              114:28(float16_t) Load 87(f16)
    343              115:   109(bool) FOrdNotEqual 113 114
    344                               Store 111(b) 115
    345              116:     35(ptr) AccessChain 42(f16v) 90
    346              117:28(float16_t) Load 116
    347              118:28(float16_t) Load 87(f16)
    348              119:   109(bool) FOrdEqual 117 118
    349                               Store 111(b) 119
    350              120:     35(ptr) AccessChain 42(f16v) 34
    351              121:28(float16_t) Load 120
    352              122:28(float16_t) Load 87(f16)
    353              123:   109(bool) FOrdGreaterThan 121 122
    354                               Store 111(b) 123
    355              124:     35(ptr) AccessChain 42(f16v) 90
    356              125:28(float16_t) Load 124
    357              126:28(float16_t) Load 87(f16)
    358              127:   109(bool) FOrdLessThan 125 126
    359                               Store 111(b) 127
    360              128:     35(ptr) AccessChain 42(f16v) 34
    361              129:28(float16_t) Load 128
    362              130:28(float16_t) Load 87(f16)
    363              131:   109(bool) FOrdGreaterThanEqual 129 130
    364                               Store 111(b) 131
    365              132:     35(ptr) AccessChain 42(f16v) 90
    366              133:28(float16_t) Load 132
    367              134:28(float16_t) Load 87(f16)
    368              135:   109(bool) FOrdLessThanEqual 133 134
    369                               Store 111(b) 135
    370              136: 29(f16vec2) Load 42(f16v)
    371              137:28(float16_t) Load 87(f16)
    372              138: 29(f16vec2) VectorTimesScalar 136 137
    373                               Store 42(f16v) 138
    374              139:          62 Load 64(f16m)
    375              140:28(float16_t) Load 87(f16)
    376              141:          62 MatrixTimesScalar 139 140
    377                               Store 64(f16m) 141
    378              142:          62 Load 64(f16m)
    379              143: 29(f16vec2) Load 42(f16v)
    380              144: 29(f16vec2) MatrixTimesVector 142 143
    381                               Store 42(f16v) 144
    382              145: 29(f16vec2) Load 42(f16v)
    383              146:          62 Load 64(f16m)
    384              147: 29(f16vec2) VectorTimesMatrix 145 146
    385                               Store 42(f16v) 147
    386              148:          62 Load 64(f16m)
    387              149:          62 Load 64(f16m)
    388              150:          62 MatrixTimesMatrix 148 149
    389                               Store 64(f16m) 150
    390                               Return
    391                               FunctionEnd
    392    10(typeCast():           2 Function None 3
    393               11:             Label
    394        153(f16v):    152(ptr) Variable Function
    395          156(bv):    155(ptr) Variable Function
    396          167(fv):    166(ptr) Variable Function
    397          175(dv):    174(ptr) Variable Function
    398          186(iv):    185(ptr) Variable Function
    399          193(uv):    192(ptr) Variable Function
    400        201(i64v):    200(ptr) Variable Function
    401        209(u64v):    208(ptr) Variable Function
    402              157:  154(bvec3) Load 156(bv)
    403              161:151(f16vec3) Select 157 160 159
    404                               Store 153(f16v) 161
    405              162:151(f16vec3) Load 153(f16v)
    406              163:  154(bvec3) FOrdNotEqual 162 159
    407                               Store 156(bv) 163
    408              168:  165(fvec3) Load 167(fv)
    409              169:151(f16vec3) FConvert 168
    410                               Store 153(f16v) 169
    411              170:151(f16vec3) Load 153(f16v)
    412              171:  165(fvec3) FConvert 170
    413                               Store 167(fv) 171
    414              176:173(f64vec3) Load 175(dv)
    415              177:151(f16vec3) FConvert 176
    416                               Store 153(f16v) 177
    417              178:173(f64vec3) Load 175(dv)
    418              179:172(float64_t) CompositeExtract 178 0
    419              180:172(float64_t) CompositeExtract 178 1
    420              181:172(float64_t) CompositeExtract 178 2
    421              182:173(f64vec3) CompositeConstruct 179 180 181
    422                               Store 175(dv) 182
    423              187:  184(ivec3) Load 186(iv)
    424              188:151(f16vec3) ConvertSToF 187
    425                               Store 153(f16v) 188
    426              189:151(f16vec3) Load 153(f16v)
    427              190:  184(ivec3) ConvertFToS 189
    428                               Store 186(iv) 190
    429              194:  191(ivec3) Load 193(uv)
    430              195:151(f16vec3) ConvertUToF 194
    431                               Store 153(f16v) 195
    432              196:151(f16vec3) Load 153(f16v)
    433              197:  191(ivec3) ConvertFToU 196
    434                               Store 193(uv) 197
    435              202:199(i64vec3) Load 201(i64v)
    436              203:151(f16vec3) ConvertSToF 202
    437                               Store 153(f16v) 203
    438              204:151(f16vec3) Load 153(f16v)
    439              205:199(i64vec3) ConvertFToS 204
    440                               Store 201(i64v) 205
    441              210:207(i64vec3) Load 209(u64v)
    442              211:151(f16vec3) ConvertUToF 210
    443                               Store 153(f16v) 211
    444              212:151(f16vec3) Load 153(f16v)
    445              213:207(i64vec3) ConvertFToU 212
    446                               Store 209(u64v) 213
    447                               Return
    448                               FunctionEnd
    449 12(builtinAngleTrigFuncs():           2 Function None 3
    450               13:             Label
    451       216(f16v2):    215(ptr) Variable Function
    452       217(f16v1):    215(ptr) Variable Function
    453              218:214(f16vec4) Load 217(f16v1)
    454              219:214(f16vec4) ExtInst 1(GLSL.std.450) 11(Radians) 218
    455                               Store 216(f16v2) 219
    456              220:214(f16vec4) Load 217(f16v1)
    457              221:214(f16vec4) ExtInst 1(GLSL.std.450) 12(Degrees) 220
    458                               Store 216(f16v2) 221
    459              222:214(f16vec4) Load 217(f16v1)
    460              223:214(f16vec4) ExtInst 1(GLSL.std.450) 13(Sin) 222
    461                               Store 216(f16v2) 223
    462              224:214(f16vec4) Load 217(f16v1)
    463              225:214(f16vec4) ExtInst 1(GLSL.std.450) 14(Cos) 224
    464                               Store 216(f16v2) 225
    465              226:214(f16vec4) Load 217(f16v1)
    466              227:214(f16vec4) ExtInst 1(GLSL.std.450) 15(Tan) 226
    467                               Store 216(f16v2) 227
    468              228:214(f16vec4) Load 217(f16v1)
    469              229:214(f16vec4) ExtInst 1(GLSL.std.450) 16(Asin) 228
    470                               Store 216(f16v2) 229
    471              230:214(f16vec4) Load 217(f16v1)
    472              231:214(f16vec4) ExtInst 1(GLSL.std.450) 17(Acos) 230
    473                               Store 216(f16v2) 231
    474              232:214(f16vec4) Load 217(f16v1)
    475              233:214(f16vec4) Load 216(f16v2)
    476              234:214(f16vec4) ExtInst 1(GLSL.std.450) 25(Atan2) 232 233
    477                               Store 216(f16v2) 234
    478              235:214(f16vec4) Load 217(f16v1)
    479              236:214(f16vec4) ExtInst 1(GLSL.std.450) 18(Atan) 235
    480                               Store 216(f16v2) 236
    481              237:214(f16vec4) Load 217(f16v1)
    482              238:214(f16vec4) ExtInst 1(GLSL.std.450) 19(Sinh) 237
    483                               Store 216(f16v2) 238
    484              239:214(f16vec4) Load 217(f16v1)
    485              240:214(f16vec4) ExtInst 1(GLSL.std.450) 20(Cosh) 239
    486                               Store 216(f16v2) 240
    487              241:214(f16vec4) Load 217(f16v1)
    488              242:214(f16vec4) ExtInst 1(GLSL.std.450) 21(Tanh) 241
    489                               Store 216(f16v2) 242
    490              243:214(f16vec4) Load 217(f16v1)
    491              244:214(f16vec4) ExtInst 1(GLSL.std.450) 22(Asinh) 243
    492                               Store 216(f16v2) 244
    493              245:214(f16vec4) Load 217(f16v1)
    494              246:214(f16vec4) ExtInst 1(GLSL.std.450) 23(Acosh) 245
    495                               Store 216(f16v2) 246
    496              247:214(f16vec4) Load 217(f16v1)
    497              248:214(f16vec4) ExtInst 1(GLSL.std.450) 24(Atanh) 247
    498                               Store 216(f16v2) 248
    499                               Return
    500                               FunctionEnd
    501 14(builtinExpFuncs():           2 Function None 3
    502               15:             Label
    503       249(f16v2):     30(ptr) Variable Function
    504       250(f16v1):     30(ptr) Variable Function
    505              251: 29(f16vec2) Load 250(f16v1)
    506              252: 29(f16vec2) Load 249(f16v2)
    507              253: 29(f16vec2) ExtInst 1(GLSL.std.450) 26(Pow) 251 252
    508                               Store 249(f16v2) 253
    509              254: 29(f16vec2) Load 250(f16v1)
    510              255: 29(f16vec2) ExtInst 1(GLSL.std.450) 27(Exp) 254
    511                               Store 249(f16v2) 255
    512              256: 29(f16vec2) Load 250(f16v1)
    513              257: 29(f16vec2) ExtInst 1(GLSL.std.450) 28(Log) 256
    514                               Store 249(f16v2) 257
    515              258: 29(f16vec2) Load 250(f16v1)
    516              259: 29(f16vec2) ExtInst 1(GLSL.std.450) 29(Exp2) 258
    517                               Store 249(f16v2) 259
    518              260: 29(f16vec2) Load 250(f16v1)
    519              261: 29(f16vec2) ExtInst 1(GLSL.std.450) 30(Log2) 260
    520                               Store 249(f16v2) 261
    521              262: 29(f16vec2) Load 250(f16v1)
    522              263: 29(f16vec2) ExtInst 1(GLSL.std.450) 31(Sqrt) 262
    523                               Store 249(f16v2) 263
    524              264: 29(f16vec2) Load 250(f16v1)
    525              265: 29(f16vec2) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 264
    526                               Store 249(f16v2) 265
    527                               Return
    528                               FunctionEnd
    529 16(builtinCommonFuncs():           2 Function None 3
    530               17:             Label
    531       266(f16v2):    152(ptr) Variable Function
    532       267(f16v1):    152(ptr) Variable Function
    533         288(f16):     35(ptr) Variable Function
    534       292(f16v3):    152(ptr) Variable Function
    535          332(bv):    155(ptr) Variable Function
    536           353(b):    110(ptr) Variable Function
    537          363(iv):    185(ptr) Variable Function
    538              268:151(f16vec3) Load 267(f16v1)
    539              269:151(f16vec3) ExtInst 1(GLSL.std.450) 4(FAbs) 268
    540                               Store 266(f16v2) 269
    541              270:151(f16vec3) Load 267(f16v1)
    542              271:151(f16vec3) ExtInst 1(GLSL.std.450) 6(FSign) 270
    543                               Store 266(f16v2) 271
    544              272:151(f16vec3) Load 267(f16v1)
    545              273:151(f16vec3) ExtInst 1(GLSL.std.450) 8(Floor) 272
    546                               Store 266(f16v2) 273
    547              274:151(f16vec3) Load 267(f16v1)
    548              275:151(f16vec3) ExtInst 1(GLSL.std.450) 3(Trunc) 274
    549                               Store 266(f16v2) 275
    550              276:151(f16vec3) Load 267(f16v1)
    551              277:151(f16vec3) ExtInst 1(GLSL.std.450) 1(Round) 276
    552                               Store 266(f16v2) 277
    553              278:151(f16vec3) Load 267(f16v1)
    554              279:151(f16vec3) ExtInst 1(GLSL.std.450) 2(RoundEven) 278
    555                               Store 266(f16v2) 279
    556              280:151(f16vec3) Load 267(f16v1)
    557              281:151(f16vec3) ExtInst 1(GLSL.std.450) 9(Ceil) 280
    558                               Store 266(f16v2) 281
    559              282:151(f16vec3) Load 267(f16v1)
    560              283:151(f16vec3) ExtInst 1(GLSL.std.450) 10(Fract) 282
    561                               Store 266(f16v2) 283
    562              284:151(f16vec3) Load 267(f16v1)
    563              285:151(f16vec3) Load 266(f16v2)
    564              286:151(f16vec3) FMod 284 285
    565                               Store 266(f16v2) 286
    566              287:151(f16vec3) Load 267(f16v1)
    567              289:28(float16_t) Load 288(f16)
    568              290:151(f16vec3) CompositeConstruct 289 289 289
    569              291:151(f16vec3) FMod 287 290
    570                               Store 266(f16v2) 291
    571              293:151(f16vec3) Load 267(f16v1)
    572              294:151(f16vec3) ExtInst 1(GLSL.std.450) 35(Modf) 293 266(f16v2)
    573                               Store 292(f16v3) 294
    574              295:151(f16vec3) Load 267(f16v1)
    575              296:151(f16vec3) Load 266(f16v2)
    576              297:151(f16vec3) ExtInst 1(GLSL.std.450) 37(FMin) 295 296
    577                               Store 292(f16v3) 297
    578              298:151(f16vec3) Load 267(f16v1)
    579              299:28(float16_t) Load 288(f16)
    580              300:151(f16vec3) CompositeConstruct 299 299 299
    581              301:151(f16vec3) ExtInst 1(GLSL.std.450) 37(FMin) 298 300
    582                               Store 292(f16v3) 301
    583              302:151(f16vec3) Load 267(f16v1)
    584              303:151(f16vec3) Load 266(f16v2)
    585              304:151(f16vec3) ExtInst 1(GLSL.std.450) 40(FMax) 302 303
    586                               Store 292(f16v3) 304
    587              305:151(f16vec3) Load 267(f16v1)
    588              306:28(float16_t) Load 288(f16)
    589              307:151(f16vec3) CompositeConstruct 306 306 306
    590              308:151(f16vec3) ExtInst 1(GLSL.std.450) 40(FMax) 305 307
    591                               Store 292(f16v3) 308
    592              309:151(f16vec3) Load 267(f16v1)
    593              310:28(float16_t) Load 288(f16)
    594              311:     35(ptr) AccessChain 266(f16v2) 34
    595              312:28(float16_t) Load 311
    596              313:151(f16vec3) CompositeConstruct 310 310 310
    597              314:151(f16vec3) CompositeConstruct 312 312 312
    598              315:151(f16vec3) ExtInst 1(GLSL.std.450) 43(FClamp) 309 313 314
    599                               Store 292(f16v3) 315
    600              316:151(f16vec3) Load 267(f16v1)
    601              317:151(f16vec3) Load 266(f16v2)
    602              318:28(float16_t) Load 288(f16)
    603              319:151(f16vec3) CompositeConstruct 318 318 318
    604              320:151(f16vec3) ExtInst 1(GLSL.std.450) 43(FClamp) 316 317 319
    605                               Store 292(f16v3) 320
    606              321:151(f16vec3) Load 267(f16v1)
    607              322:151(f16vec3) Load 266(f16v2)
    608              323:28(float16_t) Load 288(f16)
    609              324:151(f16vec3) CompositeConstruct 323 323 323
    610              325:151(f16vec3) ExtInst 1(GLSL.std.450) 46(FMix) 321 322 324
    611                               Store 292(f16v3) 325
    612              326:151(f16vec3) Load 267(f16v1)
    613              327:151(f16vec3) Load 266(f16v2)
    614              328:151(f16vec3) Load 292(f16v3)
    615              329:151(f16vec3) ExtInst 1(GLSL.std.450) 46(FMix) 326 327 328
    616                               Store 292(f16v3) 329
    617              330:151(f16vec3) Load 267(f16v1)
    618              331:151(f16vec3) Load 266(f16v2)
    619              333:  154(bvec3) Load 332(bv)
    620              334:151(f16vec3) Select 333 331 330
    621                               Store 292(f16v3) 334
    622              335:151(f16vec3) Load 267(f16v1)
    623              336:151(f16vec3) Load 266(f16v2)
    624              337:151(f16vec3) ExtInst 1(GLSL.std.450) 48(Step) 335 336
    625                               Store 292(f16v3) 337
    626              338:28(float16_t) Load 288(f16)
    627              339:151(f16vec3) Load 292(f16v3)
    628              340:151(f16vec3) CompositeConstruct 338 338 338
    629              341:151(f16vec3) ExtInst 1(GLSL.std.450) 48(Step) 340 339
    630                               Store 292(f16v3) 341
    631              342:151(f16vec3) Load 267(f16v1)
    632              343:151(f16vec3) Load 266(f16v2)
    633              344:151(f16vec3) Load 292(f16v3)
    634              345:151(f16vec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 342 343 344
    635                               Store 292(f16v3) 345
    636              346:28(float16_t) Load 288(f16)
    637              347:     35(ptr) AccessChain 267(f16v1) 34
    638              348:28(float16_t) Load 347
    639              349:151(f16vec3) Load 266(f16v2)
    640              350:151(f16vec3) CompositeConstruct 346 346 346
    641              351:151(f16vec3) CompositeConstruct 348 348 348
    642              352:151(f16vec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 350 351 349
    643                               Store 292(f16v3) 352
    644              354:28(float16_t) Load 288(f16)
    645              355:   109(bool) IsNan 354
    646                               Store 353(b) 355
    647              356:151(f16vec3) Load 267(f16v1)
    648              357:  154(bvec3) IsInf 356
    649                               Store 332(bv) 357
    650              358:151(f16vec3) Load 267(f16v1)
    651              359:151(f16vec3) Load 266(f16v2)
    652              360:151(f16vec3) Load 292(f16v3)
    653              361:151(f16vec3) ExtInst 1(GLSL.std.450) 50(Fma) 358 359 360
    654                               Store 292(f16v3) 361
    655              362:151(f16vec3) Load 267(f16v1)
    656              365:364(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 362
    657              366:  184(ivec3) CompositeExtract 365 1
    658                               Store 363(iv) 366
    659              367:151(f16vec3) CompositeExtract 365 0
    660                               Store 266(f16v2) 367
    661              368:151(f16vec3) Load 267(f16v1)
    662              369:  184(ivec3) Load 363(iv)
    663              370:151(f16vec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 368 369
    664                               Store 266(f16v2) 370
    665                               Return
    666                               FunctionEnd
    667 18(builtinPackUnpackFuncs():           2 Function None 3
    668               19:             Label
    669           372(u):    371(ptr) Variable Function
    670        373(f16v):     30(ptr) Variable Function
    671              374: 29(f16vec2) Load 373(f16v)
    672              375:     33(int) Bitcast 374
    673                               Store 372(u) 375
    674              376:     33(int) Load 372(u)
    675              377: 29(f16vec2) Bitcast 376
    676                               Store 373(f16v) 377
    677                               Return
    678                               FunctionEnd
    679 20(builtinGeometryFuncs():           2 Function None 3
    680               21:             Label
    681         378(f16):     35(ptr) Variable Function
    682       379(f16v1):    152(ptr) Variable Function
    683       383(f16v2):    152(ptr) Variable Function
    684       389(f16v3):    152(ptr) Variable Function
    685              380:151(f16vec3) Load 379(f16v1)
    686              381:28(float16_t) ExtInst 1(GLSL.std.450) 66(Length) 380
    687                               Store 378(f16) 381
    688              382:151(f16vec3) Load 379(f16v1)
    689              384:151(f16vec3) Load 383(f16v2)
    690              385:28(float16_t) ExtInst 1(GLSL.std.450) 67(Distance) 382 384
    691                               Store 378(f16) 385
    692              386:151(f16vec3) Load 379(f16v1)
    693              387:151(f16vec3) Load 383(f16v2)
    694              388:28(float16_t) Dot 386 387
    695                               Store 378(f16) 388
    696              390:151(f16vec3) Load 379(f16v1)
    697              391:151(f16vec3) Load 383(f16v2)
    698              392:151(f16vec3) ExtInst 1(GLSL.std.450) 68(Cross) 390 391
    699                               Store 389(f16v3) 392
    700              393:151(f16vec3) Load 379(f16v1)
    701              394:151(f16vec3) ExtInst 1(GLSL.std.450) 69(Normalize) 393
    702                               Store 383(f16v2) 394
    703              395:151(f16vec3) Load 379(f16v1)
    704              396:151(f16vec3) Load 383(f16v2)
    705              397:151(f16vec3) Load 389(f16v3)
    706              398:151(f16vec3) ExtInst 1(GLSL.std.450) 70(FaceForward) 395 396 397
    707                               Store 389(f16v3) 398
    708              399:151(f16vec3) Load 379(f16v1)
    709              400:151(f16vec3) Load 383(f16v2)
    710              401:151(f16vec3) ExtInst 1(GLSL.std.450) 71(Reflect) 399 400
    711                               Store 389(f16v3) 401
    712              402:151(f16vec3) Load 379(f16v1)
    713              403:151(f16vec3) Load 383(f16v2)
    714              404:28(float16_t) Load 378(f16)
    715              405:151(f16vec3) ExtInst 1(GLSL.std.450) 72(Refract) 402 403 404
    716                               Store 389(f16v3) 405
    717                               Return
    718                               FunctionEnd
    719 22(builtinMatrixFuncs():           2 Function None 3
    720               23:             Label
    721       408(f16m3):    407(ptr) Variable Function
    722       409(f16m1):    407(ptr) Variable Function
    723       411(f16m2):    407(ptr) Variable Function
    724       420(f16v1):    152(ptr) Variable Function
    725       422(f16v2):     30(ptr) Variable Function
    726       427(f16m4):    426(ptr) Variable Function
    727         430(f16):     35(ptr) Variable Function
    728       433(f16m5):    432(ptr) Variable Function
    729       438(f16m6):    437(ptr) Variable Function
    730       439(f16m7):    437(ptr) Variable Function
    731              410:         406 Load 409(f16m1)
    732              412:         406 Load 411(f16m2)
    733              413:151(f16vec3) CompositeExtract 410 0
    734              414:151(f16vec3) CompositeExtract 412 0
    735              415:151(f16vec3) FMul 413 414
    736              416:151(f16vec3) CompositeExtract 410 1
    737              417:151(f16vec3) CompositeExtract 412 1
    738              418:151(f16vec3) FMul 416 417
    739              419:         406 CompositeConstruct 415 418
    740                               Store 408(f16m3) 419
    741              421:151(f16vec3) Load 420(f16v1)
    742              423: 29(f16vec2) Load 422(f16v2)
    743              424:         406 OuterProduct 421 423
    744                               Store 409(f16m1) 424
    745              428:         406 Load 409(f16m1)
    746              429:         425 Transpose 428
    747                               Store 427(f16m4) 429
    748              434:         431 Load 433(f16m5)
    749              435:28(float16_t) ExtInst 1(GLSL.std.450) 33(Determinant) 434
    750                               Store 430(f16) 435
    751              440:         436 Load 439(f16m7)
    752              441:         436 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 440
    753                               Store 438(f16m6) 441
    754                               Return
    755                               FunctionEnd
    756 24(builtinVecRelFuncs():           2 Function None 3
    757               25:             Label
    758          442(bv):    155(ptr) Variable Function
    759       443(f16v1):    152(ptr) Variable Function
    760       445(f16v2):    152(ptr) Variable Function
    761              444:151(f16vec3) Load 443(f16v1)
    762              446:151(f16vec3) Load 445(f16v2)
    763              447:  154(bvec3) FOrdLessThan 444 446
    764                               Store 442(bv) 447
    765              448:151(f16vec3) Load 443(f16v1)
    766              449:151(f16vec3) Load 445(f16v2)
    767              450:  154(bvec3) FOrdLessThanEqual 448 449
    768                               Store 442(bv) 450
    769              451:151(f16vec3) Load 443(f16v1)
    770              452:151(f16vec3) Load 445(f16v2)
    771              453:  154(bvec3) FOrdGreaterThan 451 452
    772                               Store 442(bv) 453
    773              454:151(f16vec3) Load 443(f16v1)
    774              455:151(f16vec3) Load 445(f16v2)
    775              456:  154(bvec3) FOrdGreaterThanEqual 454 455
    776                               Store 442(bv) 456
    777              457:151(f16vec3) Load 443(f16v1)
    778              458:151(f16vec3) Load 445(f16v2)
    779              459:  154(bvec3) FOrdEqual 457 458
    780                               Store 442(bv) 459
    781              460:151(f16vec3) Load 443(f16v1)
    782              461:151(f16vec3) Load 445(f16v2)
    783              462:  154(bvec3) FOrdNotEqual 460 461
    784                               Store 442(bv) 462
    785                               Return
    786                               FunctionEnd
    787 26(builtinFragProcFuncs():           2 Function None 3
    788               27:             Label
    789        463(f16v):    152(ptr) Variable Function
    790              467:    466(ptr) AccessChain 465(if16v) 34
    791              468:28(float16_t) Load 467
    792              469:28(float16_t) DPdx 468
    793              470:     35(ptr) AccessChain 463(f16v) 34
    794                               Store 470 469
    795              471:    466(ptr) AccessChain 465(if16v) 90
    796              472:28(float16_t) Load 471
    797              473:28(float16_t) DPdy 472
    798              474:     35(ptr) AccessChain 463(f16v) 90
    799                               Store 474 473
    800              475:151(f16vec3) Load 465(if16v)
    801              476: 29(f16vec2) VectorShuffle 475 475 0 1
    802              477: 29(f16vec2) DPdxFine 476
    803              478:151(f16vec3) Load 463(f16v)
    804              479:151(f16vec3) VectorShuffle 478 477 3 4 2
    805                               Store 463(f16v) 479
    806              480:151(f16vec3) Load 465(if16v)
    807              481: 29(f16vec2) VectorShuffle 480 480 0 1
    808              482: 29(f16vec2) DPdyFine 481
    809              483:151(f16vec3) Load 463(f16v)
    810              484:151(f16vec3) VectorShuffle 483 482 3 4 2
    811                               Store 463(f16v) 484
    812              485:151(f16vec3) Load 465(if16v)
    813              486:151(f16vec3) DPdxCoarse 485
    814                               Store 463(f16v) 486
    815              487:151(f16vec3) Load 465(if16v)
    816              488:151(f16vec3) DPdxCoarse 487
    817                               Store 463(f16v) 488
    818              489:    466(ptr) AccessChain 465(if16v) 34
    819              490:28(float16_t) Load 489
    820              491:28(float16_t) Fwidth 490
    821              492:     35(ptr) AccessChain 463(f16v) 34
    822                               Store 492 491
    823              493:151(f16vec3) Load 465(if16v)
    824              494: 29(f16vec2) VectorShuffle 493 493 0 1
    825              495: 29(f16vec2) FwidthFine 494
    826              496:151(f16vec3) Load 463(f16v)
    827              497:151(f16vec3) VectorShuffle 496 495 3 4 2
    828                               Store 463(f16v) 497
    829              498:151(f16vec3) Load 465(if16v)
    830              499:151(f16vec3) FwidthCoarse 498
    831                               Store 463(f16v) 499
    832              500:    466(ptr) AccessChain 465(if16v) 34
    833              501:28(float16_t) ExtInst 1(GLSL.std.450) 76(InterpolateAtCentroid) 500
    834              502:     35(ptr) AccessChain 463(f16v) 34
    835                               Store 502 501
    836              504:151(f16vec3) ExtInst 1(GLSL.std.450) 77(InterpolateAtSample) 465(if16v) 503
    837              505: 29(f16vec2) VectorShuffle 504 504 0 1
    838              506:151(f16vec3) Load 463(f16v)
    839              507:151(f16vec3) VectorShuffle 506 505 3 4 2
    840                               Store 463(f16v) 507
    841              510:151(f16vec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 465(if16v) 509
    842                               Store 463(f16v) 510
    843                               Return
    844                               FunctionEnd
    845