Adding support for GL_EXT_ray_cull_mask

This commit is contained in:
Marius Bjorge
2022-05-05 12:56:04 +02:00
parent e3bca2add6
commit 3015d00ee0
15 changed files with 231 additions and 156 deletions

View File

@@ -1,15 +1,18 @@
spv.ext.AnyHitShader.rahit
// Module Version 10400
// Generated by (magic number): 8000a
// Id's are bound by 107
// Id's are bound by 110
Capability GroupNonUniform
Capability RayTracingKHR
Capability RayCullMaskKHR
Extension "SPV_KHR_ray_cull_mask"
Extension "SPV_KHR_ray_tracing"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint AnyHitKHR 4 "main" 11 14 20 23 26 33 36 39 42 47 50 53 58 64 67 70 76 80 84 98
EntryPoint AnyHitKHR 4 "main" 11 14 20 23 26 33 36 39 42 47 50 53 58 64 67 70 76 80 84 87 101
Source GLSL 460
SourceExtension "GL_EXT_ray_cull_mask"
SourceExtension "GL_EXT_ray_tracing"
SourceExtension "GL_KHR_shader_subgroup_basic"
Name 4 "main"
@@ -49,8 +52,10 @@ spv.ext.AnyHitShader.rahit
Name 76 "gl_ObjectToWorld3x4EXT"
Name 79 "v17"
Name 80 "gl_WorldToObject3x4EXT"
Name 84 "incomingPayload"
Name 98 "gl_SubgroupSize"
Name 83 "v18"
Name 84 "gl_CullMaskEXT"
Name 87 "incomingPayload"
Name 101 "gl_SubgroupSize"
Decorate 11(gl_LaunchIDEXT) BuiltIn LaunchIdKHR
Decorate 14(gl_LaunchSizeEXT) BuiltIn LaunchSizeKHR
Decorate 20(gl_PrimitiveID) BuiltIn PrimitiveId
@@ -69,10 +74,11 @@ spv.ext.AnyHitShader.rahit
Decorate 70(gl_GeometryIndexEXT) BuiltIn RayGeometryIndexKHR
Decorate 76(gl_ObjectToWorld3x4EXT) BuiltIn ObjectToWorldKHR
Decorate 80(gl_WorldToObject3x4EXT) BuiltIn WorldToObjectKHR
Decorate 98(gl_SubgroupSize) RelaxedPrecision
Decorate 98(gl_SubgroupSize) BuiltIn SubgroupSize
Decorate 99 RelaxedPrecision
Decorate 100 RelaxedPrecision
Decorate 84(gl_CullMaskEXT) BuiltIn CullMaskKHR
Decorate 101(gl_SubgroupSize) RelaxedPrecision
Decorate 101(gl_SubgroupSize) BuiltIn SubgroupSize
Decorate 102 RelaxedPrecision
Decorate 103 RelaxedPrecision
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 0
@@ -114,15 +120,16 @@ spv.ext.AnyHitShader.rahit
74: TypePointer Function 73
76(gl_ObjectToWorld3x4EXT): 63(ptr) Variable Input
80(gl_WorldToObject3x4EXT): 63(ptr) Variable Input
83: TypePointer IncomingRayPayloadKHR 72(fvec4)
84(incomingPayload): 83(ptr) Variable IncomingRayPayloadKHR
85: 28(float) Constant 1056964608
86: 72(fvec4) ConstantComposite 85 85 85 85
88: 16(int) Constant 1
89: TypeBool
94: 6(int) Constant 0
98(gl_SubgroupSize): 57(ptr) Variable Input
101: TypePointer IncomingRayPayloadKHR 28(float)
84(gl_CullMaskEXT): 57(ptr) Variable Input
86: TypePointer IncomingRayPayloadKHR 72(fvec4)
87(incomingPayload): 86(ptr) Variable IncomingRayPayloadKHR
88: 28(float) Constant 1056964608
89: 72(fvec4) ConstantComposite 88 88 88 88
91: 16(int) Constant 1
92: TypeBool
97: 6(int) Constant 0
101(gl_SubgroupSize): 57(ptr) Variable Input
104: TypePointer IncomingRayPayloadKHR 28(float)
4(main): 2 Function None 3
5: Label
9(v0): 8(ptr) Variable Function
@@ -143,6 +150,7 @@ spv.ext.AnyHitShader.rahit
69(v15): 17(ptr) Variable Function
75(v16): 74(ptr) Variable Function
79(v17): 74(ptr) Variable Function
83(v18): 55(ptr) Variable Function
12: 7(ivec3) Load 11(gl_LaunchIDEXT)
Store 9(v0) 12
15: 7(ivec3) Load 14(gl_LaunchSizeEXT)
@@ -181,20 +189,22 @@ spv.ext.AnyHitShader.rahit
81: 60 Load 80(gl_WorldToObject3x4EXT)
82: 73 Transpose 81
Store 79(v17) 82
Store 84(incomingPayload) 86
87: 16(int) Load 18(v2)
90: 89(bool) IEqual 87 88
SelectionMerge 92 None
BranchConditional 90 91 92
91: Label
85: 6(int) Load 84(gl_CullMaskEXT)
Store 83(v18) 85
Store 87(incomingPayload) 89
90: 16(int) Load 18(v2)
93: 92(bool) IEqual 90 91
SelectionMerge 95 None
BranchConditional 93 94 95
94: Label
IgnoreIntersectionKHR
92: Label
99: 6(int) Load 98(gl_SubgroupSize)
100: 28(float) ConvertUToF 99
102: 101(ptr) AccessChain 84(incomingPayload) 94
103: 28(float) Load 102
104: 28(float) FAdd 103 100
105: 101(ptr) AccessChain 84(incomingPayload) 94
Store 105 104
95: Label
102: 6(int) Load 101(gl_SubgroupSize)
103: 28(float) ConvertUToF 102
105: 104(ptr) AccessChain 87(incomingPayload) 97
106: 28(float) Load 105
107: 28(float) FAdd 106 103
108: 104(ptr) AccessChain 87(incomingPayload) 97
Store 108 107
TerminateRayKHR
FunctionEnd

