blob: ee39e358cea096ba738af6b93b88ee3ffb9c2808 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
|
spv.ext.RayGenShaderArray.rgen
// Module Version 10400
// Generated by (magic number): 8000a
// Id's are bound by 117
Capability Int64
Capability RayTracingKHR
Capability ShaderNonUniformEXT
Capability RuntimeDescriptorArrayEXT
Extension "SPV_EXT_descriptor_indexing"
Extension "SPV_KHR_ray_tracing"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint RayGenerationKHR 4 "main" 11 21 30 38 61 65
Source GLSL 460
SourceExtension "GL_ARB_gpu_shader_int64"
SourceExtension "GL_EXT_nonuniform_qualifier"
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 30 "accEXT0"
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"
Name 38 ""
Name 61 "payload"
Name 65 "accEXT1"
Decorate 11(gl_LaunchIDEXT) BuiltIn LaunchIdKHR
Decorate 21(gl_LaunchSizeEXT) BuiltIn LaunchSizeKHR
Decorate 30(accEXT0) DescriptorSet 0
Decorate 30(accEXT0) Binding 0
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
Decorate 36(block) Block
Decorate 61(payload) Location 1
Decorate 65(accEXT1) DescriptorSet 0
Decorate 65(accEXT1) Binding 1
Decorate 80 DecorationNonUniformEXT
Decorate 81 DecorationNonUniformEXT
Decorate 82 DecorationNonUniformEXT
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: TypeAccelerationStructureKHR
28: TypeRuntimeArray 27
29: TypePointer UniformConstant 28
30(accEXT0): 29(ptr) Variable UniformConstant
31: TypeFloat 32
32: TypeVector 31(float) 3
33: TypeInt 32 1
34: TypeVector 6(int) 2
35: TypeInt 64 0
36(block): TypeStruct 32(fvec3) 32(fvec3) 33(int) 34(ivec2) 35(int64_t)
37: TypePointer ShaderRecordBufferKHR 36(block)
38: 37(ptr) Variable ShaderRecordBufferKHR
39: 33(int) Constant 2
40: TypePointer ShaderRecordBufferKHR 33(int)
43: TypePointer UniformConstant 27
50: 33(int) Constant 1
51: TypePointer ShaderRecordBufferKHR 32(fvec3)
54: 31(float) Constant 1056964608
55: 33(int) Constant 0
58: 31(float) Constant 1061158912
59: TypeVector 31(float) 4
60: TypePointer RayPayloadKHR 59(fvec4)
61(payload): 60(ptr) Variable RayPayloadKHR
62: 6(int) Constant 2
63: TypeArray 27 62
64: TypePointer UniformConstant 63
65(accEXT1): 64(ptr) Variable UniformConstant
91: 33(int) Constant 3
92: TypePointer ShaderRecordBufferKHR 34(ivec2)
104: 33(int) Constant 4
105: TypePointer ShaderRecordBufferKHR 35(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: 33(int) Load 41
44: 43(ptr) AccessChain 30(accEXT0) 42
45: 27 Load 44
46: 6(int) Load 8(lx)
47: 6(int) Load 16(ly)
48: 6(int) Load 20(sx)
49: 6(int) Load 24(sy)
52: 51(ptr) AccessChain 38 50
53: 32(fvec3) Load 52
56: 51(ptr) AccessChain 38 55
57: 32(fvec3) Load 56
TraceRayKHR 45 46 47 48 49 12 53 54 57 58 61(payload)
66: 40(ptr) AccessChain 38 39
67: 33(int) Load 66
68: 43(ptr) AccessChain 65(accEXT1) 67
69: 27 Load 68
70: 6(int) Load 8(lx)
71: 6(int) Load 16(ly)
72: 6(int) Load 20(sx)
73: 6(int) Load 24(sy)
74: 51(ptr) AccessChain 38 50
75: 32(fvec3) Load 74
76: 51(ptr) AccessChain 38 55
77: 32(fvec3) Load 76
TraceRayKHR 69 70 71 72 73 12 75 54 77 58 61(payload)
78: 40(ptr) AccessChain 38 39
79: 33(int) Load 78
80: 33(int) CopyObject 79
81: 43(ptr) AccessChain 30(accEXT0) 80
82: 27 Load 81
83: 6(int) Load 8(lx)
84: 6(int) Load 16(ly)
85: 6(int) Load 20(sx)
86: 6(int) Load 24(sy)
87: 51(ptr) AccessChain 38 50
88: 32(fvec3) Load 87
89: 51(ptr) AccessChain 38 55
90: 32(fvec3) Load 89
TraceRayKHR 82 83 84 85 86 12 88 54 90 58 61(payload)
93: 92(ptr) AccessChain 38 91
94: 34(ivec2) Load 93
95: 27 ConvertUToAccelerationStructureKHR 94
96: 6(int) Load 8(lx)
97: 6(int) Load 16(ly)
98: 6(int) Load 20(sx)
99: 6(int) Load 24(sy)
100: 51(ptr) AccessChain 38 50
101: 32(fvec3) Load 100
102: 51(ptr) AccessChain 38 55
103: 32(fvec3) Load 102
TraceRayKHR 95 96 97 98 99 12 101 54 103 58 61(payload)
106: 105(ptr) AccessChain 38 104
107: 35(int64_t) Load 106
108: 27 ConvertUToAccelerationStructureKHR 107
109: 6(int) Load 8(lx)
110: 6(int) Load 16(ly)
111: 6(int) Load 20(sx)
112: 6(int) Load 24(sy)
113: 51(ptr) AccessChain 38 50
114: 32(fvec3) Load 113
115: 51(ptr) AccessChain 38 55
116: 32(fvec3) Load 115
TraceRayKHR 108 109 110 111 112 12 114 54 116 58 61(payload)
Return
FunctionEnd
|