| spv.ext.ClosestHitShader_Subgroup.rchit |
| // Module Version 10400 |
| // Generated by (magic number): 8000a |
| // Id's are bound by 67 |
| |
| Capability Int64 |
| Capability GroupNonUniform |
| Capability GroupNonUniformBallot |
| Capability SubgroupBallotKHR |
| Capability RayTracingKHR |
| Capability VulkanMemoryModelKHR |
| Capability ShaderSMBuiltinsNV |
| Extension "SPV_KHR_ray_tracing" |
| Extension "SPV_KHR_shader_ballot" |
| Extension "SPV_KHR_vulkan_memory_model" |
| Extension "SPV_NV_shader_sm_builtins" |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical VulkanKHR |
| EntryPoint ClosestHitKHR 4 "main" 8 26 28 34 43 48 53 61 |
| Source GLSL 460 |
| SourceExtension "GL_ARB_shader_ballot" |
| SourceExtension "GL_EXT_ray_tracing" |
| SourceExtension "GL_KHR_shader_subgroup_ballot" |
| SourceExtension "GL_KHR_shader_subgroup_basic" |
| SourceExtension "GL_NV_shader_sm_builtins" |
| Name 4 "main" |
| Name 8 "accEXT" |
| Name 26 "incomingPayload" |
| Name 28 "gl_SubgroupInvocationID" |
| Name 34 "gl_SubGroupGeMaskARB" |
| Name 43 "gl_SubgroupGtMask" |
| Name 48 "gl_SubgroupLeMask" |
| Name 53 "gl_SubGroupLtMaskARB" |
| Name 61 "gl_SMIDNV" |
| Decorate 8(accEXT) DescriptorSet 0 |
| Decorate 8(accEXT) Binding 0 |
| Decorate 26(incomingPayload) Location 1 |
| Decorate 28(gl_SubgroupInvocationID) RelaxedPrecision |
| Decorate 28(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId |
| Decorate 29 RelaxedPrecision |
| Decorate 34(gl_SubGroupGeMaskARB) BuiltIn SubgroupGeMaskKHR |
| Decorate 43(gl_SubgroupGtMask) BuiltIn SubgroupGtMaskKHR |
| Decorate 48(gl_SubgroupLeMask) BuiltIn SubgroupLeMaskKHR |
| Decorate 53(gl_SubGroupLtMaskARB) BuiltIn SubgroupLtMaskKHR |
| Decorate 61(gl_SMIDNV) BuiltIn SMIDNV |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeAccelerationStructureKHR |
| 7: TypePointer UniformConstant 6 |
| 8(accEXT): 7(ptr) Variable UniformConstant |
| 10: TypeInt 32 0 |
| 11: 10(int) Constant 0 |
| 12: 10(int) Constant 1 |
| 13: 10(int) Constant 2 |
| 14: 10(int) Constant 3 |
| 15: TypeFloat 32 |
| 16: TypeVector 15(float) 3 |
| 17: 15(float) Constant 1056964608 |
| 18: 16(fvec3) ConstantComposite 17 17 17 |
| 19: 15(float) Constant 1065353216 |
| 20: 16(fvec3) ConstantComposite 19 19 19 |
| 21: 15(float) Constant 1061158912 |
| 22: TypeInt 32 1 |
| 23: 22(int) Constant 1 |
| 24: TypeVector 15(float) 4 |
| 25: TypePointer IncomingRayPayloadKHR 24(fvec4) |
| 26(incomingPayload): 25(ptr) Variable IncomingRayPayloadKHR |
| 27: TypePointer Input 10(int) |
| 28(gl_SubgroupInvocationID): 27(ptr) Variable Input |
| 31: TypeVector 10(int) 4 |
| 32: TypeInt 64 0 |
| 33: TypePointer Input 31(ivec4) |
| 34(gl_SubGroupGeMaskARB): 33(ptr) Variable Input |
| 38: TypeVector 10(int) 2 |
| 43(gl_SubgroupGtMask): 33(ptr) Variable Input |
| 48(gl_SubgroupLeMask): 33(ptr) Variable Input |
| 53(gl_SubGroupLtMaskARB): 33(ptr) Variable Input |
| 61(gl_SMIDNV): 27(ptr) Variable Input |
| 65: TypePointer IncomingRayPayloadKHR 15(float) |
| 4(main): 2 Function None 3 |
| 5: Label |
| 9: 6 Load 8(accEXT) |
| TraceRayKHR 9 11 12 13 14 11 18 17 20 21 26(incomingPayload) |
| 29: 10(int) Load 28(gl_SubgroupInvocationID) Volatile |
| 30: 15(float) ConvertUToF 29 |
| 35: 31(ivec4) Load 34(gl_SubGroupGeMaskARB) |
| 36: 10(int) CompositeExtract 35 0 |
| 37: 10(int) CompositeExtract 35 1 |
| 39: 38(ivec2) CompositeConstruct 36 37 |
| 40: 32(int64_t) Bitcast 39 |
| 41: 15(float) ConvertUToF 40 |
| 42: 15(float) FAdd 30 41 |
| 44: 31(ivec4) Load 43(gl_SubgroupGtMask) Volatile |
| 45: 24(fvec4) ConvertUToF 44 |
| 46: 15(float) CompositeExtract 45 0 |
| 47: 15(float) FAdd 42 46 |
| 49: 31(ivec4) Load 48(gl_SubgroupLeMask) Volatile |
| 50: 24(fvec4) ConvertUToF 49 |
| 51: 15(float) CompositeExtract 50 0 |
| 52: 15(float) FAdd 47 51 |
| 54: 31(ivec4) Load 53(gl_SubGroupLtMaskARB) |
| 55: 10(int) CompositeExtract 54 0 |
| 56: 10(int) CompositeExtract 54 1 |
| 57: 38(ivec2) CompositeConstruct 55 56 |
| 58: 32(int64_t) Bitcast 57 |
| 59: 15(float) ConvertUToF 58 |
| 60: 15(float) FAdd 52 59 |
| 62: 10(int) Load 61(gl_SMIDNV) Volatile |
| 63: 15(float) ConvertUToF 62 |
| 64: 15(float) FAdd 60 63 |
| 66: 65(ptr) AccessChain 26(incomingPayload) 11 |
| Store 66 64 |
| Return |
| FunctionEnd |