spv.int64.frag
Validation failed
// Module Version 10000
// Generated by (magic number): 8000a
// 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