View File

@@ -1,14 +1,17 @@
spv.ext.ClosestHitShader.rchit
// Module Version 10400
// Generated by (magic number): 8000a
// Id's are bound by 101
// Id's are bound by 104
Capability RayTracingKHR
Capability RayCullMaskKHR
Extension "SPV_KHR_ray_cull_mask"
Extension "SPV_KHR_ray_tracing"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint ClosestHitKHR 4 "main" 11 14 20 23 26 33 36 39 42 47 50 53 58 64 67 70 76 80 85 98 100
EntryPoint ClosestHitKHR 4 "main" 11 14 20 23 26 33 36 39 42 47 50 53 58 64 67 70 76 80 84 88 101 103
Source GLSL 460
SourceExtension "GL_EXT_ray_cull_mask"
SourceExtension "GL_EXT_ray_tracing"
Name 4 "main"
Name 9 "v0"
@@ -47,9 +50,11 @@ spv.ext.ClosestHitShader.rchit
Name 76 "gl_ObjectToWorld3x4EXT"
Name 79 "v17"
Name 80 "gl_WorldToObject3x4EXT"
Name 85 "accEXT"
Name 98 "incomingPayload"
Name 100 "localPayload"
Name 83 "v18"
Name 84 "gl_CullMaskEXT"
Name 88 "accEXT"
Name 101 "incomingPayload"
Name 103 "localPayload"
Decorate 11(gl_LaunchIDEXT) BuiltIn LaunchIdKHR
Decorate 14(gl_LaunchSizeEXT) BuiltIn LaunchSizeKHR
Decorate 20(gl_PrimitiveID) BuiltIn PrimitiveId
@@ -68,8 +73,9 @@ spv.ext.ClosestHitShader.rchit
Decorate 70(gl_GeometryIndexEXT) BuiltIn RayGeometryIndexKHR
Decorate 76(gl_ObjectToWorld3x4EXT) BuiltIn ObjectToWorldKHR
Decorate 80(gl_WorldToObject3x4EXT) BuiltIn WorldToObjectKHR
Decorate 85(accEXT) DescriptorSet 0
Decorate 85(accEXT) Binding 0
Decorate 84(gl_CullMaskEXT) BuiltIn CullMaskKHR
Decorate 88(accEXT) DescriptorSet 0
Decorate 88(accEXT) Binding 0
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 0
@@ -111,23 +117,24 @@ spv.ext.ClosestHitShader.rchit
74: TypePointer Function 73
76(gl_ObjectToWorld3x4EXT): 63(ptr) Variable Input
80(gl_WorldToObject3x4EXT): 63(ptr) Variable Input
83: TypeAccelerationStructureKHR
84: TypePointer UniformConstant 83
85(accEXT): 84(ptr) Variable UniformConstant
87: 6(int) Constant 0
88: 6(int) Constant 1
89: 6(int) Constant 2
90: 6(int) Constant 3
91: 28(float) Constant 1056964608
92: 29(fvec3) ConstantComposite 91 91 91
93: 28(float) Constant 1065353216
94: 29(fvec3) ConstantComposite 93 93 93
95: 28(float) Constant 1061158912
96: 16(int) Constant 1
97: TypePointer IncomingRayPayloadKHR 72(fvec4)
98(incomingPayload): 97(ptr) Variable IncomingRayPayloadKHR
99: TypePointer RayPayloadKHR 72(fvec4)
100(localPayload): 99(ptr) Variable RayPayloadKHR
84(gl_CullMaskEXT): 57(ptr) Variable Input
86: TypeAccelerationStructureKHR
87: TypePointer UniformConstant 86
88(accEXT): 87(ptr) Variable UniformConstant
90: 6(int) Constant 0
91: 6(int) Constant 1
92: 6(int) Constant 2
93: 6(int) Constant 3
94: 28(float) Constant 1056964608
95: 29(fvec3) ConstantComposite 94 94 94
96: 28(float) Constant 1065353216
97: 29(fvec3) ConstantComposite 96 96 96
98: 28(float) Constant 1061158912
99: 16(int) Constant 1
100: TypePointer IncomingRayPayloadKHR 72(fvec4)
101(incomingPayload): 100(ptr) Variable IncomingRayPayloadKHR
102: TypePointer RayPayloadKHR 72(fvec4)
103(localPayload): 102(ptr) Variable RayPayloadKHR
4(main): 2 Function None 3
5: Label
9(v0): 8(ptr) Variable Function
@@ -148,6 +155,7 @@ spv.ext.ClosestHitShader.rchit
69(v15): 17(ptr) Variable Function
75(v16): 74(ptr) Variable Function
79(v17): 74(ptr) Variable Function
83(v18): 55(ptr) Variable Function
12: 7(ivec3) Load 11(gl_LaunchIDEXT)
Store 9(v0) 12
15: 7(ivec3) Load 14(gl_LaunchSizeEXT)
@@ -186,7 +194,9 @@ spv.ext.ClosestHitShader.rchit
81: 60 Load 80(gl_WorldToObject3x4EXT)
82: 73 Transpose 81
Store 79(v17) 82
86: 83 Load 85(accEXT)
TraceRayKHR 86 87 88 89 90 87 92 91 94 95 98(incomingPayload)
85: 6(int) Load 84(gl_CullMaskEXT)
Store 83(v18) 85
89: 86 Load 88(accEXT)
TraceRayKHR 89 90 91 92 93 90 95 94 97 98 101(incomingPayload)
Return
FunctionEnd

