spv.ClosestHitShaderMotion.rchit
// Module Version 10400
// Generated by (magic number): 8000b
// Id's are bound by 33

                              Capability RayTracingKHR
                              Capability RayTracingMotionBlurNV
                              Extension  "SPV_KHR_ray_tracing"
                              Extension  "SPV_NV_ray_tracing_motion_blur"
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint ClosestHitKHR 4  "main" 10 16 32
                              Source GLSL 460
                              SourceExtension  "GL_EXT_ray_tracing"
                              SourceExtension  "GL_NV_ray_tracing_motion_blur"
                              Name 4  "main"
                              Name 8  "time"
                              Name 10  "gl_CurrentRayTimeNV"
                              Name 16  "accEXT"
                              Name 32  "incomingPayloadEXT"
                              Decorate 10(gl_CurrentRayTimeNV) BuiltIn CurrentRayTimeNV
                              Decorate 16(accEXT) DescriptorSet 0
                              Decorate 16(accEXT) Binding 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypePointer Function 6(float)
               9:             TypePointer Input 6(float)
10(gl_CurrentRayTimeNV):      9(ptr) Variable Input
              12:    6(float) Constant 1056964608
              14:             TypeAccelerationStructureKHR
              15:             TypePointer UniformConstant 14
      16(accEXT):     15(ptr) Variable UniformConstant
              18:             TypeInt 32 0
              19:     18(int) Constant 0
              20:     18(int) Constant 1
              21:     18(int) Constant 2
              22:     18(int) Constant 3
              23:             TypeVector 6(float) 3
              24:   23(fvec3) ConstantComposite 12 12 12
              25:    6(float) Constant 1065353216
              26:   23(fvec3) ConstantComposite 25 25 25
              27:    6(float) Constant 1061158912
              28:             TypeInt 32 1
              29:     28(int) Constant 0
              30:             TypeVector 6(float) 4
              31:             TypePointer IncomingRayPayloadKHR 30(fvec4)
32(incomingPayloadEXT):     31(ptr) Variable IncomingRayPayloadKHR
         4(main):           2 Function None 3
               5:             Label
         8(time):      7(ptr) Variable Function
              11:    6(float) Load 10(gl_CurrentRayTimeNV)
              13:    6(float) FAdd 11 12
                              Store 8(time) 13
              17:          14 Load 16(accEXT)
                              TraceRayMotionNV 17 19 20 21 22 19 24 12 26 27 25 32(incomingPayloadEXT)
                              Return
                              FunctionEnd
