spv.ext.World3x4.rahit
// Module Version 10400
// Generated by (magic number): 8000a
// Id's are bound by 90

                              Capability RayTracingKHR
                              Extension  "SPV_KHR_ray_tracing"
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint AnyHitKHR 4  "main" 43 60 78 87 89
                              Source GLSL 460
                              SourceExtension  "GL_EXT_ray_tracing"
                              Name 4  "main"
                              Name 8  "k"
                              Name 12  "ndx"
                              Name 14  "col"
                              Name 25  "row"
                              Name 39  "p"
                              Name 43  "gl_LaunchIDEXT"
                              Name 53  "r"
                              Name 60  "gl_WorldToObject3x4EXT"
                              Name 66  "indexable"
                              Name 72  "c"
                              Name 78  "result"
                              Name 87  "attribs"
                              Name 89  "hitValue"
                              Decorate 43(gl_LaunchIDEXT) BuiltIn LaunchIdKHR
                              Decorate 60(gl_WorldToObject3x4EXT) BuiltIn WorldToObjectKHR
                              Decorate 78(result) DescriptorSet 0
                              Decorate 78(result) Binding 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypePointer Function 6(float)
               9:    6(float) Constant 1233125376
              10:             TypeInt 32 1
              11:             TypePointer Function 10(int)
              13:     10(int) Constant 4294967295
              15:     10(int) Constant 0
              22:     10(int) Constant 3
              23:             TypeBool
              32:     10(int) Constant 4
              35:     10(int) Constant 1
              37:             TypeVector 10(int) 3
              38:             TypePointer Function 37(ivec3)
              40:             TypeInt 32 0
              41:             TypeVector 40(int) 3
              42:             TypePointer Input 41(ivec3)
43(gl_LaunchIDEXT):     42(ptr) Variable Input
              44:             TypeVector 40(int) 2
              47:             TypeVector 10(int) 2
              55:             TypeVector 6(float) 3
              56:             TypeMatrix 55(fvec3) 4
              57:             TypeVector 6(float) 4
              58:             TypeMatrix 57(fvec4) 3
              59:             TypePointer Input 56
60(gl_WorldToObject3x4EXT):     59(ptr) Variable Input
              65:             TypePointer Function 58
              70:             TypeVector 10(int) 4
              71:             TypePointer Function 70(ivec4)
              76:             TypeImage 10(int) 3D nonsampled format:R32i
              77:             TypePointer UniformConstant 76
      78(result):     77(ptr) Variable UniformConstant
              86:             TypePointer HitAttributeKHR 55(fvec3)
     87(attribs):     86(ptr) Variable HitAttributeKHR
              88:             TypePointer IncomingRayPayloadKHR 55(fvec3)
    89(hitValue):     88(ptr) Variable IncomingRayPayloadKHR
         4(main):           2 Function None 3
               5:             Label
            8(k):      7(ptr) Variable Function
         12(ndx):     11(ptr) Variable Function
         14(col):     11(ptr) Variable Function
         25(row):     11(ptr) Variable Function
           39(p):     38(ptr) Variable Function
           53(r):      7(ptr) Variable Function
   66(indexable):     65(ptr) Variable Function
           72(c):     71(ptr) Variable Function
                              Store 8(k) 9
                              Store 12(ndx) 13
                              Store 14(col) 15
                              Branch 16
              16:             Label
                              LoopMerge 18 19 None
                              Branch 20
              20:             Label
              21:     10(int) Load 14(col)
              24:    23(bool) SLessThan 21 22
                              BranchConditional 24 17 18
              17:               Label
                                Store 25(row) 15
                                Branch 26
              26:               Label
                                LoopMerge 28 29 None
                                Branch 30
              30:               Label
              31:     10(int)   Load 25(row)
              33:    23(bool)   SLessThan 31 32
                                BranchConditional 33 27 28
              27:                 Label
              34:     10(int)     Load 12(ndx)
              36:     10(int)     IAdd 34 35
                                  Store 12(ndx) 36
              45:   41(ivec3)     Load 43(gl_LaunchIDEXT)
              46:   44(ivec2)     VectorShuffle 45 45 0 1
              48:   47(ivec2)     Bitcast 46
              49:     10(int)     Load 12(ndx)
              50:     10(int)     CompositeExtract 48 0
              51:     10(int)     CompositeExtract 48 1
              52:   37(ivec3)     CompositeConstruct 50 51 49
                                  Store 39(p) 52
              54:    6(float)     Load 8(k)
              61:          56     Load 60(gl_WorldToObject3x4EXT)
              62:          58     Transpose 61
              63:     10(int)     Load 14(col)
              64:     10(int)     Load 25(row)
                                  Store 66(indexable) 62
              67:      7(ptr)     AccessChain 66(indexable) 63 64
              68:    6(float)     Load 67
              69:    6(float)     FMul 54 68
                                  Store 53(r) 69
              73:    6(float)     Load 53(r)
              74:     10(int)     ConvertFToS 73
              75:   70(ivec4)     CompositeConstruct 74 15 15 35
                                  Store 72(c) 75
              79:          76     Load 78(result)
              80:   37(ivec3)     Load 39(p)
              81:   70(ivec4)     Load 72(c)
                                  ImageWrite 79 80 81 SignExtend 
                                  Branch 29
              29:                 Label
              82:     10(int)     Load 25(row)
              83:     10(int)     IAdd 82 35
                                  Store 25(row) 83
                                  Branch 26
              28:               Label
                                Branch 19
              19:               Label
              84:     10(int)   Load 14(col)
              85:     10(int)   IAdd 84 35
                                Store 14(col) 85
                                Branch 16
              18:             Label
                              Return
                              FunctionEnd