View File

@@ -1,14 +1,17 @@
spv.ext.IntersectShader.rint
// Module Version 10400
// Generated by (magic number): 8000a
// Id's are bound by 81
// Id's are bound by 86
Capability RayTracingKHR
Capability RayCullMaskKHR
Extension "SPV_KHR_ray_cull_mask"
Extension "SPV_KHR_ray_tracing"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint IntersectionKHR 4 "main" 11 14 20 23 26 33 36 39 42 47 50 56 59 65 69 73
EntryPoint IntersectionKHR 4 "main" 11 14 20 23 26 33 36 39 42 47 50 56 59 65 69 75 78
Source GLSL 460
SourceExtension "GL_EXT_ray_cull_mask"
SourceExtension "GL_EXT_ray_tracing"
Name 4 "main"
Name 9 "v0"
@@ -41,7 +44,9 @@ spv.ext.IntersectShader.rint
Name 65 "gl_ObjectToWorld3x4EXT"
Name 68 "v14"
Name 69 "gl_WorldToObject3x4EXT"
Name 73 "iAttr"
Name 73 "v15"
Name 75 "gl_CullMaskEXT"
Name 78 "iAttr"
Decorate 11(gl_LaunchIDEXT) BuiltIn LaunchIdKHR
Decorate 14(gl_LaunchSizeEXT) BuiltIn LaunchSizeKHR
Decorate 20(gl_PrimitiveID) BuiltIn PrimitiveId
@@ -59,6 +64,7 @@ spv.ext.IntersectShader.rint
Decorate 59(gl_WorldToObjectEXT) BuiltIn WorldToObjectKHR
Decorate 65(gl_ObjectToWorld3x4EXT) BuiltIn ObjectToWorldKHR
Decorate 69(gl_WorldToObject3x4EXT) BuiltIn WorldToObjectKHR
Decorate 75(gl_CullMaskEXT) BuiltIn CullMaskKHR
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 0
@@ -95,14 +101,17 @@ spv.ext.IntersectShader.rint
63: TypePointer Function 62
65(gl_ObjectToWorld3x4EXT): 55(ptr) Variable Input
69(gl_WorldToObject3x4EXT): 55(ptr) Variable Input
72: TypePointer HitAttributeKHR 61(fvec4)
73(iAttr): 72(ptr) Variable HitAttributeKHR
74: 28(float) Constant 1056964608
75: 28(float) Constant 0
76: 28(float) Constant 1065353216
77: 61(fvec4) ConstantComposite 74 74 75 76
78: 6(int) Constant 1
79: TypeBool
72: TypePointer Function 6(int)
74: TypePointer Input 6(int)
75(gl_CullMaskEXT): 74(ptr) Variable Input
77: TypePointer HitAttributeKHR 61(fvec4)
78(iAttr): 77(ptr) Variable HitAttributeKHR
79: 28(float) Constant 1056964608
80: 28(float) Constant 0
81: 28(float) Constant 1065353216
82: 61(fvec4) ConstantComposite 79 79 80 81
83: 6(int) Constant 1
84: TypeBool
4(main): 2 Function None 3
5: Label
9(v0): 8(ptr) Variable Function
@@ -120,6 +129,7 @@ spv.ext.IntersectShader.rint
58(v12): 53(ptr) Variable Function
64(v13): 63(ptr) Variable Function
68(v14): 63(ptr) Variable Function
73(v15): 72(ptr) Variable Function
12: 7(ivec3) Load 11(gl_LaunchIDEXT)
Store 9(v0) 12
15: 7(ivec3) Load 14(gl_LaunchSizeEXT)
@@ -152,7 +162,9 @@ spv.ext.IntersectShader.rint
70: 52 Load 69(gl_WorldToObject3x4EXT)
71: 62 Transpose 70
Store 68(v14) 71
Store 73(iAttr) 77
80: 79(bool) ReportIntersectionKHR 74 78
76: 6(int) Load 75(gl_CullMaskEXT)
Store 73(v15) 76
Store 78(iAttr) 82
85: 84(bool) ReportIntersectionKHR 79 83
Return
FunctionEnd

