spv.ext.RayGenSBTlayout140.rgen
// Module Version 10400
// Generated by (magic number): 8000b
// Id's are bound by 74

                              Capability Int64
                              Capability RayTracingKHR
                              Extension  "SPV_KHR_ray_tracing"
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint RayGenerationKHR 4  "main" 11 21 38 60
                              Source GLSL 460
                              SourceExtension  "GL_ARB_gpu_shader_int64"
                              SourceExtension  "GL_EXT_ray_tracing"
                              Name 4  "main"
                              Name 8  "lx"
                              Name 11  "gl_LaunchIDEXT"
                              Name 16  "ly"
                              Name 20  "sx"
                              Name 21  "gl_LaunchSizeEXT"
                              Name 24  "sy"
                              Name 36  "block"
                              MemberName 36(block) 0  "dir"
                              MemberName 36(block) 1  "origin"
                              MemberName 36(block) 2  "i"
                              MemberName 36(block) 3  "aHandle32"
                              MemberName 36(block) 4  "aHandle64"
                              MemberName 36(block) 5  "arr"
                              MemberName 36(block) 6  "a"
                              MemberName 36(block) 7  "arr3"
                              MemberName 36(block) 8  "packme"
                              MemberName 36(block) 9  "b"
                              MemberName 36(block) 10  "c"
                              Name 38  ""
                              Name 60  "payload"
                              Decorate 11(gl_LaunchIDEXT) BuiltIn LaunchIdKHR
                              Decorate 21(gl_LaunchSizeEXT) BuiltIn LaunchSizeKHR
                              Decorate 34 ArrayStride 16
                              Decorate 35 ArrayStride 16
                              MemberDecorate 36(block) 0 Offset 0
                              MemberDecorate 36(block) 1 Offset 16
                              MemberDecorate 36(block) 2 Offset 28
                              MemberDecorate 36(block) 3 Offset 32
                              MemberDecorate 36(block) 4 Offset 40
                              MemberDecorate 36(block) 5 Offset 48
                              MemberDecorate 36(block) 6 Offset 80
                              MemberDecorate 36(block) 7 Offset 96
                              MemberDecorate 36(block) 8 Offset 128
                              MemberDecorate 36(block) 9 Offset 136
                              MemberDecorate 36(block) 10 Offset 144
                              Decorate 36(block) Block
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 0
               7:             TypePointer Function 6(int)
               9:             TypeVector 6(int) 3
              10:             TypePointer Input 9(ivec3)
11(gl_LaunchIDEXT):     10(ptr) Variable Input
              12:      6(int) Constant 0
              13:             TypePointer Input 6(int)
              17:      6(int) Constant 1
21(gl_LaunchSizeEXT):     10(ptr) Variable Input
              27:             TypeFloat 32
              28:             TypeVector 27(float) 3
              29:             TypeInt 32 1
              30:             TypeVector 6(int) 2
              31:             TypeInt 64 0
              32:             TypeVector 27(float) 2
              33:      6(int) Constant 2
              34:             TypeArray 32(fvec2) 33
              35:             TypeArray 28(fvec3) 33
       36(block):             TypeStruct 28(fvec3) 28(fvec3) 29(int) 30(ivec2) 31(int64_t) 34 27(float) 35 27(float) 32(fvec2) 27(float)
              37:             TypePointer ShaderRecordBufferKHR 36(block)
              38:     37(ptr) Variable ShaderRecordBufferKHR
              39:     29(int) Constant 3
              40:             TypePointer ShaderRecordBufferKHR 30(ivec2)
              43:             TypeAccelerationStructureKHR
              49:     29(int) Constant 1
              50:             TypePointer ShaderRecordBufferKHR 28(fvec3)
              53:   27(float) Constant 1056964608
              54:     29(int) Constant 0
              57:   27(float) Constant 1061158912
              58:             TypeVector 27(float) 4
              59:             TypePointer RayPayloadKHR 58(fvec4)
     60(payload):     59(ptr) Variable RayPayloadKHR
              61:     29(int) Constant 4
              62:             TypePointer ShaderRecordBufferKHR 31(int64_t)
         4(main):           2 Function None 3
               5:             Label
           8(lx):      7(ptr) Variable Function
          16(ly):      7(ptr) Variable Function
          20(sx):      7(ptr) Variable Function
          24(sy):      7(ptr) Variable Function
              14:     13(ptr) AccessChain 11(gl_LaunchIDEXT) 12
              15:      6(int) Load 14
                              Store 8(lx) 15
              18:     13(ptr) AccessChain 11(gl_LaunchIDEXT) 17
              19:      6(int) Load 18
                              Store 16(ly) 19
              22:     13(ptr) AccessChain 21(gl_LaunchSizeEXT) 12
              23:      6(int) Load 22
                              Store 20(sx) 23
              25:     13(ptr) AccessChain 21(gl_LaunchSizeEXT) 17
              26:      6(int) Load 25
                              Store 24(sy) 26
              41:     40(ptr) AccessChain 38 39
              42:   30(ivec2) Load 41
              44:          43 ConvertUToAccelerationStructureKHR 42
              45:      6(int) Load 8(lx)
              46:      6(int) Load 16(ly)
              47:      6(int) Load 20(sx)
              48:      6(int) Load 24(sy)
              51:     50(ptr) AccessChain 38 49
              52:   28(fvec3) Load 51
              55:     50(ptr) AccessChain 38 54
              56:   28(fvec3) Load 55
                              TraceRayKHR 44 45 46 47 48 12 52 53 56 57 60(payload)
              63:     62(ptr) AccessChain 38 61
              64: 31(int64_t) Load 63
              65:          43 ConvertUToAccelerationStructureKHR 64
              66:      6(int) Load 8(lx)
              67:      6(int) Load 16(ly)
              68:      6(int) Load 20(sx)
              69:      6(int) Load 24(sy)
              70:     50(ptr) AccessChain 38 49
              71:   28(fvec3) Load 70
              72:     50(ptr) AccessChain 38 54
              73:   28(fvec3) Load 72
                              TraceRayKHR 65 66 67 68 69 12 71 53 73 57 60(payload)
                              Return
                              FunctionEnd
