spv.int64.frag
Validation failed
// Module Version 10000
// Generated by (magic number): 80007
// Id's are bound by 489

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