spv.float64.frag
Validation failed
// Module Version 10300
// Generated by (magic number): 8000a
// Id's are bound by 532

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