const rayFlag defs used in the test cases in stead of numerical values

This commit is contained in:
Neslisah Torosdagli
2020-03-23 23:09:44 -04:00
parent 65c81bf236
commit 7f689bebec
17 changed files with 1413 additions and 1408 deletions

View File

@@ -1,7 +1,7 @@
rayQuery-allOps.comp
// Module Version 10000
// Generated by (magic number): 80008
// Id's are bound by 265
// Id's are bound by 266
Capability Shader
Capability RayQueryProvisionalKHR
@@ -26,40 +26,40 @@ rayQuery-allOps.comp
MemberName 15(Log) 1 "y"
Name 17 ""
Name 26 "ray"
Name 45 "rayQuery"
Name 48 "rtas"
Name 51 "ray"
Name 69 "candidateType"
Name 79 "_mat4x3"
Name 84 "_mat3x4"
Name 146 "t"
Name 160 "committedStatus"
Name 246 "o"
Name 249 "d"
Name 260 "Ray"
MemberName 260(Ray) 0 "pos"
MemberName 260(Ray) 1 "tmin"
MemberName 260(Ray) 2 "dir"
MemberName 260(Ray) 3 "tmax"
Name 262 "Rays"
MemberName 262(Rays) 0 "rays"
Name 264 ""
Name 43 "ray"
Name 47 "rayQuery"
Name 50 "rtas"
Name 70 "candidateType"
Name 80 "_mat4x3"
Name 85 "_mat3x4"
Name 147 "t"
Name 161 "committedStatus"
Name 247 "o"
Name 250 "d"
Name 261 "Ray"
MemberName 261(Ray) 0 "pos"
MemberName 261(Ray) 1 "tmin"
MemberName 261(Ray) 2 "dir"
MemberName 261(Ray) 3 "tmax"
Name 263 "Rays"
MemberName 263(Rays) 0 "rays"
Name 265 ""
MemberDecorate 15(Log) 0 Offset 0
MemberDecorate 15(Log) 1 Offset 4
Decorate 15(Log) BufferBlock
Decorate 17 DescriptorSet 0
Decorate 17 Binding 0
Decorate 48(rtas) DescriptorSet 0
Decorate 48(rtas) Binding 1
MemberDecorate 260(Ray) 0 Offset 0
MemberDecorate 260(Ray) 1 Offset 12
MemberDecorate 260(Ray) 2 Offset 16
MemberDecorate 260(Ray) 3 Offset 28
Decorate 261 ArrayStride 32
MemberDecorate 262(Rays) 0 Offset 0
Decorate 262(Rays) BufferBlock
Decorate 264 DescriptorSet 0
Decorate 264 Binding 2
Decorate 50(rtas) DescriptorSet 0
Decorate 50(rtas) Binding 1
MemberDecorate 261(Ray) 0 Offset 0
MemberDecorate 261(Ray) 1 Offset 12
MemberDecorate 261(Ray) 2 Offset 16
MemberDecorate 261(Ray) 3 Offset 28
Decorate 262 ArrayStride 32
MemberDecorate 263(Rays) 0 Offset 0
Decorate 263(Rays) BufferBlock
Decorate 265 DescriptorSet 0
Decorate 265 Binding 2
2: TypeVoid
3: TypeFunction 2
8: TypeFloat 32
@@ -85,333 +85,335 @@ rayQuery-allOps.comp
35: TypePointer Function 8(float)
37: 18(int) Constant 3
38: 8(float) Constant 1176255488
43: TypeRayQueryProvisionalKHR
44: TypePointer Function 43
46: TypeAccelerationStructureKHR
47: TypePointer UniformConstant 46
48(rtas): 47(ptr) Variable UniformConstant
50: 14(int) Constant 255
66: TypeBool
68: TypePointer Function 14(int)
70: 66(bool) ConstantFalse
77: TypeMatrix 9(fvec3) 4
78: TypePointer Function 77
81: TypeVector 8(float) 4
82: TypeMatrix 81(fvec4) 3
83: TypePointer Function 82
88: 66(bool) ConstantTrue
93: TypeVector 8(float) 2
147: 8(float) Constant 1056964608
179: 14(int) Constant 1
202: 14(int) Constant 2
260(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
261: TypeRuntimeArray 260(Ray)
262(Rays): TypeStruct 261
263: TypePointer Uniform 262(Rays)
264: 263(ptr) Variable Uniform
45: TypeRayQueryProvisionalKHR
46: TypePointer Function 45
48: TypeAccelerationStructureKHR
49: TypePointer UniformConstant 48
50(rtas): 49(ptr) Variable UniformConstant
52: 14(int) Constant 255
67: TypeBool
69: TypePointer Function 14(int)
71: 67(bool) ConstantFalse
78: TypeMatrix 9(fvec3) 4
79: TypePointer Function 78
82: TypeVector 8(float) 4
83: TypeMatrix 82(fvec4) 3
84: TypePointer Function 83
89: 67(bool) ConstantTrue
94: TypeVector 8(float) 2
148: 8(float) Constant 1056964608
180: 14(int) Constant 1
203: 14(int) Constant 2
261(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
262: TypeRuntimeArray 261(Ray)
263(Rays): TypeStruct 262
264: TypePointer Uniform 263(Rays)
265: 264(ptr) Variable Uniform
4(main): 2 Function None 3
5: Label
45(rayQuery): 44(ptr) Variable Function
51(ray): 25(ptr) Variable Function
69(candidateType): 68(ptr) Variable Function
79(_mat4x3): 78(ptr) Variable Function
84(_mat3x4): 83(ptr) Variable Function
146(t): 35(ptr) Variable Function
160(committedStatus): 68(ptr) Variable Function
246(o): 29(ptr) Variable Function
249(d): 29(ptr) Variable Function
49: 46 Load 48(rtas)
52: 29(ptr) AccessChain 51(ray) 19
53: 9(fvec3) Load 52
54: 35(ptr) AccessChain 51(ray) 23
55: 8(float) Load 54
56: 29(ptr) AccessChain 51(ray) 31
57: 9(fvec3) Load 56
58: 35(ptr) AccessChain 51(ray) 37
59: 8(float) Load 58
RayQueryInitializeKHR 45(rayQuery) 49 20 50 53 55 57 59
Branch 60
60: Label
LoopMerge 62 63 None
Branch 64
64: Label
65: 43 Load 45(rayQuery)
67: 66(bool) RayQueryProceedKHR 65
BranchConditional 67 61 62
61: Label
71: 14(int) RayQueryGetIntersectionTypeKHR 45(rayQuery) 19
Store 69(candidateType) 71
72: 14(int) Load 69(candidateType)
SelectionMerge 75 None
Switch 72 75
case 0: 73
case 1: 74
73: Label
76: 43 Load 45(rayQuery)
RayQueryTerminateKHR 76
80: 77 RayQueryGetIntersectionObjectToWorldKHR 45(rayQuery) 19
Store 79(_mat4x3) 80
85: 77 Load 79(_mat4x3)
86: 82 Transpose 85
Store 84(_mat3x4) 86
87: 43 Load 45(rayQuery)
RayQueryConfirmIntersectionKHR 87
89: 66(bool) RayQueryGetIntersectionFrontFaceKHR 45(rayQuery) 23
SelectionMerge 91 None
BranchConditional 89 90 91
90: Label
92: 2 FunctionCall 6(doSomething()
Branch 91
91: Label
94: 93(fvec2) RayQueryGetIntersectionBarycentricsKHR 45(rayQuery) 23
95: 8(float) CompositeExtract 94 0
96: 66(bool) FOrdEqual 95 27
SelectionMerge 98 None
BranchConditional 96 97 98
97: Label
99: 2 FunctionCall 6(doSomething()
Branch 98
98: Label
100: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 45(rayQuery) 23
101: 66(bool) SGreaterThan 100 19
SelectionMerge 103 None
BranchConditional 101 102 103
102: Label
104: 2 FunctionCall 6(doSomething()
Branch 103
103: Label
105: 18(int) RayQueryGetIntersectionInstanceIdKHR 45(rayQuery) 23
106: 66(bool) SGreaterThan 105 19
SelectionMerge 108 None
BranchConditional 106 107 108
107: Label
109: 2 FunctionCall 6(doSomething()
Branch 108
108: Label
110: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 45(rayQuery) 23
111: 8(float) CompositeExtract 110 0
112: 66(bool) FOrdGreaterThan 111 27
SelectionMerge 114 None
BranchConditional 112 113 114
113: Label
115: 2 FunctionCall 6(doSomething()
Branch 114
114: Label
116: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 45(rayQuery) 23
117: 8(float) CompositeExtract 116 0
118: 66(bool) FOrdGreaterThan 117 27
SelectionMerge 120 None
BranchConditional 118 119 120
119: Label
121: 2 FunctionCall 6(doSomething()
Branch 120
120: Label
122: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 45(rayQuery) 23
123: 66(bool) SGreaterThan 122 19
SelectionMerge 125 None
BranchConditional 123 124 125
124: Label
126: 2 FunctionCall 6(doSomething()
Branch 125
125: Label
127: 8(float) RayQueryGetIntersectionTKHR 45(rayQuery) 23
128: 66(bool) FOrdGreaterThan 127 27
SelectionMerge 130 None
BranchConditional 128 129 130
129: Label
131: 2 FunctionCall 6(doSomething()
Branch 130
130: Label
132: 18(int) RayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR 45(rayQuery) 23
133: 66(bool) UGreaterThan 132 20
SelectionMerge 135 None
BranchConditional 133 134 135
134: Label
136: 2 FunctionCall 6(doSomething()
Branch 135
135: Label
Branch 75
43(ray): 25(ptr) Variable Function
47(rayQuery): 46(ptr) Variable Function
70(candidateType): 69(ptr) Variable Function
80(_mat4x3): 79(ptr) Variable Function
85(_mat3x4): 84(ptr) Variable Function
147(t): 35(ptr) Variable Function
161(committedStatus): 69(ptr) Variable Function
247(o): 29(ptr) Variable Function
250(d): 29(ptr) Variable Function
44: 10(Ray) FunctionCall 12(makeRayDesc()
Store 43(ray) 44
51: 48 Load 50(rtas)
53: 29(ptr) AccessChain 43(ray) 19
54: 9(fvec3) Load 53
55: 35(ptr) AccessChain 43(ray) 23
56: 8(float) Load 55
57: 29(ptr) AccessChain 43(ray) 31
58: 9(fvec3) Load 57
59: 35(ptr) AccessChain 43(ray) 37
60: 8(float) Load 59
RayQueryInitializeKHR 47(rayQuery) 51 20 52 54 56 58 60
Branch 61
61: Label
LoopMerge 63 64 None
Branch 65
65: Label
66: 45 Load 47(rayQuery)
68: 67(bool) RayQueryProceedKHR 66
BranchConditional 68 62 63
62: Label
72: 14(int) RayQueryGetIntersectionTypeKHR 47(rayQuery) 19
Store 70(candidateType) 72
73: 14(int) Load 70(candidateType)
SelectionMerge 76 None
Switch 73 76
case 0: 74
case 1: 75
74: Label
138: 77 RayQueryGetIntersectionObjectToWorldKHR 45(rayQuery) 19
Store 79(_mat4x3) 138
139: 77 Load 79(_mat4x3)
140: 82 Transpose 139
Store 84(_mat3x4) 140
141: 43 Load 45(rayQuery)
142: 66(bool) RayQueryGetIntersectionCandidateAABBOpaqueKHR 141
SelectionMerge 144 None
BranchConditional 142 143 144
143: Label
145: 2 FunctionCall 6(doSomething()
Branch 144
144: Label
Store 146(t) 147
148: 8(float) Load 146(t)
RayQueryGenerateIntersectionKHR 45(rayQuery) 148
149: 43 Load 45(rayQuery)
RayQueryTerminateKHR 149
Branch 75
75: Label
Branch 63
63: Label
Branch 60
62: Label
152: 35(ptr) AccessChain 84(_mat3x4) 19 20
153: 8(float) Load 152
154: 35(ptr) AccessChain 79(_mat4x3) 19 20
155: 8(float) Load 154
156: 66(bool) FOrdEqual 153 155
SelectionMerge 158 None
BranchConditional 156 157 158
157: Label
159: 2 FunctionCall 6(doSomething()
Branch 158
158: Label
161: 14(int) RayQueryGetIntersectionTypeKHR 45(rayQuery) 23
Store 160(committedStatus) 161
162: 14(int) Load 160(committedStatus)
SelectionMerge 166 None
Switch 162 166
case 0: 163
case 1: 164
case 2: 165
163: Label
167: 77 RayQueryGetIntersectionWorldToObjectKHR 45(rayQuery) 19
Store 79(_mat4x3) 167
168: 77 Load 79(_mat4x3)
169: 82 Transpose 168
Store 84(_mat3x4) 169
Branch 166
77: 45 Load 47(rayQuery)
RayQueryTerminateKHR 77
81: 78 RayQueryGetIntersectionObjectToWorldKHR 47(rayQuery) 19
Store 80(_mat4x3) 81
86: 78 Load 80(_mat4x3)
87: 83 Transpose 86
Store 85(_mat3x4) 87
88: 45 Load 47(rayQuery)
RayQueryConfirmIntersectionKHR 88
90: 67(bool) RayQueryGetIntersectionFrontFaceKHR 47(rayQuery) 23
SelectionMerge 92 None
BranchConditional 90 91 92
91: Label
93: 2 FunctionCall 6(doSomething()
Branch 92
92: Label
95: 94(fvec2) RayQueryGetIntersectionBarycentricsKHR 47(rayQuery) 23
96: 8(float) CompositeExtract 95 0
97: 67(bool) FOrdEqual 96 27
SelectionMerge 99 None
BranchConditional 97 98 99
98: Label
100: 2 FunctionCall 6(doSomething()
Branch 99
99: Label
101: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 47(rayQuery) 23
102: 67(bool) SGreaterThan 101 19
SelectionMerge 104 None
BranchConditional 102 103 104
103: Label
105: 2 FunctionCall 6(doSomething()
Branch 104
104: Label
106: 18(int) RayQueryGetIntersectionInstanceIdKHR 47(rayQuery) 23
107: 67(bool) SGreaterThan 106 19
SelectionMerge 109 None
BranchConditional 107 108 109
108: Label
110: 2 FunctionCall 6(doSomething()
Branch 109
109: Label
111: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 47(rayQuery) 23
112: 8(float) CompositeExtract 111 0
113: 67(bool) FOrdGreaterThan 112 27
SelectionMerge 115 None
BranchConditional 113 114 115
114: Label
116: 2 FunctionCall 6(doSomething()
Branch 115
115: Label
117: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 47(rayQuery) 23
118: 8(float) CompositeExtract 117 0
119: 67(bool) FOrdGreaterThan 118 27
SelectionMerge 121 None
BranchConditional 119 120 121
120: Label
122: 2 FunctionCall 6(doSomething()
Branch 121
121: Label
123: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 47(rayQuery) 23
124: 67(bool) SGreaterThan 123 19
SelectionMerge 126 None
BranchConditional 124 125 126
125: Label
127: 2 FunctionCall 6(doSomething()
Branch 126
126: Label
128: 8(float) RayQueryGetIntersectionTKHR 47(rayQuery) 23
129: 67(bool) FOrdGreaterThan 128 27
SelectionMerge 131 None
BranchConditional 129 130 131
130: Label
132: 2 FunctionCall 6(doSomething()
Branch 131
131: Label
133: 18(int) RayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR 47(rayQuery) 23
134: 67(bool) UGreaterThan 133 20
SelectionMerge 136 None
BranchConditional 134 135 136
135: Label
137: 2 FunctionCall 6(doSomething()
Branch 136
136: Label
Branch 76
75: Label
139: 78 RayQueryGetIntersectionObjectToWorldKHR 47(rayQuery) 19
Store 80(_mat4x3) 139
140: 78 Load 80(_mat4x3)
141: 83 Transpose 140
Store 85(_mat3x4) 141
142: 45 Load 47(rayQuery)
143: 67(bool) RayQueryGetIntersectionCandidateAABBOpaqueKHR 142
SelectionMerge 145 None
BranchConditional 143 144 145
144: Label
146: 2 FunctionCall 6(doSomething()
Branch 145
145: Label
Store 147(t) 148
149: 8(float) Load 147(t)
RayQueryGenerateIntersectionKHR 47(rayQuery) 149
150: 45 Load 47(rayQuery)
RayQueryTerminateKHR 150
Branch 76
76: Label
Branch 64
64: Label
Branch 61
63: Label
153: 35(ptr) AccessChain 85(_mat3x4) 19 20
154: 8(float) Load 153
155: 35(ptr) AccessChain 80(_mat4x3) 19 20
156: 8(float) Load 155
157: 67(bool) FOrdEqual 154 156
SelectionMerge 159 None
BranchConditional 157 158 159
158: Label
160: 2 FunctionCall 6(doSomething()
Branch 159
159: Label
162: 14(int) RayQueryGetIntersectionTypeKHR 47(rayQuery) 23
Store 161(committedStatus) 162
163: 14(int) Load 161(committedStatus)
SelectionMerge 167 None
Switch 163 167
case 0: 164
case 1: 165
case 2: 166
164: Label
171: 77 RayQueryGetIntersectionWorldToObjectKHR 45(rayQuery) 23
Store 79(_mat4x3) 171
172: 77 Load 79(_mat4x3)
173: 82 Transpose 172
Store 84(_mat3x4) 173
174: 66(bool) RayQueryGetIntersectionFrontFaceKHR 45(rayQuery) 23
SelectionMerge 176 None
BranchConditional 174 175 176
175: Label
177: 2 FunctionCall 6(doSomething()
Branch 176
176: Label
178: 93(fvec2) RayQueryGetIntersectionBarycentricsKHR 45(rayQuery) 23
180: 8(float) CompositeExtract 178 1
181: 66(bool) FOrdEqual 180 27
SelectionMerge 183 None
BranchConditional 181 182 183
182: Label
184: 2 FunctionCall 6(doSomething()
Branch 183
183: Label
Branch 166
168: 78 RayQueryGetIntersectionWorldToObjectKHR 47(rayQuery) 19
Store 80(_mat4x3) 168
169: 78 Load 80(_mat4x3)
170: 83 Transpose 169
Store 85(_mat3x4) 170
Branch 167
165: Label
186: 18(int) RayQueryGetIntersectionGeometryIndexKHR 45(rayQuery) 23
187: 66(bool) SGreaterThan 186 19
SelectionMerge 189 None
BranchConditional 187 188 189
188: Label
190: 2 FunctionCall 6(doSomething()
Branch 189
189: Label
191: 18(int) RayQueryGetIntersectionInstanceIdKHR 45(rayQuery) 23
192: 66(bool) SGreaterThan 191 19
SelectionMerge 194 None
BranchConditional 192 193 194
193: Label
195: 2 FunctionCall 6(doSomething()
Branch 194
194: Label
196: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 45(rayQuery) 23
197: 66(bool) SGreaterThan 196 19
SelectionMerge 199 None
BranchConditional 197 198 199
198: Label
200: 2 FunctionCall 6(doSomething()
Branch 199
199: Label
201: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 45(rayQuery) 23
203: 8(float) CompositeExtract 201 2
204: 66(bool) FOrdGreaterThan 203 27
SelectionMerge 206 None
BranchConditional 204 205 206
205: Label
207: 2 FunctionCall 6(doSomething()
Branch 206
206: Label
208: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 45(rayQuery) 23
209: 8(float) CompositeExtract 208 0
210: 66(bool) FOrdGreaterThan 209 27
SelectionMerge 212 None
BranchConditional 210 211 212
211: Label
213: 2 FunctionCall 6(doSomething()
Branch 212
212: Label
214: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 45(rayQuery) 23
215: 66(bool) SGreaterThan 214 19
SelectionMerge 217 None
BranchConditional 215 216 217
216: Label
218: 2 FunctionCall 6(doSomething()
Branch 217
217: Label
219: 8(float) RayQueryGetIntersectionTKHR 45(rayQuery) 23
220: 66(bool) FOrdGreaterThan 219 27
SelectionMerge 222 None
BranchConditional 220 221 222
221: Label
223: 2 FunctionCall 6(doSomething()
Branch 222
222: Label
Branch 166
166: Label
226: 35(ptr) AccessChain 84(_mat3x4) 19 20
227: 8(float) Load 226
228: 35(ptr) AccessChain 79(_mat4x3) 19 20
229: 8(float) Load 228
230: 66(bool) FOrdEqual 227 229
SelectionMerge 232 None
BranchConditional 230 231 232
231: Label
233: 2 FunctionCall 6(doSomething()
Branch 232
232: Label
234: 43 Load 45(rayQuery)
235: 14(int) RayQueryGetRayFlagsKHR 234
236: 66(bool) UGreaterThan 235 20
SelectionMerge 238 None
BranchConditional 236 237 238
237: Label
239: 2 FunctionCall 6(doSomething()
Branch 238
238: Label
240: 43 Load 45(rayQuery)
241: 8(float) RayQueryGetRayTMinKHR 240
242: 66(bool) FOrdGreaterThan 241 27
SelectionMerge 244 None
BranchConditional 242 243 244
243: Label
245: 2 FunctionCall 6(doSomething()
Branch 244
244: Label
247: 43 Load 45(rayQuery)
248: 9(fvec3) RayQueryGetWorldRayOriginKHR 247
Store 246(o) 248
250: 43 Load 45(rayQuery)
251: 9(fvec3) RayQueryGetWorldRayDirectionKHR 250
Store 249(d) 251
252: 35(ptr) AccessChain 246(o) 20
253: 8(float) Load 252
254: 35(ptr) AccessChain 249(d) 202
255: 8(float) Load 254
256: 66(bool) FOrdEqual 253 255
SelectionMerge 258 None
BranchConditional 256 257 258
257: Label
259: 2 FunctionCall 6(doSomething()
Branch 258
258: Label
172: 78 RayQueryGetIntersectionWorldToObjectKHR 47(rayQuery) 23
Store 80(_mat4x3) 172
173: 78 Load 80(_mat4x3)
174: 83 Transpose 173
Store 85(_mat3x4) 174
175: 67(bool) RayQueryGetIntersectionFrontFaceKHR 47(rayQuery) 23
SelectionMerge 177 None
BranchConditional 175 176 177
176: Label
178: 2 FunctionCall 6(doSomething()
Branch 177
177: Label
179: 94(fvec2) RayQueryGetIntersectionBarycentricsKHR 47(rayQuery) 23
181: 8(float) CompositeExtract 179 1
182: 67(bool) FOrdEqual 181 27
SelectionMerge 184 None
BranchConditional 182 183 184
183: Label
185: 2 FunctionCall 6(doSomething()
Branch 184
184: Label
Branch 167
166: Label
187: 18(int) RayQueryGetIntersectionGeometryIndexKHR 47(rayQuery) 23
188: 67(bool) SGreaterThan 187 19
SelectionMerge 190 None
BranchConditional 188 189 190
189: Label
191: 2 FunctionCall 6(doSomething()
Branch 190
190: Label
192: 18(int) RayQueryGetIntersectionInstanceIdKHR 47(rayQuery) 23
193: 67(bool) SGreaterThan 192 19
SelectionMerge 195 None
BranchConditional 193 194 195
194: Label
196: 2 FunctionCall 6(doSomething()
Branch 195
195: Label
197: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 47(rayQuery) 23
198: 67(bool) SGreaterThan 197 19
SelectionMerge 200 None
BranchConditional 198 199 200
199: Label
201: 2 FunctionCall 6(doSomething()
Branch 200
200: Label
202: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 47(rayQuery) 23
204: 8(float) CompositeExtract 202 2
205: 67(bool) FOrdGreaterThan 204 27
SelectionMerge 207 None
BranchConditional 205 206 207
206: Label
208: 2 FunctionCall 6(doSomething()
Branch 207
207: Label
209: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 47(rayQuery) 23
210: 8(float) CompositeExtract 209 0
211: 67(bool) FOrdGreaterThan 210 27
SelectionMerge 213 None
BranchConditional 211 212 213
212: Label
214: 2 FunctionCall 6(doSomething()
Branch 213
213: Label
215: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 47(rayQuery) 23
216: 67(bool) SGreaterThan 215 19
SelectionMerge 218 None
BranchConditional 216 217 218
217: Label
219: 2 FunctionCall 6(doSomething()
Branch 218
218: Label
220: 8(float) RayQueryGetIntersectionTKHR 47(rayQuery) 23
221: 67(bool) FOrdGreaterThan 220 27
SelectionMerge 223 None
BranchConditional 221 222 223
222: Label
224: 2 FunctionCall 6(doSomething()
Branch 223
223: Label
Branch 167
167: Label
227: 35(ptr) AccessChain 85(_mat3x4) 19 20
228: 8(float) Load 227
229: 35(ptr) AccessChain 80(_mat4x3) 19 20
230: 8(float) Load 229
231: 67(bool) FOrdEqual 228 230
SelectionMerge 233 None
BranchConditional 231 232 233
232: Label
234: 2 FunctionCall 6(doSomething()
Branch 233
233: Label
235: 45 Load 47(rayQuery)
236: 14(int) RayQueryGetRayFlagsKHR 235
237: 67(bool) UGreaterThan 236 20
SelectionMerge 239 None
BranchConditional 237 238 239
238: Label
240: 2 FunctionCall 6(doSomething()
Branch 239
239: Label
241: 45 Load 47(rayQuery)
242: 8(float) RayQueryGetRayTMinKHR 241
243: 67(bool) FOrdGreaterThan 242 27
SelectionMerge 245 None
BranchConditional 243 244 245
244: Label
246: 2 FunctionCall 6(doSomething()
Branch 245
245: Label
248: 45 Load 47(rayQuery)
249: 9(fvec3) RayQueryGetWorldRayOriginKHR 248
Store 247(o) 249
251: 45 Load 47(rayQuery)
252: 9(fvec3) RayQueryGetWorldRayDirectionKHR 251
Store 250(d) 252
253: 35(ptr) AccessChain 247(o) 20
254: 8(float) Load 253
255: 35(ptr) AccessChain 250(d) 203
256: 8(float) Load 255
257: 67(bool) FOrdEqual 254 256
SelectionMerge 259 None
BranchConditional 257 258 259
258: Label
260: 2 FunctionCall 6(doSomething()
Branch 259
259: Label
Return
FunctionEnd
6(doSomething(): 2 Function None 3

View File

@@ -1,7 +1,7 @@
rayQuery-allOps.frag
// Module Version 10000
// Generated by (magic number): 80008
// Id's are bound by 265
// Id's are bound by 266
Capability Shader
Capability RayQueryProvisionalKHR
@@ -26,40 +26,40 @@ rayQuery-allOps.frag
MemberName 15(Log) 1 "y"
Name 17 ""
Name 26 "ray"
Name 45 "rayQuery"
Name 48 "rtas"
Name 51 "ray"
Name 69 "candidateType"
Name 79 "_mat4x3"
Name 84 "_mat3x4"
Name 146 "t"
Name 160 "committedStatus"
Name 246 "o"
Name 249 "d"
Name 260 "Ray"
MemberName 260(Ray) 0 "pos"
MemberName 260(Ray) 1 "tmin"
MemberName 260(Ray) 2 "dir"
MemberName 260(Ray) 3 "tmax"
Name 262 "Rays"
MemberName 262(Rays) 0 "rays"
Name 264 ""
Name 43 "ray"
Name 47 "rayQuery"
Name 50 "rtas"
Name 70 "candidateType"
Name 80 "_mat4x3"
Name 85 "_mat3x4"
Name 147 "t"
Name 161 "committedStatus"
Name 247 "o"
Name 250 "d"
Name 261 "Ray"
MemberName 261(Ray) 0 "pos"
MemberName 261(Ray) 1 "tmin"
MemberName 261(Ray) 2 "dir"
MemberName 261(Ray) 3 "tmax"
Name 263 "Rays"
MemberName 263(Rays) 0 "rays"
Name 265 ""
MemberDecorate 15(Log) 0 Offset 0
MemberDecorate 15(Log) 1 Offset 4
Decorate 15(Log) BufferBlock
Decorate 17 DescriptorSet 0
Decorate 17 Binding 0
Decorate 48(rtas) DescriptorSet 0
Decorate 48(rtas) Binding 1
MemberDecorate 260(Ray) 0 Offset 0
MemberDecorate 260(Ray) 1 Offset 12
MemberDecorate 260(Ray) 2 Offset 16
MemberDecorate 260(Ray) 3 Offset 28
Decorate 261 ArrayStride 32
MemberDecorate 262(Rays) 0 Offset 0
Decorate 262(Rays) BufferBlock
Decorate 264 DescriptorSet 0
Decorate 264 Binding 2
Decorate 50(rtas) DescriptorSet 0
Decorate 50(rtas) Binding 1
MemberDecorate 261(Ray) 0 Offset 0
MemberDecorate 261(Ray) 1 Offset 12
MemberDecorate 261(Ray) 2 Offset 16
MemberDecorate 261(Ray) 3 Offset 28
Decorate 262 ArrayStride 32
MemberDecorate 263(Rays) 0 Offset 0
Decorate 263(Rays) BufferBlock
Decorate 265 DescriptorSet 0
Decorate 265 Binding 2
2: TypeVoid
3: TypeFunction 2
8: TypeFloat 32
@@ -85,333 +85,335 @@ rayQuery-allOps.frag
35: TypePointer Function 8(float)
37: 18(int) Constant 3
38: 8(float) Constant 1176255488
43: TypeRayQueryProvisionalKHR
44: TypePointer Function 43
46: TypeAccelerationStructureKHR
47: TypePointer UniformConstant 46
48(rtas): 47(ptr) Variable UniformConstant
50: 14(int) Constant 255
66: TypeBool
68: TypePointer Function 14(int)
70: 66(bool) ConstantFalse
77: TypeMatrix 9(fvec3) 4
78: TypePointer Function 77
81: TypeVector 8(float) 4
82: TypeMatrix 81(fvec4) 3
83: TypePointer Function 82
88: 66(bool) ConstantTrue
93: TypeVector 8(float) 2
147: 8(float) Constant 1056964608
179: 14(int) Constant 1
202: 14(int) Constant 2
260(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
261: TypeRuntimeArray 260(Ray)
262(Rays): TypeStruct 261
263: TypePointer Uniform 262(Rays)
264: 263(ptr) Variable Uniform
45: TypeRayQueryProvisionalKHR
46: TypePointer Function 45
48: TypeAccelerationStructureKHR
49: TypePointer UniformConstant 48
50(rtas): 49(ptr) Variable UniformConstant
52: 14(int) Constant 255
67: TypeBool
69: TypePointer Function 14(int)
71: 67(bool) ConstantFalse
78: TypeMatrix 9(fvec3) 4
79: TypePointer Function 78
82: TypeVector 8(float) 4
83: TypeMatrix 82(fvec4) 3
84: TypePointer Function 83
89: 67(bool) ConstantTrue
94: TypeVector 8(float) 2
148: 8(float) Constant 1056964608
180: 14(int) Constant 1
203: 14(int) Constant 2
261(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
262: TypeRuntimeArray 261(Ray)
263(Rays): TypeStruct 262
264: TypePointer Uniform 263(Rays)
265: 264(ptr) Variable Uniform
4(main): 2 Function None 3
5: Label
45(rayQuery): 44(ptr) Variable Function
51(ray): 25(ptr) Variable Function
69(candidateType): 68(ptr) Variable Function
79(_mat4x3): 78(ptr) Variable Function
84(_mat3x4): 83(ptr) Variable Function
146(t): 35(ptr) Variable Function
160(committedStatus): 68(ptr) Variable Function
246(o): 29(ptr) Variable Function
249(d): 29(ptr) Variable Function
49: 46 Load 48(rtas)
52: 29(ptr) AccessChain 51(ray) 19
53: 9(fvec3) Load 52
54: 35(ptr) AccessChain 51(ray) 23
55: 8(float) Load 54
56: 29(ptr) AccessChain 51(ray) 31
57: 9(fvec3) Load 56
58: 35(ptr) AccessChain 51(ray) 37
59: 8(float) Load 58
RayQueryInitializeKHR 45(rayQuery) 49 20 50 53 55 57 59
Branch 60
60: Label
LoopMerge 62 63 None
Branch 64
64: Label
65: 43 Load 45(rayQuery)
67: 66(bool) RayQueryProceedKHR 65
BranchConditional 67 61 62
61: Label
71: 14(int) RayQueryGetIntersectionTypeKHR 45(rayQuery) 19
Store 69(candidateType) 71
72: 14(int) Load 69(candidateType)
SelectionMerge 75 None
Switch 72 75
case 0: 73
case 1: 74
73: Label
76: 43 Load 45(rayQuery)
RayQueryTerminateKHR 76
80: 77 RayQueryGetIntersectionObjectToWorldKHR 45(rayQuery) 19
Store 79(_mat4x3) 80
85: 77 Load 79(_mat4x3)
86: 82 Transpose 85
Store 84(_mat3x4) 86
87: 43 Load 45(rayQuery)
RayQueryConfirmIntersectionKHR 87
89: 66(bool) RayQueryGetIntersectionFrontFaceKHR 45(rayQuery) 23
SelectionMerge 91 None
BranchConditional 89 90 91
90: Label
92: 2 FunctionCall 6(doSomething()
Branch 91
91: Label
94: 93(fvec2) RayQueryGetIntersectionBarycentricsKHR 45(rayQuery) 23
95: 8(float) CompositeExtract 94 0
96: 66(bool) FOrdEqual 95 27
SelectionMerge 98 None
BranchConditional 96 97 98
97: Label
99: 2 FunctionCall 6(doSomething()
Branch 98
98: Label
100: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 45(rayQuery) 23
101: 66(bool) SGreaterThan 100 19
SelectionMerge 103 None
BranchConditional 101 102 103
102: Label
104: 2 FunctionCall 6(doSomething()
Branch 103
103: Label
105: 18(int) RayQueryGetIntersectionInstanceIdKHR 45(rayQuery) 23
106: 66(bool) SGreaterThan 105 19
SelectionMerge 108 None
BranchConditional 106 107 108
107: Label
109: 2 FunctionCall 6(doSomething()
Branch 108
108: Label
110: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 45(rayQuery) 23
111: 8(float) CompositeExtract 110 0
112: 66(bool) FOrdGreaterThan 111 27
SelectionMerge 114 None
BranchConditional 112 113 114
113: Label
115: 2 FunctionCall 6(doSomething()
Branch 114
114: Label
116: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 45(rayQuery) 23
117: 8(float) CompositeExtract 116 0
118: 66(bool) FOrdGreaterThan 117 27
SelectionMerge 120 None
BranchConditional 118 119 120
119: Label
121: 2 FunctionCall 6(doSomething()
Branch 120
120: Label
122: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 45(rayQuery) 23
123: 66(bool) SGreaterThan 122 19
SelectionMerge 125 None
BranchConditional 123 124 125
124: Label
126: 2 FunctionCall 6(doSomething()
Branch 125
125: Label
127: 8(float) RayQueryGetIntersectionTKHR 45(rayQuery) 23
128: 66(bool) FOrdGreaterThan 127 27
SelectionMerge 130 None
BranchConditional 128 129 130
129: Label
131: 2 FunctionCall 6(doSomething()
Branch 130
130: Label
132: 18(int) RayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR 45(rayQuery) 23
133: 66(bool) UGreaterThan 132 20
SelectionMerge 135 None
BranchConditional 133 134 135
134: Label
136: 2 FunctionCall 6(doSomething()
Branch 135
135: Label
Branch 75
43(ray): 25(ptr) Variable Function
47(rayQuery): 46(ptr) Variable Function
70(candidateType): 69(ptr) Variable Function
80(_mat4x3): 79(ptr) Variable Function
85(_mat3x4): 84(ptr) Variable Function
147(t): 35(ptr) Variable Function
161(committedStatus): 69(ptr) Variable Function
247(o): 29(ptr) Variable Function
250(d): 29(ptr) Variable Function
44: 10(Ray) FunctionCall 12(makeRayDesc()
Store 43(ray) 44
51: 48 Load 50(rtas)
53: 29(ptr) AccessChain 43(ray) 19
54: 9(fvec3) Load 53
55: 35(ptr) AccessChain 43(ray) 23
56: 8(float) Load 55
57: 29(ptr) AccessChain 43(ray) 31
58: 9(fvec3) Load 57
59: 35(ptr) AccessChain 43(ray) 37
60: 8(float) Load 59
RayQueryInitializeKHR 47(rayQuery) 51 20 52 54 56 58 60
Branch 61
61: Label
LoopMerge 63 64 None
Branch 65
65: Label
66: 45 Load 47(rayQuery)
68: 67(bool) RayQueryProceedKHR 66
BranchConditional 68 62 63
62: Label
72: 14(int) RayQueryGetIntersectionTypeKHR 47(rayQuery) 19
Store 70(candidateType) 72
73: 14(int) Load 70(candidateType)
SelectionMerge 76 None
Switch 73 76
case 0: 74
case 1: 75
74: Label
138: 77 RayQueryGetIntersectionObjectToWorldKHR 45(rayQuery) 19
Store 79(_mat4x3) 138
139: 77 Load 79(_mat4x3)
140: 82 Transpose 139
Store 84(_mat3x4) 140
141: 43 Load 45(rayQuery)
142: 66(bool) RayQueryGetIntersectionCandidateAABBOpaqueKHR 141
SelectionMerge 144 None
BranchConditional 142 143 144
143: Label
145: 2 FunctionCall 6(doSomething()
Branch 144
144: Label
Store 146(t) 147
148: 8(float) Load 146(t)
RayQueryGenerateIntersectionKHR 45(rayQuery) 148
149: 43 Load 45(rayQuery)
RayQueryTerminateKHR 149
Branch 75
75: Label
Branch 63
63: Label
Branch 60
62: Label
152: 35(ptr) AccessChain 84(_mat3x4) 19 20
153: 8(float) Load 152
154: 35(ptr) AccessChain 79(_mat4x3) 19 20
155: 8(float) Load 154
156: 66(bool) FOrdEqual 153 155
SelectionMerge 158 None
BranchConditional 156 157 158
157: Label
159: 2 FunctionCall 6(doSomething()
Branch 158
158: Label
161: 14(int) RayQueryGetIntersectionTypeKHR 45(rayQuery) 23
Store 160(committedStatus) 161
162: 14(int) Load 160(committedStatus)
SelectionMerge 166 None
Switch 162 166
case 0: 163
case 1: 164
case 2: 165
163: Label
167: 77 RayQueryGetIntersectionWorldToObjectKHR 45(rayQuery) 19
Store 79(_mat4x3) 167
168: 77 Load 79(_mat4x3)
169: 82 Transpose 168
Store 84(_mat3x4) 169
Branch 166
77: 45 Load 47(rayQuery)
RayQueryTerminateKHR 77
81: 78 RayQueryGetIntersectionObjectToWorldKHR 47(rayQuery) 19
Store 80(_mat4x3) 81
86: 78 Load 80(_mat4x3)
87: 83 Transpose 86
Store 85(_mat3x4) 87
88: 45 Load 47(rayQuery)
RayQueryConfirmIntersectionKHR 88
90: 67(bool) RayQueryGetIntersectionFrontFaceKHR 47(rayQuery) 23
SelectionMerge 92 None
BranchConditional 90 91 92
91: Label
93: 2 FunctionCall 6(doSomething()
Branch 92
92: Label
95: 94(fvec2) RayQueryGetIntersectionBarycentricsKHR 47(rayQuery) 23
96: 8(float) CompositeExtract 95 0
97: 67(bool) FOrdEqual 96 27
SelectionMerge 99 None
BranchConditional 97 98 99
98: Label
100: 2 FunctionCall 6(doSomething()
Branch 99
99: Label
101: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 47(rayQuery) 23
102: 67(bool) SGreaterThan 101 19
SelectionMerge 104 None
BranchConditional 102 103 104
103: Label
105: 2 FunctionCall 6(doSomething()
Branch 104
104: Label
106: 18(int) RayQueryGetIntersectionInstanceIdKHR 47(rayQuery) 23
107: 67(bool) SGreaterThan 106 19
SelectionMerge 109 None
BranchConditional 107 108 109
108: Label
110: 2 FunctionCall 6(doSomething()
Branch 109
109: Label
111: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 47(rayQuery) 23
112: 8(float) CompositeExtract 111 0
113: 67(bool) FOrdGreaterThan 112 27
SelectionMerge 115 None
BranchConditional 113 114 115
114: Label
116: 2 FunctionCall 6(doSomething()
Branch 115
115: Label
117: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 47(rayQuery) 23
118: 8(float) CompositeExtract 117 0
119: 67(bool) FOrdGreaterThan 118 27
SelectionMerge 121 None
BranchConditional 119 120 121
120: Label
122: 2 FunctionCall 6(doSomething()
Branch 121
121: Label
123: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 47(rayQuery) 23
124: 67(bool) SGreaterThan 123 19
SelectionMerge 126 None
BranchConditional 124 125 126
125: Label
127: 2 FunctionCall 6(doSomething()
Branch 126
126: Label
128: 8(float) RayQueryGetIntersectionTKHR 47(rayQuery) 23
129: 67(bool) FOrdGreaterThan 128 27
SelectionMerge 131 None
BranchConditional 129 130 131
130: Label
132: 2 FunctionCall 6(doSomething()
Branch 131
131: Label
133: 18(int) RayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR 47(rayQuery) 23
134: 67(bool) UGreaterThan 133 20
SelectionMerge 136 None
BranchConditional 134 135 136
135: Label
137: 2 FunctionCall 6(doSomething()
Branch 136
136: Label
Branch 76
75: Label
139: 78 RayQueryGetIntersectionObjectToWorldKHR 47(rayQuery) 19
Store 80(_mat4x3) 139
140: 78 Load 80(_mat4x3)
141: 83 Transpose 140
Store 85(_mat3x4) 141
142: 45 Load 47(rayQuery)
143: 67(bool) RayQueryGetIntersectionCandidateAABBOpaqueKHR 142
SelectionMerge 145 None
BranchConditional 143 144 145
144: Label
146: 2 FunctionCall 6(doSomething()
Branch 145
145: Label
Store 147(t) 148
149: 8(float) Load 147(t)
RayQueryGenerateIntersectionKHR 47(rayQuery) 149
150: 45 Load 47(rayQuery)
RayQueryTerminateKHR 150
Branch 76
76: Label
Branch 64
64: Label
Branch 61
63: Label
153: 35(ptr) AccessChain 85(_mat3x4) 19 20
154: 8(float) Load 153
155: 35(ptr) AccessChain 80(_mat4x3) 19 20
156: 8(float) Load 155
157: 67(bool) FOrdEqual 154 156
SelectionMerge 159 None
BranchConditional 157 158 159
158: Label
160: 2 FunctionCall 6(doSomething()
Branch 159
159: Label
162: 14(int) RayQueryGetIntersectionTypeKHR 47(rayQuery) 23
Store 161(committedStatus) 162
163: 14(int) Load 161(committedStatus)
SelectionMerge 167 None
Switch 163 167
case 0: 164
case 1: 165
case 2: 166
164: Label
171: 77 RayQueryGetIntersectionWorldToObjectKHR 45(rayQuery) 23
Store 79(_mat4x3) 171
172: 77 Load 79(_mat4x3)
173: 82 Transpose 172
Store 84(_mat3x4) 173
174: 66(bool) RayQueryGetIntersectionFrontFaceKHR 45(rayQuery) 23
SelectionMerge 176 None
BranchConditional 174 175 176
175: Label
177: 2 FunctionCall 6(doSomething()
Branch 176
176: Label
178: 93(fvec2) RayQueryGetIntersectionBarycentricsKHR 45(rayQuery) 23
180: 8(float) CompositeExtract 178 1
181: 66(bool) FOrdEqual 180 27
SelectionMerge 183 None
BranchConditional 181 182 183
182: Label
184: 2 FunctionCall 6(doSomething()
Branch 183
183: Label
Branch 166
168: 78 RayQueryGetIntersectionWorldToObjectKHR 47(rayQuery) 19
Store 80(_mat4x3) 168
169: 78 Load 80(_mat4x3)
170: 83 Transpose 169
Store 85(_mat3x4) 170
Branch 167
165: Label
186: 18(int) RayQueryGetIntersectionGeometryIndexKHR 45(rayQuery) 23
187: 66(bool) SGreaterThan 186 19
SelectionMerge 189 None
BranchConditional 187 188 189
188: Label
190: 2 FunctionCall 6(doSomething()
Branch 189
189: Label
191: 18(int) RayQueryGetIntersectionInstanceIdKHR 45(rayQuery) 23
192: 66(bool) SGreaterThan 191 19
SelectionMerge 194 None
BranchConditional 192 193 194
193: Label
195: 2 FunctionCall 6(doSomething()
Branch 194
194: Label
196: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 45(rayQuery) 23
197: 66(bool) SGreaterThan 196 19
SelectionMerge 199 None
BranchConditional 197 198 199
198: Label
200: 2 FunctionCall 6(doSomething()
Branch 199
199: Label
201: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 45(rayQuery) 23
203: 8(float) CompositeExtract 201 2
204: 66(bool) FOrdGreaterThan 203 27
SelectionMerge 206 None
BranchConditional 204 205 206
205: Label
207: 2 FunctionCall 6(doSomething()
Branch 206
206: Label
208: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 45(rayQuery) 23
209: 8(float) CompositeExtract 208 0
210: 66(bool) FOrdGreaterThan 209 27
SelectionMerge 212 None
BranchConditional 210 211 212
211: Label
213: 2 FunctionCall 6(doSomething()
Branch 212
212: Label
214: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 45(rayQuery) 23
215: 66(bool) SGreaterThan 214 19
SelectionMerge 217 None
BranchConditional 215 216 217
216: Label
218: 2 FunctionCall 6(doSomething()
Branch 217
217: Label
219: 8(float) RayQueryGetIntersectionTKHR 45(rayQuery) 23
220: 66(bool) FOrdGreaterThan 219 27
SelectionMerge 222 None
BranchConditional 220 221 222
221: Label
223: 2 FunctionCall 6(doSomething()
Branch 222
222: Label
Branch 166
166: Label
226: 35(ptr) AccessChain 84(_mat3x4) 19 20
227: 8(float) Load 226
228: 35(ptr) AccessChain 79(_mat4x3) 19 20
229: 8(float) Load 228
230: 66(bool) FOrdEqual 227 229
SelectionMerge 232 None
BranchConditional 230 231 232
231: Label
233: 2 FunctionCall 6(doSomething()
Branch 232
232: Label
234: 43 Load 45(rayQuery)
235: 14(int) RayQueryGetRayFlagsKHR 234
236: 66(bool) UGreaterThan 235 20
SelectionMerge 238 None
BranchConditional 236 237 238
237: Label
239: 2 FunctionCall 6(doSomething()
Branch 238
238: Label
240: 43 Load 45(rayQuery)
241: 8(float) RayQueryGetRayTMinKHR 240
242: 66(bool) FOrdGreaterThan 241 27
SelectionMerge 244 None
BranchConditional 242 243 244
243: Label
245: 2 FunctionCall 6(doSomething()
Branch 244
244: Label
247: 43 Load 45(rayQuery)
248: 9(fvec3) RayQueryGetWorldRayOriginKHR 247
Store 246(o) 248
250: 43 Load 45(rayQuery)
251: 9(fvec3) RayQueryGetWorldRayDirectionKHR 250
Store 249(d) 251
252: 35(ptr) AccessChain 246(o) 20
253: 8(float) Load 252
254: 35(ptr) AccessChain 249(d) 202
255: 8(float) Load 254
256: 66(bool) FOrdEqual 253 255
SelectionMerge 258 None
BranchConditional 256 257 258
257: Label
259: 2 FunctionCall 6(doSomething()
Branch 258
258: Label
172: 78 RayQueryGetIntersectionWorldToObjectKHR 47(rayQuery) 23
Store 80(_mat4x3) 172
173: 78 Load 80(_mat4x3)
174: 83 Transpose 173
Store 85(_mat3x4) 174
175: 67(bool) RayQueryGetIntersectionFrontFaceKHR 47(rayQuery) 23
SelectionMerge 177 None
BranchConditional 175 176 177
176: Label
178: 2 FunctionCall 6(doSomething()
Branch 177
177: Label
179: 94(fvec2) RayQueryGetIntersectionBarycentricsKHR 47(rayQuery) 23
181: 8(float) CompositeExtract 179 1
182: 67(bool) FOrdEqual 181 27
SelectionMerge 184 None
BranchConditional 182 183 184
183: Label
185: 2 FunctionCall 6(doSomething()
Branch 184
184: Label
Branch 167
166: Label
187: 18(int) RayQueryGetIntersectionGeometryIndexKHR 47(rayQuery) 23
188: 67(bool) SGreaterThan 187 19
SelectionMerge 190 None
BranchConditional 188 189 190
189: Label
191: 2 FunctionCall 6(doSomething()
Branch 190
190: Label
192: 18(int) RayQueryGetIntersectionInstanceIdKHR 47(rayQuery) 23
193: 67(bool) SGreaterThan 192 19
SelectionMerge 195 None
BranchConditional 193 194 195
194: Label
196: 2 FunctionCall 6(doSomething()
Branch 195
195: Label
197: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 47(rayQuery) 23
198: 67(bool) SGreaterThan 197 19
SelectionMerge 200 None
BranchConditional 198 199 200
199: Label
201: 2 FunctionCall 6(doSomething()
Branch 200
200: Label
202: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 47(rayQuery) 23
204: 8(float) CompositeExtract 202 2
205: 67(bool) FOrdGreaterThan 204 27
SelectionMerge 207 None
BranchConditional 205 206 207
206: Label
208: 2 FunctionCall 6(doSomething()
Branch 207
207: Label
209: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 47(rayQuery) 23
210: 8(float) CompositeExtract 209 0
211: 67(bool) FOrdGreaterThan 210 27
SelectionMerge 213 None
BranchConditional 211 212 213
212: Label
214: 2 FunctionCall 6(doSomething()
Branch 213
213: Label
215: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 47(rayQuery) 23
216: 67(bool) SGreaterThan 215 19
SelectionMerge 218 None
BranchConditional 216 217 218
217: Label
219: 2 FunctionCall 6(doSomething()
Branch 218
218: Label
220: 8(float) RayQueryGetIntersectionTKHR 47(rayQuery) 23
221: 67(bool) FOrdGreaterThan 220 27
SelectionMerge 223 None
BranchConditional 221 222 223
222: Label
224: 2 FunctionCall 6(doSomething()
Branch 223
223: Label
Branch 167
167: Label
227: 35(ptr) AccessChain 85(_mat3x4) 19 20
228: 8(float) Load 227
229: 35(ptr) AccessChain 80(_mat4x3) 19 20
230: 8(float) Load 229
231: 67(bool) FOrdEqual 228 230
SelectionMerge 233 None
BranchConditional 231 232 233
232: Label
234: 2 FunctionCall 6(doSomething()
Branch 233
233: Label
235: 45 Load 47(rayQuery)
236: 14(int) RayQueryGetRayFlagsKHR 235
237: 67(bool) UGreaterThan 236 20
SelectionMerge 239 None
BranchConditional 237 238 239
238: Label
240: 2 FunctionCall 6(doSomething()
Branch 239
239: Label
241: 45 Load 47(rayQuery)
242: 8(float) RayQueryGetRayTMinKHR 241
243: 67(bool) FOrdGreaterThan 242 27
SelectionMerge 245 None
BranchConditional 243 244 245
244: Label
246: 2 FunctionCall 6(doSomething()
Branch 245
245: Label
248: 45 Load 47(rayQuery)
249: 9(fvec3) RayQueryGetWorldRayOriginKHR 248
Store 247(o) 249
251: 45 Load 47(rayQuery)
252: 9(fvec3) RayQueryGetWorldRayDirectionKHR 251
Store 250(d) 252
253: 35(ptr) AccessChain 247(o) 20
254: 8(float) Load 253
255: 35(ptr) AccessChain 250(d) 203
256: 8(float) Load 255
257: 67(bool) FOrdEqual 254 256
SelectionMerge 259 None
BranchConditional 257 258 259
258: Label
260: 2 FunctionCall 6(doSomething()
Branch 259
259: Label
Return
FunctionEnd
6(doSomething(): 2 Function None 3

View File

@@ -1,7 +1,7 @@
rayQuery-allOps.rgen
// Module Version 10000
// Generated by (magic number): 80008
// Id's are bound by 265
// Id's are bound by 266
Capability RayQueryProvisionalKHR
Capability RayTracingNV
@@ -26,40 +26,40 @@ rayQuery-allOps.rgen
MemberName 15(Log) 1 "y"
Name 17 ""
Name 26 "ray"
Name 45 "rayQuery"
Name 48 "rtas"
Name 51 "ray"
Name 69 "candidateType"
Name 79 "_mat4x3"
Name 84 "_mat3x4"
Name 146 "t"
Name 160 "committedStatus"
Name 246 "o"
Name 249 "d"
Name 260 "Ray"
MemberName 260(Ray) 0 "pos"
MemberName 260(Ray) 1 "tmin"
MemberName 260(Ray) 2 "dir"
MemberName 260(Ray) 3 "tmax"
Name 262 "Rays"
MemberName 262(Rays) 0 "rays"
Name 264 ""
Name 43 "ray"
Name 47 "rayQuery"
Name 50 "rtas"
Name 70 "candidateType"
Name 80 "_mat4x3"
Name 85 "_mat3x4"
Name 147 "t"
Name 161 "committedStatus"
Name 247 "o"
Name 250 "d"
Name 261 "Ray"
MemberName 261(Ray) 0 "pos"
MemberName 261(Ray) 1 "tmin"
MemberName 261(Ray) 2 "dir"
MemberName 261(Ray) 3 "tmax"
Name 263 "Rays"
MemberName 263(Rays) 0 "rays"
Name 265 ""
MemberDecorate 15(Log) 0 Offset 0
MemberDecorate 15(Log) 1 Offset 4
Decorate 15(Log) BufferBlock
Decorate 17 DescriptorSet 0
Decorate 17 Binding 0
Decorate 48(rtas) DescriptorSet 0
Decorate 48(rtas) Binding 1
MemberDecorate 260(Ray) 0 Offset 0
MemberDecorate 260(Ray) 1 Offset 12
MemberDecorate 260(Ray) 2 Offset 16
MemberDecorate 260(Ray) 3 Offset 28
Decorate 261 ArrayStride 32
MemberDecorate 262(Rays) 0 Offset 0
Decorate 262(Rays) BufferBlock
Decorate 264 DescriptorSet 0
Decorate 264 Binding 2
Decorate 50(rtas) DescriptorSet 0
Decorate 50(rtas) Binding 1
MemberDecorate 261(Ray) 0 Offset 0
MemberDecorate 261(Ray) 1 Offset 12
MemberDecorate 261(Ray) 2 Offset 16
MemberDecorate 261(Ray) 3 Offset 28
Decorate 262 ArrayStride 32
MemberDecorate 263(Rays) 0 Offset 0
Decorate 263(Rays) BufferBlock
Decorate 265 DescriptorSet 0
Decorate 265 Binding 2
2: TypeVoid
3: TypeFunction 2
8: TypeFloat 32
@@ -85,333 +85,335 @@ rayQuery-allOps.rgen
35: TypePointer Function 8(float)
37: 18(int) Constant 3
38: 8(float) Constant 1176255488
43: TypeRayQueryProvisionalKHR
44: TypePointer Function 43
46: TypeAccelerationStructureKHR
47: TypePointer UniformConstant 46
48(rtas): 47(ptr) Variable UniformConstant
50: 14(int) Constant 255
66: TypeBool
68: TypePointer Function 14(int)
70: 66(bool) ConstantFalse
77: TypeMatrix 9(fvec3) 4
78: TypePointer Function 77
81: TypeVector 8(float) 4
82: TypeMatrix 81(fvec4) 3
83: TypePointer Function 82
88: 66(bool) ConstantTrue
93: TypeVector 8(float) 2
147: 8(float) Constant 1056964608
179: 14(int) Constant 1
202: 14(int) Constant 2
260(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
261: TypeRuntimeArray 260(Ray)
262(Rays): TypeStruct 261
263: TypePointer Uniform 262(Rays)
264: 263(ptr) Variable Uniform
45: TypeRayQueryProvisionalKHR
46: TypePointer Function 45
48: TypeAccelerationStructureKHR
49: TypePointer UniformConstant 48
50(rtas): 49(ptr) Variable UniformConstant
52: 14(int) Constant 255
67: TypeBool
69: TypePointer Function 14(int)
71: 67(bool) ConstantFalse
78: TypeMatrix 9(fvec3) 4
79: TypePointer Function 78
82: TypeVector 8(float) 4
83: TypeMatrix 82(fvec4) 3
84: TypePointer Function 83
89: 67(bool) ConstantTrue
94: TypeVector 8(float) 2
148: 8(float) Constant 1056964608
180: 14(int) Constant 1
203: 14(int) Constant 2
261(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
262: TypeRuntimeArray 261(Ray)
263(Rays): TypeStruct 262
264: TypePointer Uniform 263(Rays)
265: 264(ptr) Variable Uniform
4(main): 2 Function None 3
5: Label
45(rayQuery): 44(ptr) Variable Function
51(ray): 25(ptr) Variable Function
69(candidateType): 68(ptr) Variable Function
79(_mat4x3): 78(ptr) Variable Function
84(_mat3x4): 83(ptr) Variable Function
146(t): 35(ptr) Variable Function
160(committedStatus): 68(ptr) Variable Function
246(o): 29(ptr) Variable Function
249(d): 29(ptr) Variable Function
49: 46 Load 48(rtas)
52: 29(ptr) AccessChain 51(ray) 19
53: 9(fvec3) Load 52
54: 35(ptr) AccessChain 51(ray) 23
55: 8(float) Load 54
56: 29(ptr) AccessChain 51(ray) 31
57: 9(fvec3) Load 56
58: 35(ptr) AccessChain 51(ray) 37
59: 8(float) Load 58
RayQueryInitializeKHR 45(rayQuery) 49 20 50 53 55 57 59
Branch 60
60: Label
LoopMerge 62 63 None
Branch 64
64: Label
65: 43 Load 45(rayQuery)
67: 66(bool) RayQueryProceedKHR 65
BranchConditional 67 61 62
61: Label
71: 14(int) RayQueryGetIntersectionTypeKHR 45(rayQuery) 19
Store 69(candidateType) 71
72: 14(int) Load 69(candidateType)
SelectionMerge 75 None
Switch 72 75
case 0: 73
case 1: 74
73: Label
76: 43 Load 45(rayQuery)
RayQueryTerminateKHR 76
80: 77 RayQueryGetIntersectionObjectToWorldKHR 45(rayQuery) 19
Store 79(_mat4x3) 80
85: 77 Load 79(_mat4x3)
86: 82 Transpose 85
Store 84(_mat3x4) 86
87: 43 Load 45(rayQuery)
RayQueryConfirmIntersectionKHR 87
89: 66(bool) RayQueryGetIntersectionFrontFaceKHR 45(rayQuery) 23
SelectionMerge 91 None
BranchConditional 89 90 91
90: Label
92: 2 FunctionCall 6(doSomething()
Branch 91
91: Label
94: 93(fvec2) RayQueryGetIntersectionBarycentricsKHR 45(rayQuery) 23
95: 8(float) CompositeExtract 94 0
96: 66(bool) FOrdEqual 95 27
SelectionMerge 98 None
BranchConditional 96 97 98
97: Label
99: 2 FunctionCall 6(doSomething()
Branch 98
98: Label
100: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 45(rayQuery) 23
101: 66(bool) SGreaterThan 100 19
SelectionMerge 103 None
BranchConditional 101 102 103
102: Label
104: 2 FunctionCall 6(doSomething()
Branch 103
103: Label
105: 18(int) RayQueryGetIntersectionInstanceIdKHR 45(rayQuery) 23
106: 66(bool) SGreaterThan 105 19
SelectionMerge 108 None
BranchConditional 106 107 108
107: Label
109: 2 FunctionCall 6(doSomething()
Branch 108
108: Label
110: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 45(rayQuery) 23
111: 8(float) CompositeExtract 110 0
112: 66(bool) FOrdGreaterThan 111 27
SelectionMerge 114 None
BranchConditional 112 113 114
113: Label
115: 2 FunctionCall 6(doSomething()
Branch 114
114: Label
116: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 45(rayQuery) 23
117: 8(float) CompositeExtract 116 0
118: 66(bool) FOrdGreaterThan 117 27
SelectionMerge 120 None
BranchConditional 118 119 120
119: Label
121: 2 FunctionCall 6(doSomething()
Branch 120
120: Label
122: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 45(rayQuery) 23
123: 66(bool) SGreaterThan 122 19
SelectionMerge 125 None
BranchConditional 123 124 125
124: Label
126: 2 FunctionCall 6(doSomething()
Branch 125
125: Label
127: 8(float) RayQueryGetIntersectionTKHR 45(rayQuery) 23
128: 66(bool) FOrdGreaterThan 127 27
SelectionMerge 130 None
BranchConditional 128 129 130
129: Label
131: 2 FunctionCall 6(doSomething()
Branch 130
130: Label
132: 18(int) RayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR 45(rayQuery) 23
133: 66(bool) UGreaterThan 132 20
SelectionMerge 135 None
BranchConditional 133 134 135
134: Label
136: 2 FunctionCall 6(doSomething()
Branch 135
135: Label
Branch 75
43(ray): 25(ptr) Variable Function
47(rayQuery): 46(ptr) Variable Function
70(candidateType): 69(ptr) Variable Function
80(_mat4x3): 79(ptr) Variable Function
85(_mat3x4): 84(ptr) Variable Function
147(t): 35(ptr) Variable Function
161(committedStatus): 69(ptr) Variable Function
247(o): 29(ptr) Variable Function
250(d): 29(ptr) Variable Function
44: 10(Ray) FunctionCall 12(makeRayDesc()
Store 43(ray) 44
51: 48 Load 50(rtas)
53: 29(ptr) AccessChain 43(ray) 19
54: 9(fvec3) Load 53
55: 35(ptr) AccessChain 43(ray) 23
56: 8(float) Load 55
57: 29(ptr) AccessChain 43(ray) 31
58: 9(fvec3) Load 57
59: 35(ptr) AccessChain 43(ray) 37
60: 8(float) Load 59
RayQueryInitializeKHR 47(rayQuery) 51 20 52 54 56 58 60
Branch 61
61: Label
LoopMerge 63 64 None
Branch 65
65: Label
66: 45 Load 47(rayQuery)
68: 67(bool) RayQueryProceedKHR 66
BranchConditional 68 62 63
62: Label
72: 14(int) RayQueryGetIntersectionTypeKHR 47(rayQuery) 19
Store 70(candidateType) 72
73: 14(int) Load 70(candidateType)
SelectionMerge 76 None
Switch 73 76
case 0: 74
case 1: 75
74: Label
138: 77 RayQueryGetIntersectionObjectToWorldKHR 45(rayQuery) 19
Store 79(_mat4x3) 138
139: 77 Load 79(_mat4x3)
140: 82 Transpose 139
Store 84(_mat3x4) 140
141: 43 Load 45(rayQuery)
142: 66(bool) RayQueryGetIntersectionCandidateAABBOpaqueKHR 141
SelectionMerge 144 None
BranchConditional 142 143 144
143: Label
145: 2 FunctionCall 6(doSomething()
Branch 144
144: Label
Store 146(t) 147
148: 8(float) Load 146(t)
RayQueryGenerateIntersectionKHR 45(rayQuery) 148
149: 43 Load 45(rayQuery)
RayQueryTerminateKHR 149
Branch 75
75: Label
Branch 63
63: Label
Branch 60
62: Label
152: 35(ptr) AccessChain 84(_mat3x4) 19 20
153: 8(float) Load 152
154: 35(ptr) AccessChain 79(_mat4x3) 19 20
155: 8(float) Load 154
156: 66(bool) FOrdEqual 153 155
SelectionMerge 158 None
BranchConditional 156 157 158
157: Label
159: 2 FunctionCall 6(doSomething()
Branch 158
158: Label
161: 14(int) RayQueryGetIntersectionTypeKHR 45(rayQuery) 23
Store 160(committedStatus) 161
162: 14(int) Load 160(committedStatus)
SelectionMerge 166 None
Switch 162 166
case 0: 163
case 1: 164
case 2: 165
163: Label
167: 77 RayQueryGetIntersectionWorldToObjectKHR 45(rayQuery) 19
Store 79(_mat4x3) 167
168: 77 Load 79(_mat4x3)
169: 82 Transpose 168
Store 84(_mat3x4) 169
Branch 166
77: 45 Load 47(rayQuery)
RayQueryTerminateKHR 77
81: 78 RayQueryGetIntersectionObjectToWorldKHR 47(rayQuery) 19
Store 80(_mat4x3) 81
86: 78 Load 80(_mat4x3)
87: 83 Transpose 86
Store 85(_mat3x4) 87
88: 45 Load 47(rayQuery)
RayQueryConfirmIntersectionKHR 88
90: 67(bool) RayQueryGetIntersectionFrontFaceKHR 47(rayQuery) 23
SelectionMerge 92 None
BranchConditional 90 91 92
91: Label
93: 2 FunctionCall 6(doSomething()
Branch 92
92: Label
95: 94(fvec2) RayQueryGetIntersectionBarycentricsKHR 47(rayQuery) 23
96: 8(float) CompositeExtract 95 0
97: 67(bool) FOrdEqual 96 27
SelectionMerge 99 None
BranchConditional 97 98 99
98: Label
100: 2 FunctionCall 6(doSomething()
Branch 99
99: Label
101: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 47(rayQuery) 23
102: 67(bool) SGreaterThan 101 19
SelectionMerge 104 None
BranchConditional 102 103 104
103: Label
105: 2 FunctionCall 6(doSomething()
Branch 104
104: Label
106: 18(int) RayQueryGetIntersectionInstanceIdKHR 47(rayQuery) 23
107: 67(bool) SGreaterThan 106 19
SelectionMerge 109 None
BranchConditional 107 108 109
108: Label
110: 2 FunctionCall 6(doSomething()
Branch 109
109: Label
111: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 47(rayQuery) 23
112: 8(float) CompositeExtract 111 0
113: 67(bool) FOrdGreaterThan 112 27
SelectionMerge 115 None
BranchConditional 113 114 115
114: Label
116: 2 FunctionCall 6(doSomething()
Branch 115
115: Label
117: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 47(rayQuery) 23
118: 8(float) CompositeExtract 117 0
119: 67(bool) FOrdGreaterThan 118 27
SelectionMerge 121 None
BranchConditional 119 120 121
120: Label
122: 2 FunctionCall 6(doSomething()
Branch 121
121: Label
123: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 47(rayQuery) 23
124: 67(bool) SGreaterThan 123 19
SelectionMerge 126 None
BranchConditional 124 125 126
125: Label
127: 2 FunctionCall 6(doSomething()
Branch 126
126: Label
128: 8(float) RayQueryGetIntersectionTKHR 47(rayQuery) 23
129: 67(bool) FOrdGreaterThan 128 27
SelectionMerge 131 None
BranchConditional 129 130 131
130: Label
132: 2 FunctionCall 6(doSomething()
Branch 131
131: Label
133: 18(int) RayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR 47(rayQuery) 23
134: 67(bool) UGreaterThan 133 20
SelectionMerge 136 None
BranchConditional 134 135 136
135: Label
137: 2 FunctionCall 6(doSomething()
Branch 136
136: Label
Branch 76
75: Label
139: 78 RayQueryGetIntersectionObjectToWorldKHR 47(rayQuery) 19
Store 80(_mat4x3) 139
140: 78 Load 80(_mat4x3)
141: 83 Transpose 140
Store 85(_mat3x4) 141
142: 45 Load 47(rayQuery)
143: 67(bool) RayQueryGetIntersectionCandidateAABBOpaqueKHR 142
SelectionMerge 145 None
BranchConditional 143 144 145
144: Label
146: 2 FunctionCall 6(doSomething()
Branch 145
145: Label
Store 147(t) 148
149: 8(float) Load 147(t)
RayQueryGenerateIntersectionKHR 47(rayQuery) 149
150: 45 Load 47(rayQuery)
RayQueryTerminateKHR 150
Branch 76
76: Label
Branch 64
64: Label
Branch 61
63: Label
153: 35(ptr) AccessChain 85(_mat3x4) 19 20
154: 8(float) Load 153
155: 35(ptr) AccessChain 80(_mat4x3) 19 20
156: 8(float) Load 155
157: 67(bool) FOrdEqual 154 156
SelectionMerge 159 None
BranchConditional 157 158 159
158: Label
160: 2 FunctionCall 6(doSomething()
Branch 159
159: Label
162: 14(int) RayQueryGetIntersectionTypeKHR 47(rayQuery) 23
Store 161(committedStatus) 162
163: 14(int) Load 161(committedStatus)
SelectionMerge 167 None
Switch 163 167
case 0: 164
case 1: 165
case 2: 166
164: Label
171: 77 RayQueryGetIntersectionWorldToObjectKHR 45(rayQuery) 23
Store 79(_mat4x3) 171
172: 77 Load 79(_mat4x3)
173: 82 Transpose 172
Store 84(_mat3x4) 173
174: 66(bool) RayQueryGetIntersectionFrontFaceKHR 45(rayQuery) 23
SelectionMerge 176 None
BranchConditional 174 175 176
175: Label
177: 2 FunctionCall 6(doSomething()
Branch 176
176: Label
178: 93(fvec2) RayQueryGetIntersectionBarycentricsKHR 45(rayQuery) 23
180: 8(float) CompositeExtract 178 1
181: 66(bool) FOrdEqual 180 27
SelectionMerge 183 None
BranchConditional 181 182 183
182: Label
184: 2 FunctionCall 6(doSomething()
Branch 183
183: Label
Branch 166
168: 78 RayQueryGetIntersectionWorldToObjectKHR 47(rayQuery) 19
Store 80(_mat4x3) 168
169: 78 Load 80(_mat4x3)
170: 83 Transpose 169
Store 85(_mat3x4) 170
Branch 167
165: Label
186: 18(int) RayQueryGetIntersectionGeometryIndexKHR 45(rayQuery) 23
187: 66(bool) SGreaterThan 186 19
SelectionMerge 189 None
BranchConditional 187 188 189
188: Label
190: 2 FunctionCall 6(doSomething()
Branch 189
189: Label
191: 18(int) RayQueryGetIntersectionInstanceIdKHR 45(rayQuery) 23
192: 66(bool) SGreaterThan 191 19
SelectionMerge 194 None
BranchConditional 192 193 194
193: Label
195: 2 FunctionCall 6(doSomething()
Branch 194
194: Label
196: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 45(rayQuery) 23
197: 66(bool) SGreaterThan 196 19
SelectionMerge 199 None
BranchConditional 197 198 199
198: Label
200: 2 FunctionCall 6(doSomething()
Branch 199
199: Label
201: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 45(rayQuery) 23
203: 8(float) CompositeExtract 201 2
204: 66(bool) FOrdGreaterThan 203 27
SelectionMerge 206 None
BranchConditional 204 205 206
205: Label
207: 2 FunctionCall 6(doSomething()
Branch 206
206: Label
208: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 45(rayQuery) 23
209: 8(float) CompositeExtract 208 0
210: 66(bool) FOrdGreaterThan 209 27
SelectionMerge 212 None
BranchConditional 210 211 212
211: Label
213: 2 FunctionCall 6(doSomething()
Branch 212
212: Label
214: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 45(rayQuery) 23
215: 66(bool) SGreaterThan 214 19
SelectionMerge 217 None
BranchConditional 215 216 217
216: Label
218: 2 FunctionCall 6(doSomething()
Branch 217
217: Label
219: 8(float) RayQueryGetIntersectionTKHR 45(rayQuery) 23
220: 66(bool) FOrdGreaterThan 219 27
SelectionMerge 222 None
BranchConditional 220 221 222
221: Label
223: 2 FunctionCall 6(doSomething()
Branch 222
222: Label
Branch 166
166: Label
226: 35(ptr) AccessChain 84(_mat3x4) 19 20
227: 8(float) Load 226
228: 35(ptr) AccessChain 79(_mat4x3) 19 20
229: 8(float) Load 228
230: 66(bool) FOrdEqual 227 229
SelectionMerge 232 None
BranchConditional 230 231 232
231: Label
233: 2 FunctionCall 6(doSomething()
Branch 232
232: Label
234: 43 Load 45(rayQuery)
235: 14(int) RayQueryGetRayFlagsKHR 234
236: 66(bool) UGreaterThan 235 20
SelectionMerge 238 None
BranchConditional 236 237 238
237: Label
239: 2 FunctionCall 6(doSomething()
Branch 238
238: Label
240: 43 Load 45(rayQuery)
241: 8(float) RayQueryGetRayTMinKHR 240
242: 66(bool) FOrdGreaterThan 241 27
SelectionMerge 244 None
BranchConditional 242 243 244
243: Label
245: 2 FunctionCall 6(doSomething()
Branch 244
244: Label
247: 43 Load 45(rayQuery)
248: 9(fvec3) RayQueryGetWorldRayOriginKHR 247
Store 246(o) 248
250: 43 Load 45(rayQuery)
251: 9(fvec3) RayQueryGetWorldRayDirectionKHR 250
Store 249(d) 251
252: 35(ptr) AccessChain 246(o) 20
253: 8(float) Load 252
254: 35(ptr) AccessChain 249(d) 202
255: 8(float) Load 254
256: 66(bool) FOrdEqual 253 255
SelectionMerge 258 None
BranchConditional 256 257 258
257: Label
259: 2 FunctionCall 6(doSomething()
Branch 258
258: Label
172: 78 RayQueryGetIntersectionWorldToObjectKHR 47(rayQuery) 23
Store 80(_mat4x3) 172
173: 78 Load 80(_mat4x3)
174: 83 Transpose 173
Store 85(_mat3x4) 174
175: 67(bool) RayQueryGetIntersectionFrontFaceKHR 47(rayQuery) 23
SelectionMerge 177 None
BranchConditional 175 176 177
176: Label
178: 2 FunctionCall 6(doSomething()
Branch 177
177: Label
179: 94(fvec2) RayQueryGetIntersectionBarycentricsKHR 47(rayQuery) 23
181: 8(float) CompositeExtract 179 1
182: 67(bool) FOrdEqual 181 27
SelectionMerge 184 None
BranchConditional 182 183 184
183: Label
185: 2 FunctionCall 6(doSomething()
Branch 184
184: Label
Branch 167
166: Label
187: 18(int) RayQueryGetIntersectionGeometryIndexKHR 47(rayQuery) 23
188: 67(bool) SGreaterThan 187 19
SelectionMerge 190 None
BranchConditional 188 189 190
189: Label
191: 2 FunctionCall 6(doSomething()
Branch 190
190: Label
192: 18(int) RayQueryGetIntersectionInstanceIdKHR 47(rayQuery) 23
193: 67(bool) SGreaterThan 192 19
SelectionMerge 195 None
BranchConditional 193 194 195
194: Label
196: 2 FunctionCall 6(doSomething()
Branch 195
195: Label
197: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 47(rayQuery) 23
198: 67(bool) SGreaterThan 197 19
SelectionMerge 200 None
BranchConditional 198 199 200
199: Label
201: 2 FunctionCall 6(doSomething()
Branch 200
200: Label
202: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 47(rayQuery) 23
204: 8(float) CompositeExtract 202 2
205: 67(bool) FOrdGreaterThan 204 27
SelectionMerge 207 None
BranchConditional 205 206 207
206: Label
208: 2 FunctionCall 6(doSomething()
Branch 207
207: Label
209: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 47(rayQuery) 23
210: 8(float) CompositeExtract 209 0
211: 67(bool) FOrdGreaterThan 210 27
SelectionMerge 213 None
BranchConditional 211 212 213
212: Label
214: 2 FunctionCall 6(doSomething()
Branch 213
213: Label
215: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 47(rayQuery) 23
216: 67(bool) SGreaterThan 215 19
SelectionMerge 218 None
BranchConditional 216 217 218
217: Label
219: 2 FunctionCall 6(doSomething()
Branch 218
218: Label
220: 8(float) RayQueryGetIntersectionTKHR 47(rayQuery) 23
221: 67(bool) FOrdGreaterThan 220 27
SelectionMerge 223 None
BranchConditional 221 222 223
222: Label
224: 2 FunctionCall 6(doSomething()
Branch 223
223: Label
Branch 167
167: Label
227: 35(ptr) AccessChain 85(_mat3x4) 19 20
228: 8(float) Load 227
229: 35(ptr) AccessChain 80(_mat4x3) 19 20
230: 8(float) Load 229
231: 67(bool) FOrdEqual 228 230
SelectionMerge 233 None
BranchConditional 231 232 233
232: Label
234: 2 FunctionCall 6(doSomething()
Branch 233
233: Label
235: 45 Load 47(rayQuery)
236: 14(int) RayQueryGetRayFlagsKHR 235
237: 67(bool) UGreaterThan 236 20
SelectionMerge 239 None
BranchConditional 237 238 239
238: Label
240: 2 FunctionCall 6(doSomething()
Branch 239
239: Label
241: 45 Load 47(rayQuery)
242: 8(float) RayQueryGetRayTMinKHR 241
243: 67(bool) FOrdGreaterThan 242 27
SelectionMerge 245 None
BranchConditional 243 244 245
244: Label
246: 2 FunctionCall 6(doSomething()
Branch 245
245: Label
248: 45 Load 47(rayQuery)
249: 9(fvec3) RayQueryGetWorldRayOriginKHR 248
Store 247(o) 249
251: 45 Load 47(rayQuery)
252: 9(fvec3) RayQueryGetWorldRayDirectionKHR 251
Store 250(d) 252
253: 35(ptr) AccessChain 247(o) 20
254: 8(float) Load 253
255: 35(ptr) AccessChain 250(d) 203
256: 8(float) Load 255
257: 67(bool) FOrdEqual 254 256
SelectionMerge 259 None
BranchConditional 257 258 259
258: Label
260: 2 FunctionCall 6(doSomething()
Branch 259
259: Label
Return
FunctionEnd
6(doSomething(): 2 Function None 3

View File

@@ -1,7 +1,7 @@
rayQuery-array-2d-dynamic.rgen
// Module Version 10000
// Generated by (magic number): 80008
// Id's are bound by 126
// Id's are bound by 128
Capability RayQueryProvisionalKHR
Capability RayTracingNV
@@ -26,35 +26,35 @@ rayQuery-array-2d-dynamic.rgen
Name 23 "gl_LaunchIDNV"
Name 28 "gl_LaunchSizeNV"
Name 50 "rtas"
Name 68 "index"
Name 70 "ray"
Name 71 "Ray"
MemberName 71(Ray) 0 "pos"
MemberName 71(Ray) 1 "tmin"
MemberName 71(Ray) 2 "dir"
MemberName 71(Ray) 3 "tmax"
Name 73 "Rays"
MemberName 73(Rays) 0 "rays"
Name 75 ""
Name 90 "rayQuery"
Name 92 "param"
Name 95 "param"
Name 118 "C"
Name 120 "param"
Name 123 "param"
Name 69 "index"
Name 71 "ray"
Name 72 "Ray"
MemberName 72(Ray) 0 "pos"
MemberName 72(Ray) 1 "tmin"
MemberName 72(Ray) 2 "dir"
MemberName 72(Ray) 3 "tmax"
Name 74 "Rays"
MemberName 74(Rays) 0 "rays"
Name 76 ""
Name 91 "rayQuery"
Name 93 "param"
Name 96 "param"
Name 120 "C"
Name 122 "param"
Name 125 "param"
Decorate 23(gl_LaunchIDNV) BuiltIn LaunchIdKHR
Decorate 28(gl_LaunchSizeNV) BuiltIn LaunchSizeKHR
Decorate 50(rtas) DescriptorSet 0
Decorate 50(rtas) Binding 0
MemberDecorate 71(Ray) 0 Offset 0
MemberDecorate 71(Ray) 1 Offset 12
MemberDecorate 71(Ray) 2 Offset 16
MemberDecorate 71(Ray) 3 Offset 28
Decorate 72 ArrayStride 32
MemberDecorate 73(Rays) 0 Offset 0
Decorate 73(Rays) BufferBlock
Decorate 75 DescriptorSet 0
Decorate 75 Binding 2
MemberDecorate 72(Ray) 0 Offset 0
MemberDecorate 72(Ray) 1 Offset 12
MemberDecorate 72(Ray) 2 Offset 16
MemberDecorate 72(Ray) 3 Offset 28
Decorate 73 ArrayStride 32
MemberDecorate 74(Rays) 0 Offset 0
Decorate 74(Rays) BufferBlock
Decorate 76 DescriptorSet 0
Decorate 76 Binding 2
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 0
@@ -77,87 +77,89 @@ rayQuery-array-2d-dynamic.rgen
48: TypeAccelerationStructureKHR
49: TypePointer UniformConstant 48
50(rtas): 49(ptr) Variable UniformConstant
52: TypeInt 32 1
53: 52(int) Constant 0
54: TypePointer Function 13(fvec3)
57: 52(int) Constant 1
58: TypePointer Function 12(float)
61: 52(int) Constant 2
64: 52(int) Constant 3
67: TypePointer Function 6(int)
71(Ray): TypeStruct 13(fvec3) 12(float) 13(fvec3) 12(float)
72: TypeRuntimeArray 71(Ray)
73(Rays): TypeStruct 72
74: TypePointer Uniform 73(Rays)
75: 74(ptr) Variable Uniform
77: TypePointer Uniform 71(Ray)
88: TypeArray 10 24
89: TypePointer Function 88
117: TypePointer Private 52(int)
118(C): 117(ptr) Variable Private
52: 6(int) Constant 16
53: TypeInt 32 1
54: 53(int) Constant 0
55: TypePointer Function 13(fvec3)
58: 53(int) Constant 1
59: TypePointer Function 12(float)
62: 53(int) Constant 2
65: 53(int) Constant 3
68: TypePointer Function 6(int)
72(Ray): TypeStruct 13(fvec3) 12(float) 13(fvec3) 12(float)
73: TypeRuntimeArray 72(Ray)
74(Rays): TypeStruct 73
75: TypePointer Uniform 74(Rays)
76: 75(ptr) Variable Uniform
78: TypePointer Uniform 72(Ray)
89: TypeArray 10 24
90: TypePointer Function 89
110: 6(int) Constant 32
119: TypePointer Private 53(int)
120(C): 119(ptr) Variable Private
4(main): 2 Function None 3
5: Label
68(index): 67(ptr) Variable Function
70(ray): 15(ptr) Variable Function
90(rayQuery): 89(ptr) Variable Function
92(param): 11(ptr) Variable Function
95(param): 15(ptr) Variable Function
120(param): 11(ptr) Variable Function
123(param): 15(ptr) Variable Function
69: 6(int) FunctionCall 8(launchIndex()
Store 68(index) 69
76: 6(int) Load 68(index)
78: 77(ptr) AccessChain 75 53 76
79: 71(Ray) Load 78
80: 13(fvec3) CompositeExtract 79 0
81: 54(ptr) AccessChain 70(ray) 53
Store 81 80
82: 12(float) CompositeExtract 79 1
83: 58(ptr) AccessChain 70(ray) 57
Store 83 82
84: 13(fvec3) CompositeExtract 79 2
85: 54(ptr) AccessChain 70(ray) 61
Store 85 84
86: 12(float) CompositeExtract 79 3
87: 58(ptr) AccessChain 70(ray) 64
Store 87 86
91: 6(int) Load 68(index)
93: 11(ptr) AccessChain 90(rayQuery) 53
94: 10 Load 93
Store 92(param) 94
96: 77(ptr) AccessChain 75 53 91
97: 71(Ray) Load 96
98: 13(fvec3) CompositeExtract 97 0
99: 54(ptr) AccessChain 95(param) 53
Store 99 98
100: 12(float) CompositeExtract 97 1
101: 58(ptr) AccessChain 95(param) 57
Store 101 100
102: 13(fvec3) CompositeExtract 97 2
103: 54(ptr) AccessChain 95(param) 61
Store 103 102
104: 12(float) CompositeExtract 97 3
105: 58(ptr) AccessChain 95(param) 64
Store 105 104
106: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 92(param) 95(param)
107: 11(ptr) AccessChain 90(rayQuery) 57
108: 48 Load 50(rtas)
109: 54(ptr) AccessChain 70(ray) 53
110: 13(fvec3) Load 109
111: 58(ptr) AccessChain 70(ray) 57
112: 12(float) Load 111
113: 54(ptr) AccessChain 70(ray) 61
114: 13(fvec3) Load 113
115: 58(ptr) AccessChain 70(ray) 64
116: 12(float) Load 115
RayQueryInitializeKHR 107 108 33 24 110 112 114 116
119: 52(int) Load 118(C)
121: 11(ptr) AccessChain 90(rayQuery) 119
122: 10 Load 121
Store 120(param) 122
124: 14(Ray) Load 70(ray)
Store 123(param) 124
125: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 120(param) 123(param)
69(index): 68(ptr) Variable Function
71(ray): 15(ptr) Variable Function
91(rayQuery): 90(ptr) Variable Function
93(param): 11(ptr) Variable Function
96(param): 15(ptr) Variable Function
122(param): 11(ptr) Variable Function
125(param): 15(ptr) Variable Function
70: 6(int) FunctionCall 8(launchIndex()
Store 69(index) 70
77: 6(int) Load 69(index)
79: 78(ptr) AccessChain 76 54 77
80: 72(Ray) Load 79
81: 13(fvec3) CompositeExtract 80 0
82: 55(ptr) AccessChain 71(ray) 54
Store 82 81
83: 12(float) CompositeExtract 80 1
84: 59(ptr) AccessChain 71(ray) 58
Store 84 83
85: 13(fvec3) CompositeExtract 80 2
86: 55(ptr) AccessChain 71(ray) 62
Store 86 85
87: 12(float) CompositeExtract 80 3
88: 59(ptr) AccessChain 71(ray) 65
Store 88 87
92: 6(int) Load 69(index)
94: 11(ptr) AccessChain 91(rayQuery) 54
95: 10 Load 94
Store 93(param) 95
97: 78(ptr) AccessChain 76 54 92
98: 72(Ray) Load 97
99: 13(fvec3) CompositeExtract 98 0
100: 55(ptr) AccessChain 96(param) 54
Store 100 99
101: 12(float) CompositeExtract 98 1
102: 59(ptr) AccessChain 96(param) 58
Store 102 101
103: 13(fvec3) CompositeExtract 98 2
104: 55(ptr) AccessChain 96(param) 62
Store 104 103
105: 12(float) CompositeExtract 98 3
106: 59(ptr) AccessChain 96(param) 65
Store 106 105
107: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 93(param) 96(param)
108: 11(ptr) AccessChain 91(rayQuery) 58
109: 48 Load 50(rtas)
111: 55(ptr) AccessChain 71(ray) 54
112: 13(fvec3) Load 111
113: 59(ptr) AccessChain 71(ray) 58
114: 12(float) Load 113
115: 55(ptr) AccessChain 71(ray) 62
116: 13(fvec3) Load 115
117: 59(ptr) AccessChain 71(ray) 65
118: 12(float) Load 117
RayQueryInitializeKHR 108 109 33 110 112 114 116 118
121: 53(int) Load 120(C)
123: 11(ptr) AccessChain 91(rayQuery) 121
124: 10 Load 123
Store 122(param) 124
126: 14(Ray) Load 71(ray)
Store 125(param) 126
127: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 122(param) 125(param)
Return
FunctionEnd
8(launchIndex(): 6(int) Function None 7
@@ -186,14 +188,14 @@ rayQuery-array-2d-dynamic.rgen
18(ray): 15(ptr) FunctionParameter
20: Label
51: 48 Load 50(rtas)
55: 54(ptr) AccessChain 18(ray) 53
56: 13(fvec3) Load 55
59: 58(ptr) AccessChain 18(ray) 57
60: 12(float) Load 59
62: 54(ptr) AccessChain 18(ray) 61
63: 13(fvec3) Load 62
65: 58(ptr) AccessChain 18(ray) 64
66: 12(float) Load 65
RayQueryInitializeKHR 17(rayQuery) 51 29 33 56 60 63 66
56: 55(ptr) AccessChain 18(ray) 54
57: 13(fvec3) Load 56
60: 59(ptr) AccessChain 18(ray) 58
61: 12(float) Load 60
63: 55(ptr) AccessChain 18(ray) 62
64: 13(fvec3) Load 63
66: 59(ptr) AccessChain 18(ray) 65
67: 12(float) Load 66
RayQueryInitializeKHR 17(rayQuery) 51 29 52 57 61 64 67
Return
FunctionEnd

View File

@@ -1,7 +1,7 @@
rayQuery-decls.rgen
// Module Version 10000
// Generated by (magic number): 80008
// Id's are bound by 127
// Id's are bound by 130
Capability RayQueryProvisionalKHR
Capability RayTracingNV
@@ -40,8 +40,8 @@ rayQuery-decls.rgen
Name 86 "rayQuery0a"
Name 89 "rayQuery0c"
Name 96 "rtas"
Name 106 "rayQuery1c"
Name 126 "g_rayQueryUnused"
Name 107 "rayQuery1c"
Name 129 "g_rayQueryUnused"
Decorate 12(gl_LaunchIDNV) BuiltIn LaunchIdKHR
Decorate 17(gl_LaunchSizeNV) BuiltIn LaunchSizeKHR
MemberDecorate 45(Ray) 0 Offset 0
@@ -99,7 +99,10 @@ rayQuery-decls.rgen
94: TypeAccelerationStructureKHR
95: TypePointer UniformConstant 94
96(rtas): 95(ptr) Variable UniformConstant
117: 6(int) Constant 3
98: 6(int) Constant 16
109: 6(int) Constant 32
119: 6(int) Constant 3
120: 6(int) Constant 64
4(main): 2 Function None 3
5: Label
38(index): 37(ptr) Variable Function
@@ -108,8 +111,8 @@ rayQuery-decls.rgen
81(rayQuery0b): 80(ptr) Variable Function
86(rayQuery0a): 80(ptr) Variable Function
89(rayQuery0c): 80(ptr) Variable Function
106(rayQuery1c): 80(ptr) Variable Function
126(g_rayQueryUnused): 80(ptr) Variable Function
107(rayQuery1c): 80(ptr) Variable Function
129(g_rayQueryUnused): 80(ptr) Variable Function
39: 6(int) FunctionCall 8(launchIndex()
Store 38(index) 39
52: 6(int) Load 38(index)
@@ -143,35 +146,35 @@ rayQuery-decls.rgen
93: 69 Load 92
Store 89(rayQuery0c) 93
97: 94 Load 96(rtas)
98: 57(ptr) AccessChain 44(ray) 51
99: 41(fvec3) Load 98
100: 61(ptr) AccessChain 44(ray) 60
101: 40(float) Load 100
102: 57(ptr) AccessChain 44(ray) 64
103: 41(fvec3) Load 102
104: 61(ptr) AccessChain 44(ray) 67
105: 40(float) Load 104
RayQueryInitializeKHR 89(rayQuery0c) 97 22 13 99 101 103 105
107: 94 Load 96(rtas)
108: 57(ptr) AccessChain 44(ray) 51
109: 41(fvec3) Load 108
110: 61(ptr) AccessChain 44(ray) 60
111: 40(float) Load 110
112: 57(ptr) AccessChain 44(ray) 64
113: 41(fvec3) Load 112
114: 61(ptr) AccessChain 44(ray) 67
115: 40(float) Load 114
RayQueryInitializeKHR 106(rayQuery1c) 107 22 22 109 111 113 115
116: 94 Load 96(rtas)
118: 57(ptr) AccessChain 44(ray) 51
119: 41(fvec3) Load 118
120: 61(ptr) AccessChain 44(ray) 60
121: 40(float) Load 120
122: 57(ptr) AccessChain 44(ray) 64
123: 41(fvec3) Load 122
124: 61(ptr) AccessChain 44(ray) 67
125: 40(float) Load 124
RayQueryInitializeKHR 106(rayQuery1c) 116 117 70 119 121 123 125
99: 57(ptr) AccessChain 44(ray) 51
100: 41(fvec3) Load 99
101: 61(ptr) AccessChain 44(ray) 60
102: 40(float) Load 101
103: 57(ptr) AccessChain 44(ray) 64
104: 41(fvec3) Load 103
105: 61(ptr) AccessChain 44(ray) 67
106: 40(float) Load 105
RayQueryInitializeKHR 89(rayQuery0c) 97 22 98 100 102 104 106
108: 94 Load 96(rtas)
110: 57(ptr) AccessChain 44(ray) 51
111: 41(fvec3) Load 110
112: 61(ptr) AccessChain 44(ray) 60
113: 40(float) Load 112
114: 57(ptr) AccessChain 44(ray) 64
115: 41(fvec3) Load 114
116: 61(ptr) AccessChain 44(ray) 67
117: 40(float) Load 116
RayQueryInitializeKHR 107(rayQuery1c) 108 22 109 111 113 115 117
118: 94 Load 96(rtas)
121: 57(ptr) AccessChain 44(ray) 51
122: 41(fvec3) Load 121
123: 61(ptr) AccessChain 44(ray) 60
124: 40(float) Load 123
125: 57(ptr) AccessChain 44(ray) 64
126: 41(fvec3) Load 125
127: 61(ptr) AccessChain 44(ray) 67
128: 40(float) Load 127
RayQueryInitializeKHR 107(rayQuery1c) 118 119 120 122 124 126 128
Return
FunctionEnd
8(launchIndex(): 6(int) Function None 7

View File

@@ -1,7 +1,7 @@
rayQuery-initialize.rgen
// Module Version 10000
// Generated by (magic number): 80008
// Id's are bound by 103
// Id's are bound by 105
Capability RayQueryProvisionalKHR
Capability RayTracingNV
@@ -26,32 +26,32 @@ rayQuery-initialize.rgen
Name 23 "gl_LaunchIDNV"
Name 28 "gl_LaunchSizeNV"
Name 50 "rtas"
Name 68 "index"
Name 70 "ray"
Name 71 "Ray"
MemberName 71(Ray) 0 "pos"
MemberName 71(Ray) 1 "tmin"
MemberName 71(Ray) 2 "dir"
MemberName 71(Ray) 3 "tmax"
Name 73 "Rays"
MemberName 73(Rays) 0 "rays"
Name 75 ""
Name 88 "rayQuery"
Name 89 "param"
Name 91 "param"
Name 69 "index"
Name 71 "ray"
Name 72 "Ray"
MemberName 72(Ray) 0 "pos"
MemberName 72(Ray) 1 "tmin"
MemberName 72(Ray) 2 "dir"
MemberName 72(Ray) 3 "tmax"
Name 74 "Rays"
MemberName 74(Rays) 0 "rays"
Name 76 ""
Name 89 "rayQuery"
Name 90 "param"
Name 92 "param"
Decorate 23(gl_LaunchIDNV) BuiltIn LaunchIdKHR
Decorate 28(gl_LaunchSizeNV) BuiltIn LaunchSizeKHR
Decorate 50(rtas) DescriptorSet 0
Decorate 50(rtas) Binding 0
MemberDecorate 71(Ray) 0 Offset 0
MemberDecorate 71(Ray) 1 Offset 12
MemberDecorate 71(Ray) 2 Offset 16
MemberDecorate 71(Ray) 3 Offset 28
Decorate 72 ArrayStride 32
MemberDecorate 73(Rays) 0 Offset 0
Decorate 73(Rays) BufferBlock
Decorate 75 DescriptorSet 0
Decorate 75 Binding 2
MemberDecorate 72(Ray) 0 Offset 0
MemberDecorate 72(Ray) 1 Offset 12
MemberDecorate 72(Ray) 2 Offset 16
MemberDecorate 72(Ray) 3 Offset 28
Decorate 73 ArrayStride 32
MemberDecorate 74(Rays) 0 Offset 0
Decorate 74(Rays) BufferBlock
Decorate 76 DescriptorSet 0
Decorate 76 Binding 2
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 0
@@ -74,59 +74,61 @@ rayQuery-initialize.rgen
48: TypeAccelerationStructureKHR
49: TypePointer UniformConstant 48
50(rtas): 49(ptr) Variable UniformConstant
52: TypeInt 32 1
53: 52(int) Constant 0
54: TypePointer Function 13(fvec3)
57: 52(int) Constant 1
58: TypePointer Function 12(float)
61: 52(int) Constant 2
64: 52(int) Constant 3
67: TypePointer Function 6(int)
71(Ray): TypeStruct 13(fvec3) 12(float) 13(fvec3) 12(float)
72: TypeRuntimeArray 71(Ray)
73(Rays): TypeStruct 72
74: TypePointer Uniform 73(Rays)
75: 74(ptr) Variable Uniform
77: TypePointer Uniform 71(Ray)
52: 6(int) Constant 16
53: TypeInt 32 1
54: 53(int) Constant 0
55: TypePointer Function 13(fvec3)
58: 53(int) Constant 1
59: TypePointer Function 12(float)
62: 53(int) Constant 2
65: 53(int) Constant 3
68: TypePointer Function 6(int)
72(Ray): TypeStruct 13(fvec3) 12(float) 13(fvec3) 12(float)
73: TypeRuntimeArray 72(Ray)
74(Rays): TypeStruct 73
75: TypePointer Uniform 74(Rays)
76: 75(ptr) Variable Uniform
78: TypePointer Uniform 72(Ray)
96: 6(int) Constant 32
4(main): 2 Function None 3
5: Label
68(index): 67(ptr) Variable Function
70(ray): 15(ptr) Variable Function
88(rayQuery): 11(ptr) Variable Function
89(param): 11(ptr) Variable Function
91(param): 15(ptr) Variable Function
69: 6(int) FunctionCall 8(launchIndex()
Store 68(index) 69
76: 6(int) Load 68(index)
78: 77(ptr) AccessChain 75 53 76
79: 71(Ray) Load 78
80: 13(fvec3) CompositeExtract 79 0
81: 54(ptr) AccessChain 70(ray) 53
Store 81 80
82: 12(float) CompositeExtract 79 1
83: 58(ptr) AccessChain 70(ray) 57
Store 83 82
84: 13(fvec3) CompositeExtract 79 2
85: 54(ptr) AccessChain 70(ray) 61
Store 85 84
86: 12(float) CompositeExtract 79 3
87: 58(ptr) AccessChain 70(ray) 64
Store 87 86
90: 10 Load 88(rayQuery)
Store 89(param) 90
92: 14(Ray) Load 70(ray)
Store 91(param) 92
93: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 89(param) 91(param)
94: 48 Load 50(rtas)
95: 54(ptr) AccessChain 70(ray) 53
96: 13(fvec3) Load 95
97: 58(ptr) AccessChain 70(ray) 57
98: 12(float) Load 97
99: 54(ptr) AccessChain 70(ray) 61
100: 13(fvec3) Load 99
101: 58(ptr) AccessChain 70(ray) 64
102: 12(float) Load 101
RayQueryInitializeKHR 88(rayQuery) 94 33 24 96 98 100 102
69(index): 68(ptr) Variable Function
71(ray): 15(ptr) Variable Function
89(rayQuery): 11(ptr) Variable Function
90(param): 11(ptr) Variable Function
92(param): 15(ptr) Variable Function
70: 6(int) FunctionCall 8(launchIndex()
Store 69(index) 70
77: 6(int) Load 69(index)
79: 78(ptr) AccessChain 76 54 77
80: 72(Ray) Load 79
81: 13(fvec3) CompositeExtract 80 0
82: 55(ptr) AccessChain 71(ray) 54
Store 82 81
83: 12(float) CompositeExtract 80 1
84: 59(ptr) AccessChain 71(ray) 58
Store 84 83
85: 13(fvec3) CompositeExtract 80 2
86: 55(ptr) AccessChain 71(ray) 62
Store 86 85
87: 12(float) CompositeExtract 80 3
88: 59(ptr) AccessChain 71(ray) 65
Store 88 87
91: 10 Load 89(rayQuery)
Store 90(param) 91
93: 14(Ray) Load 71(ray)
Store 92(param) 93
94: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 90(param) 92(param)
95: 48 Load 50(rtas)
97: 55(ptr) AccessChain 71(ray) 54
98: 13(fvec3) Load 97
99: 59(ptr) AccessChain 71(ray) 58
100: 12(float) Load 99
101: 55(ptr) AccessChain 71(ray) 62
102: 13(fvec3) Load 101
103: 59(ptr) AccessChain 71(ray) 65
104: 12(float) Load 103
RayQueryInitializeKHR 89(rayQuery) 95 33 96 98 100 102 104
Return
FunctionEnd
8(launchIndex(): 6(int) Function None 7
@@ -155,14 +157,14 @@ rayQuery-initialize.rgen
18(ray): 15(ptr) FunctionParameter
20: Label
51: 48 Load 50(rtas)
55: 54(ptr) AccessChain 18(ray) 53
56: 13(fvec3) Load 55
59: 58(ptr) AccessChain 18(ray) 57
60: 12(float) Load 59
62: 54(ptr) AccessChain 18(ray) 61
63: 13(fvec3) Load 62
65: 58(ptr) AccessChain 18(ray) 64
66: 12(float) Load 65
RayQueryInitializeKHR 17(rayQuery) 51 29 33 56 60 63 66
56: 55(ptr) AccessChain 18(ray) 54
57: 13(fvec3) Load 56
60: 59(ptr) AccessChain 18(ray) 58
61: 12(float) Load 60
63: 55(ptr) AccessChain 18(ray) 62
64: 13(fvec3) Load 63
66: 59(ptr) AccessChain 18(ray) 65
67: 12(float) Load 66
RayQueryInitializeKHR 17(rayQuery) 51 29 52 57 61 64 67
Return
FunctionEnd

View File

@@ -1,7 +1,7 @@
rayQuery-no-cse.rgen
// Module Version 10000
// Generated by (magic number): 80008
// Id's are bound by 109
// Id's are bound by 111
Capability RayQueryProvisionalKHR
Capability RayTracingNV
@@ -26,35 +26,35 @@ rayQuery-no-cse.rgen
Name 23 "gl_LaunchIDNV"
Name 28 "gl_LaunchSizeNV"
Name 50 "rtas"
Name 68 "index"
Name 70 "ray"
Name 71 "Ray"
MemberName 71(Ray) 0 "pos"
MemberName 71(Ray) 1 "tmin"
MemberName 71(Ray) 2 "dir"
MemberName 71(Ray) 3 "tmax"
Name 73 "Rays"
MemberName 73(Rays) 0 "rays"
Name 75 ""
Name 88 "rayQuery1"
Name 89 "param"
Name 91 "param"
Name 103 "rayQuery2"
Name 104 "param"
Name 69 "index"
Name 71 "ray"
Name 72 "Ray"
MemberName 72(Ray) 0 "pos"
MemberName 72(Ray) 1 "tmin"
MemberName 72(Ray) 2 "dir"
MemberName 72(Ray) 3 "tmax"
Name 74 "Rays"
MemberName 74(Rays) 0 "rays"
Name 76 ""
Name 89 "rayQuery1"
Name 90 "param"
Name 92 "param"
Name 105 "rayQuery2"
Name 106 "param"
Name 108 "param"
Decorate 23(gl_LaunchIDNV) BuiltIn LaunchIdKHR
Decorate 28(gl_LaunchSizeNV) BuiltIn LaunchSizeKHR
Decorate 50(rtas) DescriptorSet 0
Decorate 50(rtas) Binding 0
MemberDecorate 71(Ray) 0 Offset 0
MemberDecorate 71(Ray) 1 Offset 12
MemberDecorate 71(Ray) 2 Offset 16
MemberDecorate 71(Ray) 3 Offset 28
Decorate 72 ArrayStride 32
MemberDecorate 73(Rays) 0 Offset 0
Decorate 73(Rays) BufferBlock
Decorate 75 DescriptorSet 0
Decorate 75 Binding 2
MemberDecorate 72(Ray) 0 Offset 0
MemberDecorate 72(Ray) 1 Offset 12
MemberDecorate 72(Ray) 2 Offset 16
MemberDecorate 72(Ray) 3 Offset 28
Decorate 73 ArrayStride 32
MemberDecorate 74(Rays) 0 Offset 0
Decorate 74(Rays) BufferBlock
Decorate 76 DescriptorSet 0
Decorate 76 Binding 2
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 0
@@ -77,67 +77,69 @@ rayQuery-no-cse.rgen
48: TypeAccelerationStructureKHR
49: TypePointer UniformConstant 48
50(rtas): 49(ptr) Variable UniformConstant
52: TypeInt 32 1
53: 52(int) Constant 0
54: TypePointer Function 13(fvec3)
57: 52(int) Constant 1
58: TypePointer Function 12(float)
61: 52(int) Constant 2
64: 52(int) Constant 3
67: TypePointer Function 6(int)
71(Ray): TypeStruct 13(fvec3) 12(float) 13(fvec3) 12(float)
72: TypeRuntimeArray 71(Ray)
73(Rays): TypeStruct 72
74: TypePointer Uniform 73(Rays)
75: 74(ptr) Variable Uniform
77: TypePointer Uniform 71(Ray)
52: 6(int) Constant 16
53: TypeInt 32 1
54: 53(int) Constant 0
55: TypePointer Function 13(fvec3)
58: 53(int) Constant 1
59: TypePointer Function 12(float)
62: 53(int) Constant 2
65: 53(int) Constant 3
68: TypePointer Function 6(int)
72(Ray): TypeStruct 13(fvec3) 12(float) 13(fvec3) 12(float)
73: TypeRuntimeArray 72(Ray)
74(Rays): TypeStruct 73
75: TypePointer Uniform 74(Rays)
76: 75(ptr) Variable Uniform
78: TypePointer Uniform 72(Ray)
96: 6(int) Constant 32
4(main): 2 Function None 3
5: Label
68(index): 67(ptr) Variable Function
70(ray): 15(ptr) Variable Function
88(rayQuery1): 11(ptr) Variable Function
89(param): 11(ptr) Variable Function
91(param): 15(ptr) Variable Function
103(rayQuery2): 11(ptr) Variable Function
104(param): 11(ptr) Variable Function
106(param): 15(ptr) Variable Function
69: 6(int) FunctionCall 8(launchIndex()
Store 68(index) 69
76: 6(int) Load 68(index)
78: 77(ptr) AccessChain 75 53 76
79: 71(Ray) Load 78
80: 13(fvec3) CompositeExtract 79 0
81: 54(ptr) AccessChain 70(ray) 53
Store 81 80
82: 12(float) CompositeExtract 79 1
83: 58(ptr) AccessChain 70(ray) 57
Store 83 82
84: 13(fvec3) CompositeExtract 79 2
85: 54(ptr) AccessChain 70(ray) 61
Store 85 84
86: 12(float) CompositeExtract 79 3
87: 58(ptr) AccessChain 70(ray) 64
Store 87 86
90: 10 Load 88(rayQuery1)
Store 89(param) 90
92: 14(Ray) Load 70(ray)
Store 91(param) 92
93: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 89(param) 91(param)
94: 48 Load 50(rtas)
95: 54(ptr) AccessChain 70(ray) 53
96: 13(fvec3) Load 95
97: 58(ptr) AccessChain 70(ray) 57
98: 12(float) Load 97
99: 54(ptr) AccessChain 70(ray) 61
100: 13(fvec3) Load 99
101: 58(ptr) AccessChain 70(ray) 64
102: 12(float) Load 101
RayQueryInitializeKHR 88(rayQuery1) 94 33 24 96 98 100 102
105: 10 Load 103(rayQuery2)
Store 104(param) 105
107: 14(Ray) Load 70(ray)
69(index): 68(ptr) Variable Function
71(ray): 15(ptr) Variable Function
89(rayQuery1): 11(ptr) Variable Function
90(param): 11(ptr) Variable Function
92(param): 15(ptr) Variable Function
105(rayQuery2): 11(ptr) Variable Function
106(param): 11(ptr) Variable Function
108(param): 15(ptr) Variable Function
70: 6(int) FunctionCall 8(launchIndex()
Store 69(index) 70
77: 6(int) Load 69(index)
79: 78(ptr) AccessChain 76 54 77
80: 72(Ray) Load 79
81: 13(fvec3) CompositeExtract 80 0
82: 55(ptr) AccessChain 71(ray) 54
Store 82 81
83: 12(float) CompositeExtract 80 1
84: 59(ptr) AccessChain 71(ray) 58
Store 84 83
85: 13(fvec3) CompositeExtract 80 2
86: 55(ptr) AccessChain 71(ray) 62
Store 86 85
87: 12(float) CompositeExtract 80 3
88: 59(ptr) AccessChain 71(ray) 65
Store 88 87
91: 10 Load 89(rayQuery1)
Store 90(param) 91
93: 14(Ray) Load 71(ray)
Store 92(param) 93
94: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 90(param) 92(param)
95: 48 Load 50(rtas)
97: 55(ptr) AccessChain 71(ray) 54
98: 13(fvec3) Load 97
99: 59(ptr) AccessChain 71(ray) 58
100: 12(float) Load 99
101: 55(ptr) AccessChain 71(ray) 62
102: 13(fvec3) Load 101
103: 59(ptr) AccessChain 71(ray) 65
104: 12(float) Load 103
RayQueryInitializeKHR 89(rayQuery1) 95 33 96 98 100 102 104
107: 10 Load 105(rayQuery2)
Store 106(param) 107
108: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 104(param) 106(param)
109: 14(Ray) Load 71(ray)
Store 108(param) 109
110: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 106(param) 108(param)
Return
FunctionEnd
8(launchIndex(): 6(int) Function None 7
@@ -166,14 +168,14 @@ rayQuery-no-cse.rgen
18(ray): 15(ptr) FunctionParameter
20: Label
51: 48 Load 50(rtas)
55: 54(ptr) AccessChain 18(ray) 53
56: 13(fvec3) Load 55
59: 58(ptr) AccessChain 18(ray) 57
60: 12(float) Load 59
62: 54(ptr) AccessChain 18(ray) 61
63: 13(fvec3) Load 62
65: 58(ptr) AccessChain 18(ray) 64
66: 12(float) Load 65
RayQueryInitializeKHR 17(rayQuery) 51 29 33 56 60 63 66
56: 55(ptr) AccessChain 18(ray) 54
57: 13(fvec3) Load 56
60: 59(ptr) AccessChain 18(ray) 58
61: 12(float) Load 60
63: 55(ptr) AccessChain 18(ray) 62
64: 13(fvec3) Load 63
66: 59(ptr) AccessChain 18(ray) 65
67: 12(float) Load 66
RayQueryInitializeKHR 17(rayQuery) 51 29 52 57 61 64 67
Return
FunctionEnd

View File

@@ -39,7 +39,7 @@ void main()
{
Ray ray = makeRayDesc();
rayQueryEXT rayQuery;
rayQueryInitializeEXT(rayQuery, rtas, 0, 0xFF, ray.pos, ray.tmin, ray.dir, ray.tmax);
rayQueryInitializeEXT(rayQuery, rtas, gl_RayFlagsNoneEXT, 0xFF, ray.pos, ray.tmin, ray.dir, ray.tmax);
mat4x3 _mat4x3;
mat3x4 _mat3x4;

View File

@@ -37,9 +37,9 @@ Ray makeRayDesc()
void main()
{
Ray ray;// = makeRayDesc();
Ray ray = makeRayDesc();
rayQueryEXT rayQuery;
rayQueryInitializeEXT(rayQuery, rtas, 0, 0xFF, ray.pos, ray.tmin, ray.dir, ray.tmax);
rayQueryInitializeEXT(rayQuery, rtas, gl_RayFlagsNoneEXT, 0xFF, ray.pos, ray.tmin, ray.dir, ray.tmax);
mat4x3 _mat4x3;
mat3x4 _mat3x4;

View File

@@ -37,9 +37,9 @@ Ray makeRayDesc()
void main()
{
Ray ray;// = makeRayDesc();
Ray ray = makeRayDesc();
rayQueryEXT rayQuery;
rayQueryInitializeEXT(rayQuery, rtas, 0, 0xFF, ray.pos, ray.tmin, ray.dir, ray.tmax);
rayQueryInitializeEXT(rayQuery, rtas, gl_RayFlagsNoneEXT, 0xFF, ray.pos, ray.tmin, ray.dir, ray.tmax);
mat4x3 _mat4x3;
mat3x4 _mat3x4;

View File

@@ -37,9 +37,9 @@ Ray makeRayDesc()
void main()
{
Ray ray;// = makeRayDesc();
Ray ray = makeRayDesc();
rayQueryEXT rayQuery;
rayQueryInitializeEXT(rayQuery, rtas, 0, 0xFF, ray.pos, ray.tmin, ray.dir, ray.tmax);
rayQueryInitializeEXT(rayQuery, rtas, gl_RayFlagsNoneEXT, 0xFF, ray.pos, ray.tmin, ray.dir, ray.tmax);
mat4x3 _mat4x3;
mat3x4 _mat3x4;

View File

@@ -20,7 +20,7 @@ uint launchIndex()
void doInitialize(rayQueryEXT rayQuery, Ray ray)
{
rayQueryInitializeEXT(rayQuery, rtas, 0, 1, ray.pos, ray.tmin, ray.dir, ray.tmax);
rayQueryInitializeEXT(rayQuery, rtas, gl_RayFlagsNoneEXT, gl_RayFlagsCullBackFacingTrianglesEXT, ray.pos, ray.tmin, ray.dir, ray.tmax);
}
int C;
@@ -31,6 +31,6 @@ void main()
Ray ray = rays[index];
rayQueryEXT rayQuery[2];
doInitialize(rayQuery[0], rays[index]);
rayQueryInitializeEXT(rayQuery[1], rtas, 1, 2, ray.pos, ray.tmin, ray.dir, ray.tmax);
rayQueryInitializeEXT(rayQuery[1], rtas, gl_RayFlagsOpaqueEXT, gl_RayFlagsCullFrontFacingTrianglesEXT, ray.pos, ray.tmin, ray.dir, ray.tmax);
doInitialize(rayQuery[C], ray);
}

View File

@@ -39,7 +39,7 @@ void main()
bool committed_true = true;
bool committed_false = false;
rayQueryInitializeEXT(rayQuery, rtas, 1, 2, ray.pos, ray.tmin, ray.dir, ray.tmax);
rayQueryInitializeEXT(rayQuery, rtas, gl_RayFlagsOpaqueEXT, gl_RayFlagsCullBackFacingTrianglesEXT, ray.pos, ray.tmin, ray.dir, ray.tmax);
while (rayQueryProceedEXT(rayQuery))
{
mat4x3 mat_o2w;

View File

@@ -41,13 +41,13 @@ void main()
rayQueryEXT rayQuery0c = g_rayQueryArray[idx];
// rayQuery0a is the one actually used here
rayQueryInitializeEXT(rayQuery0c, rtas, gl_RayFlagsOpaqueEXT, 2, ray.pos, ray.tmin, ray.dir, ray.tmax);
rayQueryInitializeEXT(rayQuery0c, rtas, gl_RayFlagsOpaqueEXT, gl_RayFlagsCullBackFacingTrianglesEXT, ray.pos, ray.tmin, ray.dir, ray.tmax);
// AllocateRayQuery occurs here, rather than next to allocas
// Should not be extray allocate, since above should allocate and copy
rayQueryEXT rayQuery1c;
// update the rayFlags as RAY_FLAG_FORCE_OPAQUE
rayQueryInitializeEXT(rayQuery1c, rtas, gl_RayFlagsOpaqueEXT, 1, ray.pos, ray.tmin, ray.dir, ray.tmax);
rayQueryInitializeEXT(rayQuery1c, rtas, gl_RayFlagsOpaqueEXT, gl_RayFlagsCullFrontFacingTrianglesEXT, ray.pos, ray.tmin, ray.dir, ray.tmax);
rayQueryInitializeEXT(rayQuery1c, rtas, 3, 4, ray.pos, ray.tmin, ray.dir, ray.tmax);
rayQueryInitializeEXT(rayQuery1c, rtas, gl_RayFlagsOpaqueEXT|gl_RayFlagsNoOpaqueEXT, gl_RayFlagsCullOpaqueEXT, ray.pos, ray.tmin, ray.dir, ray.tmax);
}

View File

@@ -20,7 +20,7 @@ uint launchIndex()
void doInitialize(rayQueryEXT rayQuery, Ray ray)
{
rayQueryInitializeEXT(rayQuery, rtas, 0, 1, ray.pos, ray.tmin, ray.dir, ray.tmax);
rayQueryInitializeEXT(rayQuery, rtas, gl_RayFlagsNoneEXT, gl_RayFlagsCullBackFacingTrianglesEXT, ray.pos, ray.tmin, ray.dir, ray.tmax);
}
void main()
@@ -29,5 +29,5 @@ void main()
Ray ray = rays[index];
rayQueryEXT rayQuery;
doInitialize(rayQuery, ray);
rayQueryInitializeEXT(rayQuery, rtas, 1, 2, ray.pos, ray.tmin, ray.dir, ray.tmax);
rayQueryInitializeEXT(rayQuery, rtas, gl_RayFlagsOpaqueEXT, gl_RayFlagsCullFrontFacingTrianglesEXT, ray.pos, ray.tmin, ray.dir, ray.tmax);
}

View File

@@ -20,7 +20,7 @@ uint launchIndex()
void doInitialize(rayQueryEXT rayQuery, Ray ray)
{
rayQueryInitializeEXT(rayQuery, rtas, 0, 1, ray.pos, ray.tmin, ray.dir, ray.tmax);
rayQueryInitializeEXT(rayQuery, rtas, gl_RayFlagsNoneEXT, gl_RayFlagsCullBackFacingTrianglesEXT, ray.pos, ray.tmin, ray.dir, ray.tmax);
}
void main()
@@ -30,6 +30,6 @@ void main()
rayQueryEXT rayQuery1;
rayQueryEXT rayQuery2;
doInitialize(rayQuery1, ray);
rayQueryInitializeEXT(rayQuery1, rtas, 1, 2, ray.pos, ray.tmin, ray.dir, ray.tmax);
rayQueryInitializeEXT(rayQuery1, rtas, gl_RayFlagsOpaqueEXT, gl_RayFlagsCullFrontFacingTrianglesEXT, ray.pos, ray.tmin, ray.dir, ray.tmax);
doInitialize(rayQuery2, ray);
}