View File

@@ -1,7 +1,7 @@
spv.ext.MissShader.rmiss
// Module Version 10400
// Generated by (magic number): 8000a
// Id's are bound by 90
// Id's are bound by 94
Capability MinLod
Capability GroupNonUniform
@@ -9,15 +9,18 @@ spv.ext.MissShader.rmiss
Capability SubgroupBallotKHR
Capability RayTracingKHR
Capability ShaderSMBuiltinsNV
Capability RayCullMaskKHR
Extension "SPV_KHR_ray_cull_mask"
Extension "SPV_KHR_ray_tracing"
Extension "SPV_KHR_shader_ballot"
Extension "SPV_NV_shader_sm_builtins"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint MissKHR 4 "main" 11 14 21 24 29 32 36 51 53 58 63 74 78 85 89
EntryPoint MissKHR 4 "main" 11 14 21 24 29 32 37 41 56 57 62 67 78 82 89 93
Source GLSL 460
SourceExtension "GL_ARB_shader_ballot"
SourceExtension "GL_ARB_sparse_texture_clamp"
SourceExtension "GL_EXT_ray_cull_mask"
SourceExtension "GL_EXT_ray_tracing"
SourceExtension "GL_KHR_shader_subgroup_ballot"
SourceExtension "GL_KHR_shader_subgroup_basic"
@@ -35,37 +38,40 @@ spv.ext.MissShader.rmiss
Name 29 "gl_RayTminEXT"
Name 31 "v5"
Name 32 "gl_RayTmaxEXT"
Name 36 "accEXT"
Name 51 "incomingPayload"
Name 53 "gl_SubGroupSizeARB"
Name 58 "gl_SubgroupEqMask"
Name 63 "gl_WarpIDNV"
Name 70 "texel"
Name 74 "s2D"
Name 78 "c2"
Name 85 "lodClamp"
Name 89 "localPayload"
Name 35 "v6"
Name 37 "gl_CullMaskEXT"
Name 41 "accEXT"
Name 56 "incomingPayload"
Name 57 "gl_SubGroupSizeARB"
Name 62 "gl_SubgroupEqMask"
Name 67 "gl_WarpIDNV"
Name 74 "texel"
Name 78 "s2D"
Name 82 "c2"
Name 89 "lodClamp"
Name 93 "localPayload"
Decorate 11(gl_LaunchIDEXT) BuiltIn LaunchIdKHR
Decorate 14(gl_LaunchSizeEXT) BuiltIn LaunchSizeKHR
Decorate 21(gl_WorldRayOriginEXT) BuiltIn WorldRayOriginKHR
Decorate 24(gl_WorldRayDirectionEXT) BuiltIn WorldRayDirectionKHR
Decorate 29(gl_RayTminEXT) BuiltIn RayTminKHR
Decorate 32(gl_RayTmaxEXT) BuiltIn RayTmaxKHR
Decorate 36(accEXT) DescriptorSet 0
Decorate 36(accEXT) Binding 0
Decorate 53(gl_SubGroupSizeARB) BuiltIn SubgroupSize
Decorate 53(gl_SubGroupSizeARB) Volatile
Decorate 53(gl_SubGroupSizeARB) Coherent
Decorate 58(gl_SubgroupEqMask) BuiltIn SubgroupEqMaskKHR
Decorate 58(gl_SubgroupEqMask) Volatile
Decorate 58(gl_SubgroupEqMask) Coherent
Decorate 63(gl_WarpIDNV) BuiltIn WarpIDNV
Decorate 63(gl_WarpIDNV) Volatile
Decorate 63(gl_WarpIDNV) Coherent
Decorate 74(s2D) DescriptorSet 0
Decorate 74(s2D) Binding 1
Decorate 78(c2) Location 2
Decorate 85(lodClamp) Location 3
Decorate 37(gl_CullMaskEXT) BuiltIn CullMaskKHR
Decorate 41(accEXT) DescriptorSet 0
Decorate 41(accEXT) Binding 0
Decorate 57(gl_SubGroupSizeARB) BuiltIn SubgroupSize
Decorate 57(gl_SubGroupSizeARB) Volatile
Decorate 57(gl_SubGroupSizeARB) Coherent
Decorate 62(gl_SubgroupEqMask) BuiltIn SubgroupEqMaskKHR
Decorate 62(gl_SubgroupEqMask) Volatile
Decorate 62(gl_SubgroupEqMask) Coherent
Decorate 67(gl_WarpIDNV) BuiltIn WarpIDNV
Decorate 67(gl_WarpIDNV) Volatile
Decorate 67(gl_WarpIDNV) Coherent
Decorate 78(s2D) DescriptorSet 0
Decorate 78(s2D) Binding 1
Decorate 82(c2) Location 2
Decorate 89(lodClamp) Location 3
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 0
@@ -84,44 +90,46 @@ spv.ext.MissShader.rmiss
28: TypePointer Input 16(float)
29(gl_RayTminEXT): 28(ptr) Variable Input
32(gl_RayTmaxEXT): 28(ptr) Variable Input
34: TypeAccelerationStructureKHR
35: TypePointer UniformConstant 34
36(accEXT): 35(ptr) Variable UniformConstant
38: 6(int) Constant 0
39: 6(int) Constant 1
40: 6(int) Constant 2
41: 6(int) Constant 3
42: 16(float) Constant 1056964608
43: 17(fvec3) ConstantComposite 42 42 42
44: 16(float) Constant 1065353216
45: 17(fvec3) ConstantComposite 44 44 44
46: 16(float) Constant 1061158912
47: TypeInt 32 1
48: 47(int) Constant 1
49: TypeVector 16(float) 4
50: TypePointer IncomingRayPayloadKHR 49(fvec4)
51(incomingPayload): 50(ptr) Variable IncomingRayPayloadKHR
52: TypePointer Input 6(int)
53(gl_SubGroupSizeARB): 52(ptr) Variable Input
56: TypeVector 6(int) 4
57: TypePointer Input 56(ivec4)
58(gl_SubgroupEqMask): 57(ptr) Variable Input
63(gl_WarpIDNV): 52(ptr) Variable Input
67: TypePointer IncomingRayPayloadKHR 16(float)
69: TypePointer Function 49(fvec4)
71: TypeImage 16(float) 2D sampled format:Unknown
72: TypeSampledImage 71
73: TypePointer UniformConstant 72
74(s2D): 73(ptr) Variable UniformConstant
76: TypeVector 16(float) 2
77: TypePointer Input 76(fvec2)
78(c2): 77(ptr) Variable Input
82: TypeVector 47(int) 2
83: 47(int) Constant 5
84: 82(ivec2) ConstantComposite 83 83
85(lodClamp): 28(ptr) Variable Input
88: TypePointer RayPayloadKHR 49(fvec4)
89(localPayload): 88(ptr) Variable RayPayloadKHR
34: TypePointer Function 6(int)
36: TypePointer Input 6(int)
37(gl_CullMaskEXT): 36(ptr) Variable Input
39: TypeAccelerationStructureKHR
40: TypePointer UniformConstant 39
41(accEXT): 40(ptr) Variable UniformConstant
43: 6(int) Constant 0
44: 6(int) Constant 1
45: 6(int) Constant 2
46: 6(int) Constant 3
47: 16(float) Constant 1056964608
48: 17(fvec3) ConstantComposite 47 47 47
49: 16(float) Constant 1065353216
50: 17(fvec3) ConstantComposite 49 49 49
51: 16(float) Constant 1061158912
52: TypeInt 32 1
53: 52(int) Constant 1
54: TypeVector 16(float) 4
55: TypePointer IncomingRayPayloadKHR 54(fvec4)
56(incomingPayload): 55(ptr) Variable IncomingRayPayloadKHR
57(gl_SubGroupSizeARB): 36(ptr) Variable Input
60: TypeVector 6(int) 4
61: TypePointer Input 60(ivec4)
62(gl_SubgroupEqMask): 61(ptr) Variable Input
67(gl_WarpIDNV): 36(ptr) Variable Input
71: TypePointer IncomingRayPayloadKHR 16(float)
73: TypePointer Function 54(fvec4)
75: TypeImage 16(float) 2D sampled format:Unknown
76: TypeSampledImage 75
77: TypePointer UniformConstant 76
78(s2D): 77(ptr) Variable UniformConstant
80: TypeVector 16(float) 2
81: TypePointer Input 80(fvec2)
82(c2): 81(ptr) Variable Input
86: TypeVector 52(int) 2
87: 52(int) Constant 5
88: 86(ivec2) ConstantComposite 87 87
89(lodClamp): 28(ptr) Variable Input
92: TypePointer RayPayloadKHR 54(fvec4)
93(localPayload): 92(ptr) Variable RayPayloadKHR
4(main): 2 Function None 3
5: Label
9(v0): 8(ptr) Variable Function
@@ -130,7 +138,8 @@ spv.ext.MissShader.rmiss
23(v3): 18(ptr) Variable Function
27(v4): 26(ptr) Variable Function
31(v5): 26(ptr) Variable Function
70(texel): 69(ptr) Variable Function
35(v6): 34(ptr) Variable Function
74(texel): 73(ptr) Variable Function
12: 7(ivec3) Load 11(gl_LaunchIDEXT)
Store 9(v0) 12
15: 7(ivec3) Load 14(gl_LaunchSizeEXT)
@@ -143,25 +152,27 @@ spv.ext.MissShader.rmiss
Store 27(v4) 30
33: 16(float) Load 32(gl_RayTmaxEXT)
Store 31(v5) 33
37: 34 Load 36(accEXT)
TraceRayKHR 37 38 39 40 41 38 43 42 45 46 51(incomingPayload)
54: 6(int) Load 53(gl_SubGroupSizeARB)
55: 16(float) ConvertUToF 54
59: 56(ivec4) Load 58(gl_SubgroupEqMask)
60: 49(fvec4) ConvertUToF 59
61: 16(float) CompositeExtract 60 0
62: 16(float) FAdd 55 61
64: 6(int) Load 63(gl_WarpIDNV)
65: 16(float) ConvertUToF 64
66: 16(float) FAdd 62 65
68: 67(ptr) AccessChain 51(incomingPayload) 38
Store 68 66
75: 72 Load 74(s2D)
79: 76(fvec2) Load 78(c2)
80: 76(fvec2) Load 78(c2)
81: 76(fvec2) Load 78(c2)
86: 16(float) Load 85(lodClamp)
87: 49(fvec4) ImageSampleExplicitLod 75 79 Grad ConstOffset MinLod 80 81 84 86
Store 70(texel) 87
38: 6(int) Load 37(gl_CullMaskEXT)
Store 35(v6) 38
42: 39 Load 41(accEXT)
TraceRayKHR 42 43 44 45 46 43 48 47 50 51 56(incomingPayload)
58: 6(int) Load 57(gl_SubGroupSizeARB)
59: 16(float) ConvertUToF 58
63: 60(ivec4) Load 62(gl_SubgroupEqMask)
64: 54(fvec4) ConvertUToF 63
65: 16(float) CompositeExtract 64 0
66: 16(float) FAdd 59 65
68: 6(int) Load 67(gl_WarpIDNV)
69: 16(float) ConvertUToF 68
70: 16(float) FAdd 66 69
72: 71(ptr) AccessChain 56(incomingPayload) 43
Store 72 70
79: 76 Load 78(s2D)
83: 80(fvec2) Load 82(c2)
84: 80(fvec2) Load 82(c2)
85: 80(fvec2) Load 82(c2)
90: 16(float) Load 89(lodClamp)
91: 54(fvec4) ImageSampleExplicitLod 79 83 Grad ConstOffset MinLod 84 85 88 90
Store 74(texel) 91
Return
FunctionEnd