Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
glslang
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Chen Yisong
glslang
Commits
7f689beb
Commit
7f689beb
authored
Mar 23, 2020
by
Neslisah Torosdagli
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
const rayFlag defs used in the test cases in stead of numerical values
parent
65c81bf2
Show whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
1341 additions
and
1336 deletions
+1341
-1336
rayQuery-allOps.comp.out
Test/baseResults/rayQuery-allOps.comp.out
+330
-328
rayQuery-allOps.frag.out
Test/baseResults/rayQuery-allOps.frag.out
+330
-328
rayQuery-allOps.rgen.out
Test/baseResults/rayQuery-allOps.rgen.out
+330
-328
rayQuery-array-2d-dynamic.rgen.out
Test/baseResults/rayQuery-array-2d-dynamic.rgen.out
+116
-114
rayQuery-decls.rgen.out
Test/baseResults/rayQuery-decls.rgen.out
+38
-35
rayQuery-initialize.rgen.out
Test/baseResults/rayQuery-initialize.rgen.out
+85
-83
rayQuery-no-cse.rgen.out
Test/baseResults/rayQuery-no-cse.rgen.out
+94
-92
rayQuery-allOps.Error.rgen
Test/rayQuery-allOps.Error.rgen
+1
-1
rayQuery-allOps.comp
Test/rayQuery-allOps.comp
+2
-2
rayQuery-allOps.frag
Test/rayQuery-allOps.frag
+2
-2
rayQuery-allOps.rgen
Test/rayQuery-allOps.rgen
+2
-2
rayQuery-array-2d-dynamic.rgen
Test/rayQuery-array-2d-dynamic.rgen
+2
-2
rayQuery-committed.Error.rgen
Test/rayQuery-committed.Error.rgen
+1
-1
rayQuery-decls.rgen
Test/rayQuery-decls.rgen
+3
-3
rayQuery-initialize.rgen
Test/rayQuery-initialize.rgen
+2
-2
rayQuery-no-cse.rgen
Test/rayQuery-no-cse.rgen
+2
-2
Initialize.cpp
glslang/MachineIndependent/Initialize.cpp
+1
-11
No files found.
Test/baseResults/rayQuery-allOps.comp.out
View file @
7f689beb
rayQuery-allOps.comp
rayQuery-allOps.comp
// Module Version 10000
// Module Version 10000
// Generated by (magic number): 80008
// Generated by (magic number): 80008
// Id's are bound by 26
5
// Id's are bound by 26
6
Capability Shader
Capability Shader
Capability RayQueryProvisionalKHR
Capability RayQueryProvisionalKHR
...
@@ -26,40 +26,40 @@ rayQuery-allOps.comp
...
@@ -26,40 +26,40 @@ rayQuery-allOps.comp
MemberName 15(Log) 1 "y"
MemberName 15(Log) 1 "y"
Name 17 ""
Name 17 ""
Name 26 "ray"
Name 26 "ray"
Name 4
5 "rayQuer
y"
Name 4
3 "ra
y"
Name 4
8 "rtas
"
Name 4
7 "rayQuery
"
Name 5
1 "ray
"
Name 5
0 "rtas
"
Name
69
"candidateType"
Name
70
"candidateType"
Name
79
"_mat4x3"
Name
80
"_mat4x3"
Name 8
4
"_mat3x4"
Name 8
5
"_mat3x4"
Name 14
6
"t"
Name 14
7
"t"
Name 16
0
"committedStatus"
Name 16
1
"committedStatus"
Name 24
6
"o"
Name 24
7
"o"
Name 2
49
"d"
Name 2
50
"d"
Name 26
0
"Ray"
Name 26
1
"Ray"
MemberName 26
0
(Ray) 0 "pos"
MemberName 26
1
(Ray) 0 "pos"
MemberName 26
0
(Ray) 1 "tmin"
MemberName 26
1
(Ray) 1 "tmin"
MemberName 26
0
(Ray) 2 "dir"
MemberName 26
1
(Ray) 2 "dir"
MemberName 26
0
(Ray) 3 "tmax"
MemberName 26
1
(Ray) 3 "tmax"
Name 26
2
"Rays"
Name 26
3
"Rays"
MemberName 26
2
(Rays) 0 "rays"
MemberName 26
3
(Rays) 0 "rays"
Name 26
4
""
Name 26
5
""
MemberDecorate 15(Log) 0 Offset 0
MemberDecorate 15(Log) 0 Offset 0
MemberDecorate 15(Log) 1 Offset 4
MemberDecorate 15(Log) 1 Offset 4
Decorate 15(Log) BufferBlock
Decorate 15(Log) BufferBlock
Decorate 17 DescriptorSet 0
Decorate 17 DescriptorSet 0
Decorate 17 Binding 0
Decorate 17 Binding 0
Decorate
48
(rtas) DescriptorSet 0
Decorate
50
(rtas) DescriptorSet 0
Decorate
48
(rtas) Binding 1
Decorate
50
(rtas) Binding 1
MemberDecorate 26
0
(Ray) 0 Offset 0
MemberDecorate 26
1
(Ray) 0 Offset 0
MemberDecorate 26
0
(Ray) 1 Offset 12
MemberDecorate 26
1
(Ray) 1 Offset 12
MemberDecorate 26
0
(Ray) 2 Offset 16
MemberDecorate 26
1
(Ray) 2 Offset 16
MemberDecorate 26
0
(Ray) 3 Offset 28
MemberDecorate 26
1
(Ray) 3 Offset 28
Decorate 26
1
ArrayStride 32
Decorate 26
2
ArrayStride 32
MemberDecorate 26
2
(Rays) 0 Offset 0
MemberDecorate 26
3
(Rays) 0 Offset 0
Decorate 26
2
(Rays) BufferBlock
Decorate 26
3
(Rays) BufferBlock
Decorate 26
4
DescriptorSet 0
Decorate 26
5
DescriptorSet 0
Decorate 26
4
Binding 2
Decorate 26
5
Binding 2
2: TypeVoid
2: TypeVoid
3: TypeFunction 2
3: TypeFunction 2
8: TypeFloat 32
8: TypeFloat 32
...
@@ -85,333 +85,335 @@ rayQuery-allOps.comp
...
@@ -85,333 +85,335 @@ rayQuery-allOps.comp
35: TypePointer Function 8(float)
35: TypePointer Function 8(float)
37: 18(int) Constant 3
37: 18(int) Constant 3
38: 8(float) Constant 1176255488
38: 8(float) Constant 1176255488
4
3
: TypeRayQueryProvisionalKHR
4
5
: TypeRayQueryProvisionalKHR
4
4: TypePointer Function 43
4
6: TypePointer Function 45
4
6
: TypeAccelerationStructureKHR
4
8
: TypeAccelerationStructureKHR
4
7: TypePointer UniformConstant 46
4
9: TypePointer UniformConstant 48
48(rtas): 47
(ptr) Variable UniformConstant
50(rtas): 49
(ptr) Variable UniformConstant
5
0
: 14(int) Constant 255
5
2
: 14(int) Constant 255
6
6
: TypeBool
6
7
: TypeBool
6
8
: TypePointer Function 14(int)
6
9
: TypePointer Function 14(int)
7
0: 66
(bool) ConstantFalse
7
1: 67
(bool) ConstantFalse
7
7
: TypeMatrix 9(fvec3) 4
7
8
: TypeMatrix 9(fvec3) 4
7
8: TypePointer Function 77
7
9: TypePointer Function 78
8
1
: TypeVector 8(float) 4
8
2
: TypeVector 8(float) 4
8
2: TypeMatrix 81
(fvec4) 3
8
3: TypeMatrix 82
(fvec4) 3
8
3: TypePointer Function 82
8
4: TypePointer Function 83
8
8: 66
(bool) ConstantTrue
8
9: 67
(bool) ConstantTrue
9
3
: TypeVector 8(float) 2
9
4
: TypeVector 8(float) 2
14
7
: 8(float) Constant 1056964608
14
8
: 8(float) Constant 1056964608
1
79
: 14(int) Constant 1
1
80
: 14(int) Constant 1
20
2
: 14(int) Constant 2
20
3
: 14(int) Constant 2
26
0
(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
26
1
(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
26
1: TypeRuntimeArray 260
(Ray)
26
2: TypeRuntimeArray 261
(Ray)
26
2(Rays): TypeStruct 261
26
3(Rays): TypeStruct 262
26
3: TypePointer Uniform 262
(Rays)
26
4: TypePointer Uniform 263
(Rays)
26
4: 263
(ptr) Variable Uniform
26
5: 264
(ptr) Variable Uniform
4(main): 2 Function None 3
4(main): 2 Function None 3
5: Label
5: Label
45(rayQuery): 44(ptr) Variable Function
43(ray): 25(ptr) Variable Function
51(ray): 25(ptr) Variable Function
47(rayQuery): 46(ptr) Variable Function
69(candidateType): 68(ptr) Variable Function
70(candidateType): 69(ptr) Variable Function
79(_mat4x3): 78(ptr) Variable Function
80(_mat4x3): 79(ptr) Variable Function
84(_mat3x4): 83(ptr) Variable Function
85(_mat3x4): 84(ptr) Variable Function
146(t): 35(ptr) Variable Function
147(t): 35(ptr) Variable Function
160(committedStatus): 68(ptr) Variable Function
161(committedStatus): 69(ptr) Variable Function
246(o): 29(ptr) Variable Function
247(o): 29(ptr) Variable Function
249(d): 29(ptr) Variable Function
250(d): 29(ptr) Variable Function
49: 46 Load 48(rtas)
44: 10(Ray) FunctionCall 12(makeRayDesc()
52: 29(ptr) AccessChain 51(ray) 19
Store 43(ray) 44
53: 9(fvec3) Load 52
51: 48 Load 50(rtas)
54: 35(ptr) AccessChain 51(ray) 23
53: 29(ptr) AccessChain 43(ray) 19
55: 8(float) Load 54
54: 9(fvec3) Load 53
56: 29(ptr) AccessChain 51(ray) 31
55: 35(ptr) AccessChain 43(ray) 23
57: 9(fvec3) Load 56
56: 8(float) Load 55
58: 35(ptr) AccessChain 51(ray) 37
57: 29(ptr) AccessChain 43(ray) 31
59: 8(float) Load 58
58: 9(fvec3) Load 57
RayQueryInitializeKHR 45(rayQuery) 49 20 50 53 55 57 59
59: 35(ptr) AccessChain 43(ray) 37
Branch 60
60: 8(float) Load 59
60: Label
RayQueryInitializeKHR 47(rayQuery) 51 20 52 54 56 58 60
LoopMerge 62 63 None
Branch 61
Branch 64
64: Label
65: 43 Load 45(rayQuery)
67: 66(bool) RayQueryProceedKHR 65
BranchConditional 67 61 62
61: Label
61: Label
71: 14(int) RayQueryGetIntersectionTypeKHR 45(rayQuery) 19
LoopMerge 63 64 None
Store 69(candidateType) 71
Branch 65
72: 14(int) Load 69(candidateType)
65: Label
SelectionMerge 75 None
66: 45 Load 47(rayQuery)
Switch 72 75
68: 67(bool) RayQueryProceedKHR 66
case 0: 73
BranchConditional 68 62 63
case 1: 74
62: Label
73: Label
72: 14(int) RayQueryGetIntersectionTypeKHR 47(rayQuery) 19
76: 43 Load 45(rayQuery)
Store 70(candidateType) 72
RayQueryTerminateKHR 76
73: 14(int) Load 70(candidateType)
80: 77 RayQueryGetIntersectionObjectToWorldKHR 45(rayQuery) 19
SelectionMerge 76 None
Store 79(_mat4x3) 80
Switch 73 76
85: 77 Load 79(_mat4x3)
case 0: 74
86: 82 Transpose 85
case 1: 75
Store 84(_mat3x4) 86
74: Label
87: 43 Load 45(rayQuery)
77: 45 Load 47(rayQuery)
RayQueryConfirmIntersectionKHR 87
RayQueryTerminateKHR 77
89: 66(bool) RayQueryGetIntersectionFrontFaceKHR 45(rayQuery) 23
81: 78 RayQueryGetIntersectionObjectToWorldKHR 47(rayQuery) 19
SelectionMerge 91 None
Store 80(_mat4x3) 81
BranchConditional 89 90 91
86: 78 Load 80(_mat4x3)
90: Label
87: 83 Transpose 86
92: 2 FunctionCall 6(doSomething()
Store 85(_mat3x4) 87
Branch 91
88: 45 Load 47(rayQuery)
RayQueryConfirmIntersectionKHR 88
90: 67(bool) RayQueryGetIntersectionFrontFaceKHR 47(rayQuery) 23
SelectionMerge 92 None
BranchConditional 90 91 92
91: Label
91: Label
9
4: 93(fvec2) RayQueryGetIntersectionBarycentricsKHR 45(rayQuery) 23
9
3: 2 FunctionCall 6(doSomething()
95: 8(float) CompositeExtract 94 0
Branch 92
9
6: 66(bool) FOrdEqual 95 27
9
2: Label
SelectionMerge 98 None
95: 94(fvec2) RayQueryGetIntersectionBarycentricsKHR 47(rayQuery) 23
BranchConditional 96 97 98
96: 8(float) CompositeExtract 95 0
97:
Label
97:
67(bool) FOrdEqual 96 27
99: 2 FunctionCall 6(doSomething()
SelectionMerge 99 None
Branch 98
BranchConditional 97 98 99
98: Label
98: Label
100:
18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 45(rayQuery) 23
100:
2 FunctionCall 6(doSomething()
101: 66(bool) SGreaterThan 100 1
9
Branch 9
9
SelectionMerge 103 None
99: Label
BranchConditional 101 102 10
3
101: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 47(rayQuery) 2
3
102:
Label
102:
67(bool) SGreaterThan 101 19
104: 2 FunctionCall 6(doSomething()
SelectionMerge 104 None
Branch 103
BranchConditional 102 103 104
103: Label
103: Label
105:
18(int) RayQueryGetIntersectionInstanceIdKHR 45(rayQuery) 23
105:
2 FunctionCall 6(doSomething()
106: 66(bool) SGreaterThan 105 19
Branch 104
SelectionMerge 108 None
104: Label
BranchConditional 106 107 108
106: 18(int) RayQueryGetIntersectionInstanceIdKHR 47(rayQuery) 23
107:
Label
107:
67(bool) SGreaterThan 106 19
109: 2 FunctionCall 6(doSomething()
SelectionMerge 109 None
Branch 108
BranchConditional 107 108 109
108: Label
108: Label
110:
9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 45(rayQuery) 23
110:
2 FunctionCall 6(doSomething()
111: 8(float) CompositeExtract 110 0
Branch 109
1
12: 66(bool) FOrdGreaterThan 111 27
1
09: Label
SelectionMerge 114 None
111: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 47(rayQuery) 23
BranchConditional 112 113 114
112: 8(float) CompositeExtract 111 0
113:
Label
113:
67(bool) FOrdGreaterThan 112 27
115: 2 FunctionCall 6(doSomething()
SelectionMerge 115 None
Branch 114
BranchConditional 113 114 115
114: Label
114: Label
116:
9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 45(rayQuery) 23
116:
2 FunctionCall 6(doSomething()
117: 8(float) CompositeExtract 116 0
Branch 115
11
8: 66(bool) FOrdGreaterThan 117 27
11
5: Label
SelectionMerge 120 None
117: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 47(rayQuery) 23
BranchConditional 118 119 12
0
118: 8(float) CompositeExtract 117
0
119:
Label
119:
67(bool) FOrdGreaterThan 118 27
121: 2 FunctionCall 6(doSomething()
SelectionMerge 121 None
Branch 120
BranchConditional 119 120 121
120: Label
120: Label
122:
18(int) RayQueryGetIntersectionPrimitiveIndexKHR 45(rayQuery) 23
122:
2 FunctionCall 6(doSomething()
123: 66(bool) SGreaterThan 122 19
Branch 121
SelectionMerge 125 None
121: Label
BranchConditional 123 124 125
123: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 47(rayQuery) 23
124:
Label
124:
67(bool) SGreaterThan 123 19
126: 2 FunctionCall 6(doSomething()
SelectionMerge 126 None
Branch 125
BranchConditional 124 125 126
125: Label
125: Label
127:
8(float) RayQueryGetIntersectionTKHR 45(rayQuery) 23
127:
2 FunctionCall 6(doSomething()
128: 66(bool) FOrdGreaterThan 127 27
Branch 126
SelectionMerge 130 None
126: Label
BranchConditional 128 129 130
128: 8(float) RayQueryGetIntersectionTKHR 47(rayQuery) 23
129:
Label
129:
67(bool) FOrdGreaterThan 128 27
131: 2 FunctionCall 6(doSomething()
SelectionMerge 131 None
Branch 130
BranchConditional 129 130 131
130: Label
130: Label
132:
18(int) RayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR 45(rayQuery) 23
132:
2 FunctionCall 6(doSomething()
133: 66(bool) UGreaterThan 132 20
Branch 131
SelectionMerge 135 None
131: Label
BranchConditional 133 134 135
133: 18(int) RayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR 47(rayQuery) 23
134:
Label
134:
67(bool) UGreaterThan 133 20
136: 2 FunctionCall 6(doSomething()
SelectionMerge 136 None
Branch 135
BranchConditional 134 135 136
135: Label
135: Label
Branch 75
137: 2 FunctionCall 6(doSomething()
74: Label
Branch 136
138: 77 RayQueryGetIntersectionObjectToWorldKHR 45(rayQuery) 19
136: Label
Store 79(_mat4x3) 138
Branch 76
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
75: Label
Branch 63
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
63: Label
Branch 60
153: 35(ptr) AccessChain 85(_mat3x4) 19 20
62: Label
154: 8(float) Load 153
152: 35(ptr) AccessChain 84(_mat3x4) 19 20
155: 35(ptr) AccessChain 80(_mat4x3) 19 20
153: 8(float) Load 152
156: 8(float) Load 155
154: 35(ptr) AccessChain 79(_mat4x3) 19 20
157: 67(bool) FOrdEqual 154 156
155: 8(float) Load 154
SelectionMerge 159 None
156: 66(bool) FOrdEqual 153 155
BranchConditional 157 158 159
SelectionMerge 158 None
BranchConditional 156 157 158
157: Label
159: 2 FunctionCall 6(doSomething()
Branch 158
158: Label
158: Label
161: 14(int) RayQueryGetIntersectionTypeKHR 45(rayQuery) 23
160: 2 FunctionCall 6(doSomething()
Store 160(committedStatus) 161
Branch 159
162: 14(int) Load 160(committedStatus)
159: Label
SelectionMerge 166 None
162: 14(int) RayQueryGetIntersectionTypeKHR 47(rayQuery) 23
Switch 162 166
Store 161(committedStatus) 162
case 0: 163
163: 14(int) Load 161(committedStatus)
case 1: 164
SelectionMerge 167 None
case 2: 165
Switch 163 167
163: Label
case 0: 164
167: 77 RayQueryGetIntersectionWorldToObjectKHR 45(rayQuery) 19
case 1: 165
Store 79(_mat4x3) 167
case 2: 166
168: 77 Load 79(_mat4x3)
169: 82 Transpose 168
Store 84(_mat3x4) 169
Branch 166
164: Label
164: Label
171: 77 RayQueryGetIntersectionWorldToObjectKHR 45(rayQuery) 23
168: 78 RayQueryGetIntersectionWorldToObjectKHR 47(rayQuery) 19
Store 79(_mat4x3) 171
Store 80(_mat4x3) 168
172: 77 Load 79(_mat4x3)
169: 78 Load 80(_mat4x3)
173: 82 Transpose 172
170: 83 Transpose 169
Store 84(_mat3x4) 173
Store 85(_mat3x4) 170
174: 66(bool) RayQueryGetIntersectionFrontFaceKHR 45(rayQuery) 23
Branch 167
SelectionMerge 176 None
165: Label
BranchConditional 174 175 176
172: 78 RayQueryGetIntersectionWorldToObjectKHR 47(rayQuery) 23
175: Label
Store 80(_mat4x3) 172
177: 2 FunctionCall 6(doSomething()
173: 78 Load 80(_mat4x3)
Branch 176
174: 83 Transpose 173
Store 85(_mat3x4) 174
175: 67(bool) RayQueryGetIntersectionFrontFaceKHR 47(rayQuery) 23
SelectionMerge 177 None
BranchConditional 175 176 177
176: Label
176: Label
178:
93(fvec2) RayQueryGetIntersectionBarycentricsKHR 45(rayQuery) 23
178:
2 FunctionCall 6(doSomething()
180: 8(float) CompositeExtract 178 1
Branch 177
1
81: 66(bool) FOrdEqual 180 27
1
77: Label
SelectionMerge 183 None
179: 94(fvec2) RayQueryGetIntersectionBarycentricsKHR 47(rayQuery) 23
BranchConditional 181 182 183
181: 8(float) CompositeExtract 179 1
182:
Label
182:
67(bool) FOrdEqual 181 27
184: 2 FunctionCall 6(doSomething()
SelectionMerge 184 None
Branch 183
BranchConditional 182 183 184
183: Label
183: Label
Branch 166
185: 2 FunctionCall 6(doSomething()
165: Label
Branch 184
18
6: 18(int) RayQueryGetIntersectionGeometryIndexKHR 45(rayQuery) 23
18
4: Label
187: 66(bool) SGreaterThan 186 19
Branch 167
SelectionMerge 189 None
166: Label
BranchConditional 187 188 189
187: 18(int) RayQueryGetIntersectionGeometryIndexKHR 47(rayQuery) 23
188:
Label
188:
67(bool) SGreaterThan 187 19
190: 2 FunctionCall 6(doSomething()
SelectionMerge 190 None
Branch 189
BranchConditional 188 189 190
189: Label
189: Label
191:
18(int) RayQueryGetIntersectionInstanceIdKHR 45(rayQuery) 23
191:
2 FunctionCall 6(doSomething()
192: 66(bool) SGreaterThan 191 19
Branch 190
SelectionMerge 194 None
190: Label
BranchConditional 192 193 194
192: 18(int) RayQueryGetIntersectionInstanceIdKHR 47(rayQuery) 23
193:
Label
193:
67(bool) SGreaterThan 192 19
195: 2 FunctionCall 6(doSomething()
SelectionMerge 195 None
Branch 194
BranchConditional 193 194 195
194: Label
194: Label
196:
18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 45(rayQuery) 23
196:
2 FunctionCall 6(doSomething()
197: 66(bool) SGreaterThan 196 19
Branch 195
SelectionMerge 199 None
195: Label
BranchConditional 197 198 199
197: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 47(rayQuery) 23
198:
Label
198:
67(bool) SGreaterThan 197 19
200: 2 FunctionCall 6(doSomething()
SelectionMerge 200 None
Branch 199
BranchConditional 198 199 200
199: Label
199: Label
201:
9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 45(rayQuery) 23
201:
2 FunctionCall 6(doSomething()
203: 8(float) CompositeExtract 201 2
Branch 200
20
4: 66(bool) FOrdGreaterThan 203 27
20
0: Label
SelectionMerge 206 None
202: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 47(rayQuery) 23
BranchConditional 204 205 206
204: 8(float) CompositeExtract 202 2
205:
Label
205:
67(bool) FOrdGreaterThan 204 27
207: 2 FunctionCall 6(doSomething()
SelectionMerge 207 None
Branch 206
BranchConditional 205 206 207
206: Label
206: Label
208:
9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 45(rayQuery) 23
208:
2 FunctionCall 6(doSomething()
209: 8(float) CompositeExtract 208 0
Branch 207
2
10: 66(bool) FOrdGreaterThan 209 27
2
07: Label
SelectionMerge 212 None
209: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 47(rayQuery) 23
BranchConditional 210 211 212
210: 8(float) CompositeExtract 209 0
211:
Label
211:
67(bool) FOrdGreaterThan 210 27
213: 2 FunctionCall 6(doSomething()
SelectionMerge 213 None
Branch 212
BranchConditional 211 212 213
212: Label
212: Label
214:
18(int) RayQueryGetIntersectionPrimitiveIndexKHR 45(rayQuery) 23
214:
2 FunctionCall 6(doSomething()
215: 66(bool) SGreaterThan 214 19
Branch 213
SelectionMerge 217 None
213: Label
BranchConditional 215 216 217
215: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 47(rayQuery) 23
216:
Label
216:
67(bool) SGreaterThan 215 19
218: 2 FunctionCall 6(doSomething()
SelectionMerge 218 None
Branch 217
BranchConditional 216 217 218
217: Label
217: Label
219:
8(float) RayQueryGetIntersectionTKHR 45(rayQuery) 23
219:
2 FunctionCall 6(doSomething()
220: 66(bool) FOrdGreaterThan 219 27
Branch 218
SelectionMerge 222 None
218: Label
BranchConditional 220 221 222
220: 8(float) RayQueryGetIntersectionTKHR 47(rayQuery) 23
221:
Label
221:
67(bool) FOrdGreaterThan 220 27
223: 2 FunctionCall 6(doSomething()
SelectionMerge 223 None
Branch 222
BranchConditional 221 222 223
222: Label
222: Label
Branch 166
224: 2 FunctionCall 6(doSomething()
166: Label
Branch 223
22
6: 35(ptr) AccessChain 84(_mat3x4) 19 20
22
3: Label
227: 8(float) Load 226
Branch 167
228: 35(ptr) AccessChain 79(_mat4x3) 19 20
167: Label
22
9: 8(float) Load 228
22
7: 35(ptr) AccessChain 85(_mat3x4) 19 20
2
30: 66(bool) FOrdEqual 227 229
2
28: 8(float) Load 227
SelectionMerge 232 None
229: 35(ptr) AccessChain 80(_mat4x3) 19 20
BranchConditional 230 231 232
230: 8(float) Load 229
231:
Label
231:
67(bool) FOrdEqual 228 230
233: 2 FunctionCall 6(doSomething()
SelectionMerge 233 None
Branch 232
BranchConditional 231 232 233
232: Label
232: Label
234:
43 Load 45(rayQuery
)
234:
2 FunctionCall 6(doSomething(
)
235: 14(int) RayQueryGetRayFlagsKHR 234
Branch 233
23
6: 66(bool) UGreaterThan 235 20
23
3: Label
SelectionMerge 238 None
235: 45 Load 47(rayQuery)
BranchConditional 236 237 238
236: 14(int) RayQueryGetRayFlagsKHR 235
237:
Label
237:
67(bool) UGreaterThan 236 20
239: 2 FunctionCall 6(doSomething()
SelectionMerge 239 None
Branch 238
BranchConditional 237 238 239
238: Label
238: Label
240:
43 Load 45(rayQuery
)
240:
2 FunctionCall 6(doSomething(
)
241: 8(float) RayQueryGetRayTMinKHR 240
Branch 239
2
42: 66(bool) FOrdGreaterThan 241 27
2
39: Label
SelectionMerge 244 None
241: 45 Load 47(rayQuery)
BranchConditional 242 243 244
242: 8(float) RayQueryGetRayTMinKHR 241
243:
Label
243:
67(bool) FOrdGreaterThan 242 27
245: 2 FunctionCall 6(doSomething()
SelectionMerge 245 None
Branch 244
BranchConditional 243 244 245
244: Label
244: Label
24
7: 43 Load 45(rayQuery
)
24
6: 2 FunctionCall 6(doSomething(
)
248: 9(fvec3) RayQueryGetWorldRayOriginKHR 247
Branch 245
Store 246(o) 248
245: Label
2
50: 43 Load 45
(rayQuery)
2
48: 45 Load 47
(rayQuery)
2
51: 9(fvec3) RayQueryGetWorldRayDirectionKHR 250
2
49: 9(fvec3) RayQueryGetWorldRayOriginKHR 248
Store 24
9(d) 251
Store 24
7(o) 249
25
2: 35(ptr) AccessChain 246(o) 20
25
1: 45 Load 47(rayQuery)
25
3: 8(float) Load 252
25
2: 9(fvec3) RayQueryGetWorldRayDirectionKHR 251
254: 35(ptr) AccessChain 249(d) 20
2
Store 250(d) 25
2
25
5: 8(float) Load 254
25
3: 35(ptr) AccessChain 247(o) 20
25
6: 66(bool) FOrdEqual 253 255
25
4: 8(float) Load 253
SelectionMerge 258 None
255: 35(ptr) AccessChain 250(d) 203
BranchConditional 256 257 258
256: 8(float) Load 255
257:
Label
257:
67(bool) FOrdEqual 254 256
259: 2 FunctionCall 6(doSomething()
SelectionMerge 259 None
Branch 258
BranchConditional 257 258 259
258: Label
258: Label
260: 2 FunctionCall 6(doSomething()
Branch 259
259: Label
Return
Return
FunctionEnd
FunctionEnd
6(doSomething(): 2 Function None 3
6(doSomething(): 2 Function None 3
...
...
Test/baseResults/rayQuery-allOps.frag.out
View file @
7f689beb
rayQuery-allOps.frag
rayQuery-allOps.frag
// Module Version 10000
// Module Version 10000
// Generated by (magic number): 80008
// Generated by (magic number): 80008
// Id's are bound by 26
5
// Id's are bound by 26
6
Capability Shader
Capability Shader
Capability RayQueryProvisionalKHR
Capability RayQueryProvisionalKHR
...
@@ -26,40 +26,40 @@ rayQuery-allOps.frag
...
@@ -26,40 +26,40 @@ rayQuery-allOps.frag
MemberName 15(Log) 1 "y"
MemberName 15(Log) 1 "y"
Name 17 ""
Name 17 ""
Name 26 "ray"
Name 26 "ray"
Name 4
5 "rayQuer
y"
Name 4
3 "ra
y"
Name 4
8 "rtas
"
Name 4
7 "rayQuery
"
Name 5
1 "ray
"
Name 5
0 "rtas
"
Name
69
"candidateType"
Name
70
"candidateType"
Name
79
"_mat4x3"
Name
80
"_mat4x3"
Name 8
4
"_mat3x4"
Name 8
5
"_mat3x4"
Name 14
6
"t"
Name 14
7
"t"
Name 16
0
"committedStatus"
Name 16
1
"committedStatus"
Name 24
6
"o"
Name 24
7
"o"
Name 2
49
"d"
Name 2
50
"d"
Name 26
0
"Ray"
Name 26
1
"Ray"
MemberName 26
0
(Ray) 0 "pos"
MemberName 26
1
(Ray) 0 "pos"
MemberName 26
0
(Ray) 1 "tmin"
MemberName 26
1
(Ray) 1 "tmin"
MemberName 26
0
(Ray) 2 "dir"
MemberName 26
1
(Ray) 2 "dir"
MemberName 26
0
(Ray) 3 "tmax"
MemberName 26
1
(Ray) 3 "tmax"
Name 26
2
"Rays"
Name 26
3
"Rays"
MemberName 26
2
(Rays) 0 "rays"
MemberName 26
3
(Rays) 0 "rays"
Name 26
4
""
Name 26
5
""
MemberDecorate 15(Log) 0 Offset 0
MemberDecorate 15(Log) 0 Offset 0
MemberDecorate 15(Log) 1 Offset 4
MemberDecorate 15(Log) 1 Offset 4
Decorate 15(Log) BufferBlock
Decorate 15(Log) BufferBlock
Decorate 17 DescriptorSet 0
Decorate 17 DescriptorSet 0
Decorate 17 Binding 0
Decorate 17 Binding 0
Decorate
48
(rtas) DescriptorSet 0
Decorate
50
(rtas) DescriptorSet 0
Decorate
48
(rtas) Binding 1
Decorate
50
(rtas) Binding 1
MemberDecorate 26
0
(Ray) 0 Offset 0
MemberDecorate 26
1
(Ray) 0 Offset 0
MemberDecorate 26
0
(Ray) 1 Offset 12
MemberDecorate 26
1
(Ray) 1 Offset 12
MemberDecorate 26
0
(Ray) 2 Offset 16
MemberDecorate 26
1
(Ray) 2 Offset 16
MemberDecorate 26
0
(Ray) 3 Offset 28
MemberDecorate 26
1
(Ray) 3 Offset 28
Decorate 26
1
ArrayStride 32
Decorate 26
2
ArrayStride 32
MemberDecorate 26
2
(Rays) 0 Offset 0
MemberDecorate 26
3
(Rays) 0 Offset 0
Decorate 26
2
(Rays) BufferBlock
Decorate 26
3
(Rays) BufferBlock
Decorate 26
4
DescriptorSet 0
Decorate 26
5
DescriptorSet 0
Decorate 26
4
Binding 2
Decorate 26
5
Binding 2
2: TypeVoid
2: TypeVoid
3: TypeFunction 2
3: TypeFunction 2
8: TypeFloat 32
8: TypeFloat 32
...
@@ -85,333 +85,335 @@ rayQuery-allOps.frag
...
@@ -85,333 +85,335 @@ rayQuery-allOps.frag
35: TypePointer Function 8(float)
35: TypePointer Function 8(float)
37: 18(int) Constant 3
37: 18(int) Constant 3
38: 8(float) Constant 1176255488
38: 8(float) Constant 1176255488
4
3
: TypeRayQueryProvisionalKHR
4
5
: TypeRayQueryProvisionalKHR
4
4: TypePointer Function 43
4
6: TypePointer Function 45
4
6
: TypeAccelerationStructureKHR
4
8
: TypeAccelerationStructureKHR
4
7: TypePointer UniformConstant 46
4
9: TypePointer UniformConstant 48
48(rtas): 47
(ptr) Variable UniformConstant
50(rtas): 49
(ptr) Variable UniformConstant
5
0
: 14(int) Constant 255
5
2
: 14(int) Constant 255
6
6
: TypeBool
6
7
: TypeBool
6
8
: TypePointer Function 14(int)
6
9
: TypePointer Function 14(int)
7
0: 66
(bool) ConstantFalse
7
1: 67
(bool) ConstantFalse
7
7
: TypeMatrix 9(fvec3) 4
7
8
: TypeMatrix 9(fvec3) 4
7
8: TypePointer Function 77
7
9: TypePointer Function 78
8
1
: TypeVector 8(float) 4
8
2
: TypeVector 8(float) 4
8
2: TypeMatrix 81
(fvec4) 3
8
3: TypeMatrix 82
(fvec4) 3
8
3: TypePointer Function 82
8
4: TypePointer Function 83
8
8: 66
(bool) ConstantTrue
8
9: 67
(bool) ConstantTrue
9
3
: TypeVector 8(float) 2
9
4
: TypeVector 8(float) 2
14
7
: 8(float) Constant 1056964608
14
8
: 8(float) Constant 1056964608
1
79
: 14(int) Constant 1
1
80
: 14(int) Constant 1
20
2
: 14(int) Constant 2
20
3
: 14(int) Constant 2
26
0
(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
26
1
(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
26
1: TypeRuntimeArray 260
(Ray)
26
2: TypeRuntimeArray 261
(Ray)
26
2(Rays): TypeStruct 261
26
3(Rays): TypeStruct 262
26
3: TypePointer Uniform 262
(Rays)
26
4: TypePointer Uniform 263
(Rays)
26
4: 263
(ptr) Variable Uniform
26
5: 264
(ptr) Variable Uniform
4(main): 2 Function None 3
4(main): 2 Function None 3
5: Label
5: Label
45(rayQuery): 44(ptr) Variable Function
43(ray): 25(ptr) Variable Function
51(ray): 25(ptr) Variable Function
47(rayQuery): 46(ptr) Variable Function
69(candidateType): 68(ptr) Variable Function
70(candidateType): 69(ptr) Variable Function
79(_mat4x3): 78(ptr) Variable Function
80(_mat4x3): 79(ptr) Variable Function
84(_mat3x4): 83(ptr) Variable Function
85(_mat3x4): 84(ptr) Variable Function
146(t): 35(ptr) Variable Function
147(t): 35(ptr) Variable Function
160(committedStatus): 68(ptr) Variable Function
161(committedStatus): 69(ptr) Variable Function
246(o): 29(ptr) Variable Function
247(o): 29(ptr) Variable Function
249(d): 29(ptr) Variable Function
250(d): 29(ptr) Variable Function
49: 46 Load 48(rtas)
44: 10(Ray) FunctionCall 12(makeRayDesc()
52: 29(ptr) AccessChain 51(ray) 19
Store 43(ray) 44
53: 9(fvec3) Load 52
51: 48 Load 50(rtas)
54: 35(ptr) AccessChain 51(ray) 23
53: 29(ptr) AccessChain 43(ray) 19
55: 8(float) Load 54
54: 9(fvec3) Load 53
56: 29(ptr) AccessChain 51(ray) 31
55: 35(ptr) AccessChain 43(ray) 23
57: 9(fvec3) Load 56
56: 8(float) Load 55
58: 35(ptr) AccessChain 51(ray) 37
57: 29(ptr) AccessChain 43(ray) 31
59: 8(float) Load 58
58: 9(fvec3) Load 57
RayQueryInitializeKHR 45(rayQuery) 49 20 50 53 55 57 59
59: 35(ptr) AccessChain 43(ray) 37
Branch 60
60: 8(float) Load 59
60: Label
RayQueryInitializeKHR 47(rayQuery) 51 20 52 54 56 58 60
LoopMerge 62 63 None
Branch 61
Branch 64
64: Label
65: 43 Load 45(rayQuery)
67: 66(bool) RayQueryProceedKHR 65
BranchConditional 67 61 62
61: Label
61: Label
71: 14(int) RayQueryGetIntersectionTypeKHR 45(rayQuery) 19
LoopMerge 63 64 None
Store 69(candidateType) 71
Branch 65
72: 14(int) Load 69(candidateType)
65: Label
SelectionMerge 75 None
66: 45 Load 47(rayQuery)
Switch 72 75
68: 67(bool) RayQueryProceedKHR 66
case 0: 73
BranchConditional 68 62 63
case 1: 74
62: Label
73: Label
72: 14(int) RayQueryGetIntersectionTypeKHR 47(rayQuery) 19
76: 43 Load 45(rayQuery)
Store 70(candidateType) 72
RayQueryTerminateKHR 76
73: 14(int) Load 70(candidateType)
80: 77 RayQueryGetIntersectionObjectToWorldKHR 45(rayQuery) 19
SelectionMerge 76 None
Store 79(_mat4x3) 80
Switch 73 76
85: 77 Load 79(_mat4x3)
case 0: 74
86: 82 Transpose 85
case 1: 75
Store 84(_mat3x4) 86
74: Label
87: 43 Load 45(rayQuery)
77: 45 Load 47(rayQuery)
RayQueryConfirmIntersectionKHR 87
RayQueryTerminateKHR 77
89: 66(bool) RayQueryGetIntersectionFrontFaceKHR 45(rayQuery) 23
81: 78 RayQueryGetIntersectionObjectToWorldKHR 47(rayQuery) 19
SelectionMerge 91 None
Store 80(_mat4x3) 81
BranchConditional 89 90 91
86: 78 Load 80(_mat4x3)
90: Label
87: 83 Transpose 86
92: 2 FunctionCall 6(doSomething()
Store 85(_mat3x4) 87
Branch 91
88: 45 Load 47(rayQuery)
RayQueryConfirmIntersectionKHR 88
90: 67(bool) RayQueryGetIntersectionFrontFaceKHR 47(rayQuery) 23
SelectionMerge 92 None
BranchConditional 90 91 92
91: Label
91: Label
9
4: 93(fvec2) RayQueryGetIntersectionBarycentricsKHR 45(rayQuery) 23
9
3: 2 FunctionCall 6(doSomething()
95: 8(float) CompositeExtract 94 0
Branch 92
9
6: 66(bool) FOrdEqual 95 27
9
2: Label
SelectionMerge 98 None
95: 94(fvec2) RayQueryGetIntersectionBarycentricsKHR 47(rayQuery) 23
BranchConditional 96 97 98
96: 8(float) CompositeExtract 95 0
97:
Label
97:
67(bool) FOrdEqual 96 27
99: 2 FunctionCall 6(doSomething()
SelectionMerge 99 None
Branch 98
BranchConditional 97 98 99
98: Label
98: Label
100:
18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 45(rayQuery) 23
100:
2 FunctionCall 6(doSomething()
101: 66(bool) SGreaterThan 100 1
9
Branch 9
9
SelectionMerge 103 None
99: Label
BranchConditional 101 102 10
3
101: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 47(rayQuery) 2
3
102:
Label
102:
67(bool) SGreaterThan 101 19
104: 2 FunctionCall 6(doSomething()
SelectionMerge 104 None
Branch 103
BranchConditional 102 103 104
103: Label
103: Label
105:
18(int) RayQueryGetIntersectionInstanceIdKHR 45(rayQuery) 23
105:
2 FunctionCall 6(doSomething()
106: 66(bool) SGreaterThan 105 19
Branch 104
SelectionMerge 108 None
104: Label
BranchConditional 106 107 108
106: 18(int) RayQueryGetIntersectionInstanceIdKHR 47(rayQuery) 23
107:
Label
107:
67(bool) SGreaterThan 106 19
109: 2 FunctionCall 6(doSomething()
SelectionMerge 109 None
Branch 108
BranchConditional 107 108 109
108: Label
108: Label
110:
9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 45(rayQuery) 23
110:
2 FunctionCall 6(doSomething()
111: 8(float) CompositeExtract 110 0
Branch 109
1
12: 66(bool) FOrdGreaterThan 111 27
1
09: Label
SelectionMerge 114 None
111: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 47(rayQuery) 23
BranchConditional 112 113 114
112: 8(float) CompositeExtract 111 0
113:
Label
113:
67(bool) FOrdGreaterThan 112 27
115: 2 FunctionCall 6(doSomething()
SelectionMerge 115 None
Branch 114
BranchConditional 113 114 115
114: Label
114: Label
116:
9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 45(rayQuery) 23
116:
2 FunctionCall 6(doSomething()
117: 8(float) CompositeExtract 116 0
Branch 115
11
8: 66(bool) FOrdGreaterThan 117 27
11
5: Label
SelectionMerge 120 None
117: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 47(rayQuery) 23
BranchConditional 118 119 12
0
118: 8(float) CompositeExtract 117
0
119:
Label
119:
67(bool) FOrdGreaterThan 118 27
121: 2 FunctionCall 6(doSomething()
SelectionMerge 121 None
Branch 120
BranchConditional 119 120 121
120: Label
120: Label
122:
18(int) RayQueryGetIntersectionPrimitiveIndexKHR 45(rayQuery) 23
122:
2 FunctionCall 6(doSomething()
123: 66(bool) SGreaterThan 122 19
Branch 121
SelectionMerge 125 None
121: Label
BranchConditional 123 124 125
123: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 47(rayQuery) 23
124:
Label
124:
67(bool) SGreaterThan 123 19
126: 2 FunctionCall 6(doSomething()
SelectionMerge 126 None
Branch 125
BranchConditional 124 125 126
125: Label
125: Label
127:
8(float) RayQueryGetIntersectionTKHR 45(rayQuery) 23
127:
2 FunctionCall 6(doSomething()
128: 66(bool) FOrdGreaterThan 127 27
Branch 126
SelectionMerge 130 None
126: Label
BranchConditional 128 129 130
128: 8(float) RayQueryGetIntersectionTKHR 47(rayQuery) 23
129:
Label
129:
67(bool) FOrdGreaterThan 128 27
131: 2 FunctionCall 6(doSomething()
SelectionMerge 131 None
Branch 130
BranchConditional 129 130 131
130: Label
130: Label
132:
18(int) RayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR 45(rayQuery) 23
132:
2 FunctionCall 6(doSomething()
133: 66(bool) UGreaterThan 132 20
Branch 131
SelectionMerge 135 None
131: Label
BranchConditional 133 134 135
133: 18(int) RayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR 47(rayQuery) 23
134:
Label
134:
67(bool) UGreaterThan 133 20
136: 2 FunctionCall 6(doSomething()
SelectionMerge 136 None
Branch 135
BranchConditional 134 135 136
135: Label
135: Label
Branch 75
137: 2 FunctionCall 6(doSomething()
74: Label
Branch 136
138: 77 RayQueryGetIntersectionObjectToWorldKHR 45(rayQuery) 19
136: Label
Store 79(_mat4x3) 138
Branch 76
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
75: Label
Branch 63
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
63: Label
Branch 60
153: 35(ptr) AccessChain 85(_mat3x4) 19 20
62: Label
154: 8(float) Load 153
152: 35(ptr) AccessChain 84(_mat3x4) 19 20
155: 35(ptr) AccessChain 80(_mat4x3) 19 20
153: 8(float) Load 152
156: 8(float) Load 155
154: 35(ptr) AccessChain 79(_mat4x3) 19 20
157: 67(bool) FOrdEqual 154 156
155: 8(float) Load 154
SelectionMerge 159 None
156: 66(bool) FOrdEqual 153 155
BranchConditional 157 158 159
SelectionMerge 158 None
BranchConditional 156 157 158
157: Label
159: 2 FunctionCall 6(doSomething()
Branch 158
158: Label
158: Label
161: 14(int) RayQueryGetIntersectionTypeKHR 45(rayQuery) 23
160: 2 FunctionCall 6(doSomething()
Store 160(committedStatus) 161
Branch 159
162: 14(int) Load 160(committedStatus)
159: Label
SelectionMerge 166 None
162: 14(int) RayQueryGetIntersectionTypeKHR 47(rayQuery) 23
Switch 162 166
Store 161(committedStatus) 162
case 0: 163
163: 14(int) Load 161(committedStatus)
case 1: 164
SelectionMerge 167 None
case 2: 165
Switch 163 167
163: Label
case 0: 164
167: 77 RayQueryGetIntersectionWorldToObjectKHR 45(rayQuery) 19
case 1: 165
Store 79(_mat4x3) 167
case 2: 166
168: 77 Load 79(_mat4x3)
169: 82 Transpose 168
Store 84(_mat3x4) 169
Branch 166
164: Label
164: Label
171: 77 RayQueryGetIntersectionWorldToObjectKHR 45(rayQuery) 23
168: 78 RayQueryGetIntersectionWorldToObjectKHR 47(rayQuery) 19
Store 79(_mat4x3) 171
Store 80(_mat4x3) 168
172: 77 Load 79(_mat4x3)
169: 78 Load 80(_mat4x3)
173: 82 Transpose 172
170: 83 Transpose 169
Store 84(_mat3x4) 173
Store 85(_mat3x4) 170
174: 66(bool) RayQueryGetIntersectionFrontFaceKHR 45(rayQuery) 23
Branch 167
SelectionMerge 176 None
165: Label
BranchConditional 174 175 176
172: 78 RayQueryGetIntersectionWorldToObjectKHR 47(rayQuery) 23
175: Label
Store 80(_mat4x3) 172
177: 2 FunctionCall 6(doSomething()
173: 78 Load 80(_mat4x3)
Branch 176
174: 83 Transpose 173
Store 85(_mat3x4) 174
175: 67(bool) RayQueryGetIntersectionFrontFaceKHR 47(rayQuery) 23
SelectionMerge 177 None
BranchConditional 175 176 177
176: Label
176: Label
178:
93(fvec2) RayQueryGetIntersectionBarycentricsKHR 45(rayQuery) 23
178:
2 FunctionCall 6(doSomething()
180: 8(float) CompositeExtract 178 1
Branch 177
1
81: 66(bool) FOrdEqual 180 27
1
77: Label
SelectionMerge 183 None
179: 94(fvec2) RayQueryGetIntersectionBarycentricsKHR 47(rayQuery) 23
BranchConditional 181 182 183
181: 8(float) CompositeExtract 179 1
182:
Label
182:
67(bool) FOrdEqual 181 27
184: 2 FunctionCall 6(doSomething()
SelectionMerge 184 None
Branch 183
BranchConditional 182 183 184
183: Label
183: Label
Branch 166
185: 2 FunctionCall 6(doSomething()
165: Label
Branch 184
18
6: 18(int) RayQueryGetIntersectionGeometryIndexKHR 45(rayQuery) 23
18
4: Label
187: 66(bool) SGreaterThan 186 19
Branch 167
SelectionMerge 189 None
166: Label
BranchConditional 187 188 189
187: 18(int) RayQueryGetIntersectionGeometryIndexKHR 47(rayQuery) 23
188:
Label
188:
67(bool) SGreaterThan 187 19
190: 2 FunctionCall 6(doSomething()
SelectionMerge 190 None
Branch 189
BranchConditional 188 189 190
189: Label
189: Label
191:
18(int) RayQueryGetIntersectionInstanceIdKHR 45(rayQuery) 23
191:
2 FunctionCall 6(doSomething()
192: 66(bool) SGreaterThan 191 19
Branch 190
SelectionMerge 194 None
190: Label
BranchConditional 192 193 194
192: 18(int) RayQueryGetIntersectionInstanceIdKHR 47(rayQuery) 23
193:
Label
193:
67(bool) SGreaterThan 192 19
195: 2 FunctionCall 6(doSomething()
SelectionMerge 195 None
Branch 194
BranchConditional 193 194 195
194: Label
194: Label
196:
18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 45(rayQuery) 23
196:
2 FunctionCall 6(doSomething()
197: 66(bool) SGreaterThan 196 19
Branch 195
SelectionMerge 199 None
195: Label
BranchConditional 197 198 199
197: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 47(rayQuery) 23
198:
Label
198:
67(bool) SGreaterThan 197 19
200: 2 FunctionCall 6(doSomething()
SelectionMerge 200 None
Branch 199
BranchConditional 198 199 200
199: Label
199: Label
201:
9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 45(rayQuery) 23
201:
2 FunctionCall 6(doSomething()
203: 8(float) CompositeExtract 201 2
Branch 200
20
4: 66(bool) FOrdGreaterThan 203 27
20
0: Label
SelectionMerge 206 None
202: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 47(rayQuery) 23
BranchConditional 204 205 206
204: 8(float) CompositeExtract 202 2
205:
Label
205:
67(bool) FOrdGreaterThan 204 27
207: 2 FunctionCall 6(doSomething()
SelectionMerge 207 None
Branch 206
BranchConditional 205 206 207
206: Label
206: Label
208:
9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 45(rayQuery) 23
208:
2 FunctionCall 6(doSomething()
209: 8(float) CompositeExtract 208 0
Branch 207
2
10: 66(bool) FOrdGreaterThan 209 27
2
07: Label
SelectionMerge 212 None
209: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 47(rayQuery) 23
BranchConditional 210 211 212
210: 8(float) CompositeExtract 209 0
211:
Label
211:
67(bool) FOrdGreaterThan 210 27
213: 2 FunctionCall 6(doSomething()
SelectionMerge 213 None
Branch 212
BranchConditional 211 212 213
212: Label
212: Label
214:
18(int) RayQueryGetIntersectionPrimitiveIndexKHR 45(rayQuery) 23
214:
2 FunctionCall 6(doSomething()
215: 66(bool) SGreaterThan 214 19
Branch 213
SelectionMerge 217 None
213: Label
BranchConditional 215 216 217
215: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 47(rayQuery) 23
216:
Label
216:
67(bool) SGreaterThan 215 19
218: 2 FunctionCall 6(doSomething()
SelectionMerge 218 None
Branch 217
BranchConditional 216 217 218
217: Label
217: Label
219:
8(float) RayQueryGetIntersectionTKHR 45(rayQuery) 23
219:
2 FunctionCall 6(doSomething()
220: 66(bool) FOrdGreaterThan 219 27
Branch 218
SelectionMerge 222 None
218: Label
BranchConditional 220 221 222
220: 8(float) RayQueryGetIntersectionTKHR 47(rayQuery) 23
221:
Label
221:
67(bool) FOrdGreaterThan 220 27
223: 2 FunctionCall 6(doSomething()
SelectionMerge 223 None
Branch 222
BranchConditional 221 222 223
222: Label
222: Label
Branch 166
224: 2 FunctionCall 6(doSomething()
166: Label
Branch 223
22
6: 35(ptr) AccessChain 84(_mat3x4) 19 20
22
3: Label
227: 8(float) Load 226
Branch 167
228: 35(ptr) AccessChain 79(_mat4x3) 19 20
167: Label
22
9: 8(float) Load 228
22
7: 35(ptr) AccessChain 85(_mat3x4) 19 20
2
30: 66(bool) FOrdEqual 227 229
2
28: 8(float) Load 227
SelectionMerge 232 None
229: 35(ptr) AccessChain 80(_mat4x3) 19 20
BranchConditional 230 231 232
230: 8(float) Load 229
231:
Label
231:
67(bool) FOrdEqual 228 230
233: 2 FunctionCall 6(doSomething()
SelectionMerge 233 None
Branch 232
BranchConditional 231 232 233
232: Label
232: Label
234:
43 Load 45(rayQuery
)
234:
2 FunctionCall 6(doSomething(
)
235: 14(int) RayQueryGetRayFlagsKHR 234
Branch 233
23
6: 66(bool) UGreaterThan 235 20
23
3: Label
SelectionMerge 238 None
235: 45 Load 47(rayQuery)
BranchConditional 236 237 238
236: 14(int) RayQueryGetRayFlagsKHR 235
237:
Label
237:
67(bool) UGreaterThan 236 20
239: 2 FunctionCall 6(doSomething()
SelectionMerge 239 None
Branch 238
BranchConditional 237 238 239
238: Label
238: Label
240:
43 Load 45(rayQuery
)
240:
2 FunctionCall 6(doSomething(
)
241: 8(float) RayQueryGetRayTMinKHR 240
Branch 239
2
42: 66(bool) FOrdGreaterThan 241 27
2
39: Label
SelectionMerge 244 None
241: 45 Load 47(rayQuery)
BranchConditional 242 243 244
242: 8(float) RayQueryGetRayTMinKHR 241
243:
Label
243:
67(bool) FOrdGreaterThan 242 27
245: 2 FunctionCall 6(doSomething()
SelectionMerge 245 None
Branch 244
BranchConditional 243 244 245
244: Label
244: Label
24
7: 43 Load 45(rayQuery
)
24
6: 2 FunctionCall 6(doSomething(
)
248: 9(fvec3) RayQueryGetWorldRayOriginKHR 247
Branch 245
Store 246(o) 248
245: Label
2
50: 43 Load 45
(rayQuery)
2
48: 45 Load 47
(rayQuery)
2
51: 9(fvec3) RayQueryGetWorldRayDirectionKHR 250
2
49: 9(fvec3) RayQueryGetWorldRayOriginKHR 248
Store 24
9(d) 251
Store 24
7(o) 249
25
2: 35(ptr) AccessChain 246(o) 20
25
1: 45 Load 47(rayQuery)
25
3: 8(float) Load 252
25
2: 9(fvec3) RayQueryGetWorldRayDirectionKHR 251
254: 35(ptr) AccessChain 249(d) 20
2
Store 250(d) 25
2
25
5: 8(float) Load 254
25
3: 35(ptr) AccessChain 247(o) 20
25
6: 66(bool) FOrdEqual 253 255
25
4: 8(float) Load 253
SelectionMerge 258 None
255: 35(ptr) AccessChain 250(d) 203
BranchConditional 256 257 258
256: 8(float) Load 255
257:
Label
257:
67(bool) FOrdEqual 254 256
259: 2 FunctionCall 6(doSomething()
SelectionMerge 259 None
Branch 258
BranchConditional 257 258 259
258: Label
258: Label
260: 2 FunctionCall 6(doSomething()
Branch 259
259: Label
Return
Return
FunctionEnd
FunctionEnd
6(doSomething(): 2 Function None 3
6(doSomething(): 2 Function None 3
...
...
Test/baseResults/rayQuery-allOps.rgen.out
View file @
7f689beb
rayQuery-allOps.rgen
rayQuery-allOps.rgen
// Module Version 10000
// Module Version 10000
// Generated by (magic number): 80008
// Generated by (magic number): 80008
// Id's are bound by 26
5
// Id's are bound by 26
6
Capability RayQueryProvisionalKHR
Capability RayQueryProvisionalKHR
Capability RayTracingNV
Capability RayTracingNV
...
@@ -26,40 +26,40 @@ rayQuery-allOps.rgen
...
@@ -26,40 +26,40 @@ rayQuery-allOps.rgen
MemberName 15(Log) 1 "y"
MemberName 15(Log) 1 "y"
Name 17 ""
Name 17 ""
Name 26 "ray"
Name 26 "ray"
Name 4
5 "rayQuer
y"
Name 4
3 "ra
y"
Name 4
8 "rtas
"
Name 4
7 "rayQuery
"
Name 5
1 "ray
"
Name 5
0 "rtas
"
Name
69
"candidateType"
Name
70
"candidateType"
Name
79
"_mat4x3"
Name
80
"_mat4x3"
Name 8
4
"_mat3x4"
Name 8
5
"_mat3x4"
Name 14
6
"t"
Name 14
7
"t"
Name 16
0
"committedStatus"
Name 16
1
"committedStatus"
Name 24
6
"o"
Name 24
7
"o"
Name 2
49
"d"
Name 2
50
"d"
Name 26
0
"Ray"
Name 26
1
"Ray"
MemberName 26
0
(Ray) 0 "pos"
MemberName 26
1
(Ray) 0 "pos"
MemberName 26
0
(Ray) 1 "tmin"
MemberName 26
1
(Ray) 1 "tmin"
MemberName 26
0
(Ray) 2 "dir"
MemberName 26
1
(Ray) 2 "dir"
MemberName 26
0
(Ray) 3 "tmax"
MemberName 26
1
(Ray) 3 "tmax"
Name 26
2
"Rays"
Name 26
3
"Rays"
MemberName 26
2
(Rays) 0 "rays"
MemberName 26
3
(Rays) 0 "rays"
Name 26
4
""
Name 26
5
""
MemberDecorate 15(Log) 0 Offset 0
MemberDecorate 15(Log) 0 Offset 0
MemberDecorate 15(Log) 1 Offset 4
MemberDecorate 15(Log) 1 Offset 4
Decorate 15(Log) BufferBlock
Decorate 15(Log) BufferBlock
Decorate 17 DescriptorSet 0
Decorate 17 DescriptorSet 0
Decorate 17 Binding 0
Decorate 17 Binding 0
Decorate
48
(rtas) DescriptorSet 0
Decorate
50
(rtas) DescriptorSet 0
Decorate
48
(rtas) Binding 1
Decorate
50
(rtas) Binding 1
MemberDecorate 26
0
(Ray) 0 Offset 0
MemberDecorate 26
1
(Ray) 0 Offset 0
MemberDecorate 26
0
(Ray) 1 Offset 12
MemberDecorate 26
1
(Ray) 1 Offset 12
MemberDecorate 26
0
(Ray) 2 Offset 16
MemberDecorate 26
1
(Ray) 2 Offset 16
MemberDecorate 26
0
(Ray) 3 Offset 28
MemberDecorate 26
1
(Ray) 3 Offset 28
Decorate 26
1
ArrayStride 32
Decorate 26
2
ArrayStride 32
MemberDecorate 26
2
(Rays) 0 Offset 0
MemberDecorate 26
3
(Rays) 0 Offset 0
Decorate 26
2
(Rays) BufferBlock
Decorate 26
3
(Rays) BufferBlock
Decorate 26
4
DescriptorSet 0
Decorate 26
5
DescriptorSet 0
Decorate 26
4
Binding 2
Decorate 26
5
Binding 2
2: TypeVoid
2: TypeVoid
3: TypeFunction 2
3: TypeFunction 2
8: TypeFloat 32
8: TypeFloat 32
...
@@ -85,333 +85,335 @@ rayQuery-allOps.rgen
...
@@ -85,333 +85,335 @@ rayQuery-allOps.rgen
35: TypePointer Function 8(float)
35: TypePointer Function 8(float)
37: 18(int) Constant 3
37: 18(int) Constant 3
38: 8(float) Constant 1176255488
38: 8(float) Constant 1176255488
4
3
: TypeRayQueryProvisionalKHR
4
5
: TypeRayQueryProvisionalKHR
4
4: TypePointer Function 43
4
6: TypePointer Function 45
4
6
: TypeAccelerationStructureKHR
4
8
: TypeAccelerationStructureKHR
4
7: TypePointer UniformConstant 46
4
9: TypePointer UniformConstant 48
48(rtas): 47
(ptr) Variable UniformConstant
50(rtas): 49
(ptr) Variable UniformConstant
5
0
: 14(int) Constant 255
5
2
: 14(int) Constant 255
6
6
: TypeBool
6
7
: TypeBool
6
8
: TypePointer Function 14(int)
6
9
: TypePointer Function 14(int)
7
0: 66
(bool) ConstantFalse
7
1: 67
(bool) ConstantFalse
7
7
: TypeMatrix 9(fvec3) 4
7
8
: TypeMatrix 9(fvec3) 4
7
8: TypePointer Function 77
7
9: TypePointer Function 78
8
1
: TypeVector 8(float) 4
8
2
: TypeVector 8(float) 4
8
2: TypeMatrix 81
(fvec4) 3
8
3: TypeMatrix 82
(fvec4) 3
8
3: TypePointer Function 82
8
4: TypePointer Function 83
8
8: 66
(bool) ConstantTrue
8
9: 67
(bool) ConstantTrue
9
3
: TypeVector 8(float) 2
9
4
: TypeVector 8(float) 2
14
7
: 8(float) Constant 1056964608
14
8
: 8(float) Constant 1056964608
1
79
: 14(int) Constant 1
1
80
: 14(int) Constant 1
20
2
: 14(int) Constant 2
20
3
: 14(int) Constant 2
26
0
(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
26
1
(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
26
1: TypeRuntimeArray 260
(Ray)
26
2: TypeRuntimeArray 261
(Ray)
26
2(Rays): TypeStruct 261
26
3(Rays): TypeStruct 262
26
3: TypePointer Uniform 262
(Rays)
26
4: TypePointer Uniform 263
(Rays)
26
4: 263
(ptr) Variable Uniform
26
5: 264
(ptr) Variable Uniform
4(main): 2 Function None 3
4(main): 2 Function None 3
5: Label
5: Label
45(rayQuery): 44(ptr) Variable Function
43(ray): 25(ptr) Variable Function
51(ray): 25(ptr) Variable Function
47(rayQuery): 46(ptr) Variable Function
69(candidateType): 68(ptr) Variable Function
70(candidateType): 69(ptr) Variable Function
79(_mat4x3): 78(ptr) Variable Function
80(_mat4x3): 79(ptr) Variable Function
84(_mat3x4): 83(ptr) Variable Function
85(_mat3x4): 84(ptr) Variable Function
146(t): 35(ptr) Variable Function
147(t): 35(ptr) Variable Function
160(committedStatus): 68(ptr) Variable Function
161(committedStatus): 69(ptr) Variable Function
246(o): 29(ptr) Variable Function
247(o): 29(ptr) Variable Function
249(d): 29(ptr) Variable Function
250(d): 29(ptr) Variable Function
49: 46 Load 48(rtas)
44: 10(Ray) FunctionCall 12(makeRayDesc()
52: 29(ptr) AccessChain 51(ray) 19
Store 43(ray) 44
53: 9(fvec3) Load 52
51: 48 Load 50(rtas)
54: 35(ptr) AccessChain 51(ray) 23
53: 29(ptr) AccessChain 43(ray) 19
55: 8(float) Load 54
54: 9(fvec3) Load 53
56: 29(ptr) AccessChain 51(ray) 31
55: 35(ptr) AccessChain 43(ray) 23
57: 9(fvec3) Load 56
56: 8(float) Load 55
58: 35(ptr) AccessChain 51(ray) 37
57: 29(ptr) AccessChain 43(ray) 31
59: 8(float) Load 58
58: 9(fvec3) Load 57
RayQueryInitializeKHR 45(rayQuery) 49 20 50 53 55 57 59
59: 35(ptr) AccessChain 43(ray) 37
Branch 60
60: 8(float) Load 59
60: Label
RayQueryInitializeKHR 47(rayQuery) 51 20 52 54 56 58 60
LoopMerge 62 63 None
Branch 61
Branch 64
64: Label
65: 43 Load 45(rayQuery)
67: 66(bool) RayQueryProceedKHR 65
BranchConditional 67 61 62
61: Label
61: Label
71: 14(int) RayQueryGetIntersectionTypeKHR 45(rayQuery) 19
LoopMerge 63 64 None
Store 69(candidateType) 71
Branch 65
72: 14(int) Load 69(candidateType)
65: Label
SelectionMerge 75 None
66: 45 Load 47(rayQuery)
Switch 72 75
68: 67(bool) RayQueryProceedKHR 66
case 0: 73
BranchConditional 68 62 63
case 1: 74
62: Label
73: Label
72: 14(int) RayQueryGetIntersectionTypeKHR 47(rayQuery) 19
76: 43 Load 45(rayQuery)
Store 70(candidateType) 72
RayQueryTerminateKHR 76
73: 14(int) Load 70(candidateType)
80: 77 RayQueryGetIntersectionObjectToWorldKHR 45(rayQuery) 19
SelectionMerge 76 None
Store 79(_mat4x3) 80
Switch 73 76
85: 77 Load 79(_mat4x3)
case 0: 74
86: 82 Transpose 85
case 1: 75
Store 84(_mat3x4) 86
74: Label
87: 43 Load 45(rayQuery)
77: 45 Load 47(rayQuery)
RayQueryConfirmIntersectionKHR 87
RayQueryTerminateKHR 77
89: 66(bool) RayQueryGetIntersectionFrontFaceKHR 45(rayQuery) 23
81: 78 RayQueryGetIntersectionObjectToWorldKHR 47(rayQuery) 19
SelectionMerge 91 None
Store 80(_mat4x3) 81
BranchConditional 89 90 91
86: 78 Load 80(_mat4x3)
90: Label
87: 83 Transpose 86
92: 2 FunctionCall 6(doSomething()
Store 85(_mat3x4) 87
Branch 91
88: 45 Load 47(rayQuery)
RayQueryConfirmIntersectionKHR 88
90: 67(bool) RayQueryGetIntersectionFrontFaceKHR 47(rayQuery) 23
SelectionMerge 92 None
BranchConditional 90 91 92
91: Label
91: Label
9
4: 93(fvec2) RayQueryGetIntersectionBarycentricsKHR 45(rayQuery) 23
9
3: 2 FunctionCall 6(doSomething()
95: 8(float) CompositeExtract 94 0
Branch 92
9
6: 66(bool) FOrdEqual 95 27
9
2: Label
SelectionMerge 98 None
95: 94(fvec2) RayQueryGetIntersectionBarycentricsKHR 47(rayQuery) 23
BranchConditional 96 97 98
96: 8(float) CompositeExtract 95 0
97:
Label
97:
67(bool) FOrdEqual 96 27
99: 2 FunctionCall 6(doSomething()
SelectionMerge 99 None
Branch 98
BranchConditional 97 98 99
98: Label
98: Label
100:
18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 45(rayQuery) 23
100:
2 FunctionCall 6(doSomething()
101: 66(bool) SGreaterThan 100 1
9
Branch 9
9
SelectionMerge 103 None
99: Label
BranchConditional 101 102 10
3
101: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 47(rayQuery) 2
3
102:
Label
102:
67(bool) SGreaterThan 101 19
104: 2 FunctionCall 6(doSomething()
SelectionMerge 104 None
Branch 103
BranchConditional 102 103 104
103: Label
103: Label
105:
18(int) RayQueryGetIntersectionInstanceIdKHR 45(rayQuery) 23
105:
2 FunctionCall 6(doSomething()
106: 66(bool) SGreaterThan 105 19
Branch 104
SelectionMerge 108 None
104: Label
BranchConditional 106 107 108
106: 18(int) RayQueryGetIntersectionInstanceIdKHR 47(rayQuery) 23
107:
Label
107:
67(bool) SGreaterThan 106 19
109: 2 FunctionCall 6(doSomething()
SelectionMerge 109 None
Branch 108
BranchConditional 107 108 109
108: Label
108: Label
110:
9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 45(rayQuery) 23
110:
2 FunctionCall 6(doSomething()
111: 8(float) CompositeExtract 110 0
Branch 109
1
12: 66(bool) FOrdGreaterThan 111 27
1
09: Label
SelectionMerge 114 None
111: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 47(rayQuery) 23
BranchConditional 112 113 114
112: 8(float) CompositeExtract 111 0
113:
Label
113:
67(bool) FOrdGreaterThan 112 27
115: 2 FunctionCall 6(doSomething()
SelectionMerge 115 None
Branch 114
BranchConditional 113 114 115
114: Label
114: Label
116:
9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 45(rayQuery) 23
116:
2 FunctionCall 6(doSomething()
117: 8(float) CompositeExtract 116 0
Branch 115
11
8: 66(bool) FOrdGreaterThan 117 27
11
5: Label
SelectionMerge 120 None
117: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 47(rayQuery) 23
BranchConditional 118 119 12
0
118: 8(float) CompositeExtract 117
0
119:
Label
119:
67(bool) FOrdGreaterThan 118 27
121: 2 FunctionCall 6(doSomething()
SelectionMerge 121 None
Branch 120
BranchConditional 119 120 121
120: Label
120: Label
122:
18(int) RayQueryGetIntersectionPrimitiveIndexKHR 45(rayQuery) 23
122:
2 FunctionCall 6(doSomething()
123: 66(bool) SGreaterThan 122 19
Branch 121
SelectionMerge 125 None
121: Label
BranchConditional 123 124 125
123: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 47(rayQuery) 23
124:
Label
124:
67(bool) SGreaterThan 123 19
126: 2 FunctionCall 6(doSomething()
SelectionMerge 126 None
Branch 125
BranchConditional 124 125 126
125: Label
125: Label
127:
8(float) RayQueryGetIntersectionTKHR 45(rayQuery) 23
127:
2 FunctionCall 6(doSomething()
128: 66(bool) FOrdGreaterThan 127 27
Branch 126
SelectionMerge 130 None
126: Label
BranchConditional 128 129 130
128: 8(float) RayQueryGetIntersectionTKHR 47(rayQuery) 23
129:
Label
129:
67(bool) FOrdGreaterThan 128 27
131: 2 FunctionCall 6(doSomething()
SelectionMerge 131 None
Branch 130
BranchConditional 129 130 131
130: Label
130: Label
132:
18(int) RayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR 45(rayQuery) 23
132:
2 FunctionCall 6(doSomething()
133: 66(bool) UGreaterThan 132 20
Branch 131
SelectionMerge 135 None
131: Label
BranchConditional 133 134 135
133: 18(int) RayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR 47(rayQuery) 23
134:
Label
134:
67(bool) UGreaterThan 133 20
136: 2 FunctionCall 6(doSomething()
SelectionMerge 136 None
Branch 135
BranchConditional 134 135 136
135: Label
135: Label
Branch 75
137: 2 FunctionCall 6(doSomething()
74: Label
Branch 136
138: 77 RayQueryGetIntersectionObjectToWorldKHR 45(rayQuery) 19
136: Label
Store 79(_mat4x3) 138
Branch 76
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
75: Label
Branch 63
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
63: Label
Branch 60
153: 35(ptr) AccessChain 85(_mat3x4) 19 20
62: Label
154: 8(float) Load 153
152: 35(ptr) AccessChain 84(_mat3x4) 19 20
155: 35(ptr) AccessChain 80(_mat4x3) 19 20
153: 8(float) Load 152
156: 8(float) Load 155
154: 35(ptr) AccessChain 79(_mat4x3) 19 20
157: 67(bool) FOrdEqual 154 156
155: 8(float) Load 154
SelectionMerge 159 None
156: 66(bool) FOrdEqual 153 155
BranchConditional 157 158 159
SelectionMerge 158 None
BranchConditional 156 157 158
157: Label
159: 2 FunctionCall 6(doSomething()
Branch 158
158: Label
158: Label
161: 14(int) RayQueryGetIntersectionTypeKHR 45(rayQuery) 23
160: 2 FunctionCall 6(doSomething()
Store 160(committedStatus) 161
Branch 159
162: 14(int) Load 160(committedStatus)
159: Label
SelectionMerge 166 None
162: 14(int) RayQueryGetIntersectionTypeKHR 47(rayQuery) 23
Switch 162 166
Store 161(committedStatus) 162
case 0: 163
163: 14(int) Load 161(committedStatus)
case 1: 164
SelectionMerge 167 None
case 2: 165
Switch 163 167
163: Label
case 0: 164
167: 77 RayQueryGetIntersectionWorldToObjectKHR 45(rayQuery) 19
case 1: 165
Store 79(_mat4x3) 167
case 2: 166
168: 77 Load 79(_mat4x3)
169: 82 Transpose 168
Store 84(_mat3x4) 169
Branch 166
164: Label
164: Label
171: 77 RayQueryGetIntersectionWorldToObjectKHR 45(rayQuery) 23
168: 78 RayQueryGetIntersectionWorldToObjectKHR 47(rayQuery) 19
Store 79(_mat4x3) 171
Store 80(_mat4x3) 168
172: 77 Load 79(_mat4x3)
169: 78 Load 80(_mat4x3)
173: 82 Transpose 172
170: 83 Transpose 169
Store 84(_mat3x4) 173
Store 85(_mat3x4) 170
174: 66(bool) RayQueryGetIntersectionFrontFaceKHR 45(rayQuery) 23
Branch 167
SelectionMerge 176 None
165: Label
BranchConditional 174 175 176
172: 78 RayQueryGetIntersectionWorldToObjectKHR 47(rayQuery) 23
175: Label
Store 80(_mat4x3) 172
177: 2 FunctionCall 6(doSomething()
173: 78 Load 80(_mat4x3)
Branch 176
174: 83 Transpose 173
Store 85(_mat3x4) 174
175: 67(bool) RayQueryGetIntersectionFrontFaceKHR 47(rayQuery) 23
SelectionMerge 177 None
BranchConditional 175 176 177
176: Label
176: Label
178:
93(fvec2) RayQueryGetIntersectionBarycentricsKHR 45(rayQuery) 23
178:
2 FunctionCall 6(doSomething()
180: 8(float) CompositeExtract 178 1
Branch 177
1
81: 66(bool) FOrdEqual 180 27
1
77: Label
SelectionMerge 183 None
179: 94(fvec2) RayQueryGetIntersectionBarycentricsKHR 47(rayQuery) 23
BranchConditional 181 182 183
181: 8(float) CompositeExtract 179 1
182:
Label
182:
67(bool) FOrdEqual 181 27
184: 2 FunctionCall 6(doSomething()
SelectionMerge 184 None
Branch 183
BranchConditional 182 183 184
183: Label
183: Label
Branch 166
185: 2 FunctionCall 6(doSomething()
165: Label
Branch 184
18
6: 18(int) RayQueryGetIntersectionGeometryIndexKHR 45(rayQuery) 23
18
4: Label
187: 66(bool) SGreaterThan 186 19
Branch 167
SelectionMerge 189 None
166: Label
BranchConditional 187 188 189
187: 18(int) RayQueryGetIntersectionGeometryIndexKHR 47(rayQuery) 23
188:
Label
188:
67(bool) SGreaterThan 187 19
190: 2 FunctionCall 6(doSomething()
SelectionMerge 190 None
Branch 189
BranchConditional 188 189 190
189: Label
189: Label
191:
18(int) RayQueryGetIntersectionInstanceIdKHR 45(rayQuery) 23
191:
2 FunctionCall 6(doSomething()
192: 66(bool) SGreaterThan 191 19
Branch 190
SelectionMerge 194 None
190: Label
BranchConditional 192 193 194
192: 18(int) RayQueryGetIntersectionInstanceIdKHR 47(rayQuery) 23
193:
Label
193:
67(bool) SGreaterThan 192 19
195: 2 FunctionCall 6(doSomething()
SelectionMerge 195 None
Branch 194
BranchConditional 193 194 195
194: Label
194: Label
196:
18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 45(rayQuery) 23
196:
2 FunctionCall 6(doSomething()
197: 66(bool) SGreaterThan 196 19
Branch 195
SelectionMerge 199 None
195: Label
BranchConditional 197 198 199
197: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 47(rayQuery) 23
198:
Label
198:
67(bool) SGreaterThan 197 19
200: 2 FunctionCall 6(doSomething()
SelectionMerge 200 None
Branch 199
BranchConditional 198 199 200
199: Label
199: Label
201:
9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 45(rayQuery) 23
201:
2 FunctionCall 6(doSomething()
203: 8(float) CompositeExtract 201 2
Branch 200
20
4: 66(bool) FOrdGreaterThan 203 27
20
0: Label
SelectionMerge 206 None
202: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 47(rayQuery) 23
BranchConditional 204 205 206
204: 8(float) CompositeExtract 202 2
205:
Label
205:
67(bool) FOrdGreaterThan 204 27
207: 2 FunctionCall 6(doSomething()
SelectionMerge 207 None
Branch 206
BranchConditional 205 206 207
206: Label
206: Label
208:
9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 45(rayQuery) 23
208:
2 FunctionCall 6(doSomething()
209: 8(float) CompositeExtract 208 0
Branch 207
2
10: 66(bool) FOrdGreaterThan 209 27
2
07: Label
SelectionMerge 212 None
209: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 47(rayQuery) 23
BranchConditional 210 211 212
210: 8(float) CompositeExtract 209 0
211:
Label
211:
67(bool) FOrdGreaterThan 210 27
213: 2 FunctionCall 6(doSomething()
SelectionMerge 213 None
Branch 212
BranchConditional 211 212 213
212: Label
212: Label
214:
18(int) RayQueryGetIntersectionPrimitiveIndexKHR 45(rayQuery) 23
214:
2 FunctionCall 6(doSomething()
215: 66(bool) SGreaterThan 214 19
Branch 213
SelectionMerge 217 None
213: Label
BranchConditional 215 216 217
215: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 47(rayQuery) 23
216:
Label
216:
67(bool) SGreaterThan 215 19
218: 2 FunctionCall 6(doSomething()
SelectionMerge 218 None
Branch 217
BranchConditional 216 217 218
217: Label
217: Label
219:
8(float) RayQueryGetIntersectionTKHR 45(rayQuery) 23
219:
2 FunctionCall 6(doSomething()
220: 66(bool) FOrdGreaterThan 219 27
Branch 218
SelectionMerge 222 None
218: Label
BranchConditional 220 221 222
220: 8(float) RayQueryGetIntersectionTKHR 47(rayQuery) 23
221:
Label
221:
67(bool) FOrdGreaterThan 220 27
223: 2 FunctionCall 6(doSomething()
SelectionMerge 223 None
Branch 222
BranchConditional 221 222 223
222: Label
222: Label
Branch 166
224: 2 FunctionCall 6(doSomething()
166: Label
Branch 223
22
6: 35(ptr) AccessChain 84(_mat3x4) 19 20
22
3: Label
227: 8(float) Load 226
Branch 167
228: 35(ptr) AccessChain 79(_mat4x3) 19 20
167: Label
22
9: 8(float) Load 228
22
7: 35(ptr) AccessChain 85(_mat3x4) 19 20
2
30: 66(bool) FOrdEqual 227 229
2
28: 8(float) Load 227
SelectionMerge 232 None
229: 35(ptr) AccessChain 80(_mat4x3) 19 20
BranchConditional 230 231 232
230: 8(float) Load 229
231:
Label
231:
67(bool) FOrdEqual 228 230
233: 2 FunctionCall 6(doSomething()
SelectionMerge 233 None
Branch 232
BranchConditional 231 232 233
232: Label
232: Label
234:
43 Load 45(rayQuery
)
234:
2 FunctionCall 6(doSomething(
)
235: 14(int) RayQueryGetRayFlagsKHR 234
Branch 233
23
6: 66(bool) UGreaterThan 235 20
23
3: Label
SelectionMerge 238 None
235: 45 Load 47(rayQuery)
BranchConditional 236 237 238
236: 14(int) RayQueryGetRayFlagsKHR 235
237:
Label
237:
67(bool) UGreaterThan 236 20
239: 2 FunctionCall 6(doSomething()
SelectionMerge 239 None
Branch 238
BranchConditional 237 238 239
238: Label
238: Label
240:
43 Load 45(rayQuery
)
240:
2 FunctionCall 6(doSomething(
)
241: 8(float) RayQueryGetRayTMinKHR 240
Branch 239
2
42: 66(bool) FOrdGreaterThan 241 27
2
39: Label
SelectionMerge 244 None
241: 45 Load 47(rayQuery)
BranchConditional 242 243 244
242: 8(float) RayQueryGetRayTMinKHR 241
243:
Label
243:
67(bool) FOrdGreaterThan 242 27
245: 2 FunctionCall 6(doSomething()
SelectionMerge 245 None
Branch 244
BranchConditional 243 244 245
244: Label
244: Label
24
7: 43 Load 45(rayQuery
)
24
6: 2 FunctionCall 6(doSomething(
)
248: 9(fvec3) RayQueryGetWorldRayOriginKHR 247
Branch 245
Store 246(o) 248
245: Label
2
50: 43 Load 45
(rayQuery)
2
48: 45 Load 47
(rayQuery)
2
51: 9(fvec3) RayQueryGetWorldRayDirectionKHR 250
2
49: 9(fvec3) RayQueryGetWorldRayOriginKHR 248
Store 24
9(d) 251
Store 24
7(o) 249
25
2: 35(ptr) AccessChain 246(o) 20
25
1: 45 Load 47(rayQuery)
25
3: 8(float) Load 252
25
2: 9(fvec3) RayQueryGetWorldRayDirectionKHR 251
254: 35(ptr) AccessChain 249(d) 20
2
Store 250(d) 25
2
25
5: 8(float) Load 254
25
3: 35(ptr) AccessChain 247(o) 20
25
6: 66(bool) FOrdEqual 253 255
25
4: 8(float) Load 253
SelectionMerge 258 None
255: 35(ptr) AccessChain 250(d) 203
BranchConditional 256 257 258
256: 8(float) Load 255
257:
Label
257:
67(bool) FOrdEqual 254 256
259: 2 FunctionCall 6(doSomething()
SelectionMerge 259 None
Branch 258
BranchConditional 257 258 259
258: Label
258: Label
260: 2 FunctionCall 6(doSomething()
Branch 259
259: Label
Return
Return
FunctionEnd
FunctionEnd
6(doSomething(): 2 Function None 3
6(doSomething(): 2 Function None 3
...
...
Test/baseResults/rayQuery-array-2d-dynamic.rgen.out
View file @
7f689beb
rayQuery-array-2d-dynamic.rgen
rayQuery-array-2d-dynamic.rgen
// Module Version 10000
// Module Version 10000
// Generated by (magic number): 80008
// Generated by (magic number): 80008
// Id's are bound by 12
6
// Id's are bound by 12
8
Capability RayQueryProvisionalKHR
Capability RayQueryProvisionalKHR
Capability RayTracingNV
Capability RayTracingNV
...
@@ -26,35 +26,35 @@ rayQuery-array-2d-dynamic.rgen
...
@@ -26,35 +26,35 @@ rayQuery-array-2d-dynamic.rgen
Name 23 "gl_LaunchIDNV"
Name 23 "gl_LaunchIDNV"
Name 28 "gl_LaunchSizeNV"
Name 28 "gl_LaunchSizeNV"
Name 50 "rtas"
Name 50 "rtas"
Name 6
8
"index"
Name 6
9
"index"
Name 7
0
"ray"
Name 7
1
"ray"
Name 7
1
"Ray"
Name 7
2
"Ray"
MemberName 7
1
(Ray) 0 "pos"
MemberName 7
2
(Ray) 0 "pos"
MemberName 7
1
(Ray) 1 "tmin"
MemberName 7
2
(Ray) 1 "tmin"
MemberName 7
1
(Ray) 2 "dir"
MemberName 7
2
(Ray) 2 "dir"
MemberName 7
1
(Ray) 3 "tmax"
MemberName 7
2
(Ray) 3 "tmax"
Name 7
3
"Rays"
Name 7
4
"Rays"
MemberName 7
3
(Rays) 0 "rays"
MemberName 7
4
(Rays) 0 "rays"
Name 7
5
""
Name 7
6
""
Name 9
0
"rayQuery"
Name 9
1
"rayQuery"
Name 9
2
"param"
Name 9
3
"param"
Name 9
5
"param"
Name 9
6
"param"
Name 1
18
"C"
Name 1
20
"C"
Name 12
0
"param"
Name 12
2
"param"
Name 12
3
"param"
Name 12
5
"param"
Decorate 23(gl_LaunchIDNV) BuiltIn LaunchIdKHR
Decorate 23(gl_LaunchIDNV) BuiltIn LaunchIdKHR
Decorate 28(gl_LaunchSizeNV) BuiltIn LaunchSizeKHR
Decorate 28(gl_LaunchSizeNV) BuiltIn LaunchSizeKHR
Decorate 50(rtas) DescriptorSet 0
Decorate 50(rtas) DescriptorSet 0
Decorate 50(rtas) Binding 0
Decorate 50(rtas) Binding 0
MemberDecorate 7
1
(Ray) 0 Offset 0
MemberDecorate 7
2
(Ray) 0 Offset 0
MemberDecorate 7
1
(Ray) 1 Offset 12
MemberDecorate 7
2
(Ray) 1 Offset 12
MemberDecorate 7
1
(Ray) 2 Offset 16
MemberDecorate 7
2
(Ray) 2 Offset 16
MemberDecorate 7
1
(Ray) 3 Offset 28
MemberDecorate 7
2
(Ray) 3 Offset 28
Decorate 7
2
ArrayStride 32
Decorate 7
3
ArrayStride 32
MemberDecorate 7
3
(Rays) 0 Offset 0
MemberDecorate 7
4
(Rays) 0 Offset 0
Decorate 7
3
(Rays) BufferBlock
Decorate 7
4
(Rays) BufferBlock
Decorate 7
5
DescriptorSet 0
Decorate 7
6
DescriptorSet 0
Decorate 7
5
Binding 2
Decorate 7
6
Binding 2
2: TypeVoid
2: TypeVoid
3: TypeFunction 2
3: TypeFunction 2
6: TypeInt 32 0
6: TypeInt 32 0
...
@@ -77,87 +77,89 @@ rayQuery-array-2d-dynamic.rgen
...
@@ -77,87 +77,89 @@ rayQuery-array-2d-dynamic.rgen
48: TypeAccelerationStructureKHR
48: TypeAccelerationStructureKHR
49: TypePointer UniformConstant 48
49: TypePointer UniformConstant 48
50(rtas): 49(ptr) Variable UniformConstant
50(rtas): 49(ptr) Variable UniformConstant
52: TypeInt 32 1
52: 6(int) Constant 16
53: 52(int) Constant 0
53: TypeInt 32 1
54: TypePointer Function 13(fvec3)
54: 53(int) Constant 0
57: 52(int) Constant 1
55: TypePointer Function 13(fvec3)
58: TypePointer Function 12(float)
58: 53(int) Constant 1
61: 52(int) Constant 2
59: TypePointer Function 12(float)
64: 52(int) Constant 3
62: 53(int) Constant 2
67: TypePointer Function 6(int)
65: 53(int) Constant 3
71(Ray): TypeStruct 13(fvec3) 12(float) 13(fvec3) 12(float)
68: TypePointer Function 6(int)
72: TypeRuntimeArray 71(Ray)
72(Ray): TypeStruct 13(fvec3) 12(float) 13(fvec3) 12(float)
73(Rays): TypeStruct 72
73: TypeRuntimeArray 72(Ray)
74: TypePointer Uniform 73(Rays)
74(Rays): TypeStruct 73
75: 74(ptr) Variable Uniform
75: TypePointer Uniform 74(Rays)
77: TypePointer Uniform 71(Ray)
76: 75(ptr) Variable Uniform
88: TypeArray 10 24
78: TypePointer Uniform 72(Ray)
89: TypePointer Function 88
89: TypeArray 10 24
117: TypePointer Private 52(int)
90: TypePointer Function 89
118(C): 117(ptr) Variable Private
110: 6(int) Constant 32
119: TypePointer Private 53(int)
120(C): 119(ptr) Variable Private
4(main): 2 Function None 3
4(main): 2 Function None 3
5: Label
5: Label
6
8(index): 67
(ptr) Variable Function
6
9(index): 68
(ptr) Variable Function
7
0
(ray): 15(ptr) Variable Function
7
1
(ray): 15(ptr) Variable Function
9
0(rayQuery): 89
(ptr) Variable Function
9
1(rayQuery): 90
(ptr) Variable Function
9
2
(param): 11(ptr) Variable Function
9
3
(param): 11(ptr) Variable Function
9
5
(param): 15(ptr) Variable Function
9
6
(param): 15(ptr) Variable Function
12
0
(param): 11(ptr) Variable Function
12
2
(param): 11(ptr) Variable Function
12
3
(param): 15(ptr) Variable Function
12
5
(param): 15(ptr) Variable Function
69
: 6(int) FunctionCall 8(launchIndex()
70
: 6(int) FunctionCall 8(launchIndex()
Store 6
8(index) 69
Store 6
9(index) 70
7
6: 6(int) Load 68
(index)
7
7: 6(int) Load 69
(index)
7
8: 77(ptr) AccessChain 75 53 76
7
9: 78(ptr) AccessChain 76 54 77
79: 71(Ray) Load 78
80: 72(Ray) Load 79
8
0: 13(fvec3) CompositeExtract 79
0
8
1: 13(fvec3) CompositeExtract 80
0
8
1: 54(ptr) AccessChain 70(ray) 53
8
2: 55(ptr) AccessChain 71(ray) 54
Store 8
1 80
Store 8
2 81
8
2: 12(float) CompositeExtract 79
1
8
3: 12(float) CompositeExtract 80
1
8
3: 58(ptr) AccessChain 70(ray) 57
8
4: 59(ptr) AccessChain 71(ray) 58
Store 8
3 82
Store 8
4 83
8
4: 13(fvec3) CompositeExtract 79
2
8
5: 13(fvec3) CompositeExtract 80
2
8
5: 54(ptr) AccessChain 70(ray) 61
8
6: 55(ptr) AccessChain 71(ray) 62
Store 8
5 84
Store 8
6 85
8
6: 12(float) CompositeExtract 79
3
8
7: 12(float) CompositeExtract 80
3
8
7: 58(ptr) AccessChain 70(ray) 64
8
8: 59(ptr) AccessChain 71(ray) 65
Store 8
7 86
Store 8
8 87
9
1: 6(int) Load 68
(index)
9
2: 6(int) Load 69
(index)
9
3: 11(ptr) AccessChain 90(rayQuery) 53
9
4: 11(ptr) AccessChain 91(rayQuery) 54
9
4: 10 Load 93
9
5: 10 Load 94
Store 9
2(param) 94
Store 9
3(param) 95
9
6: 77(ptr) AccessChain 75 53 91
9
7: 78(ptr) AccessChain 76 54 92
9
7: 71(Ray) Load 96
9
8: 72(Ray) Load 97
9
8: 13(fvec3) CompositeExtract 97
0
9
9: 13(fvec3) CompositeExtract 98
0
99: 54(ptr) AccessChain 95(param) 53
100: 55(ptr) AccessChain 96(param) 54
Store
99 98
Store
100 99
10
0: 12(float) CompositeExtract 97
1
10
1: 12(float) CompositeExtract 98
1
10
1: 58(ptr) AccessChain 95(param) 57
10
2: 59(ptr) AccessChain 96(param) 58
Store 10
1 100
Store 10
2 101
10
2: 13(fvec3) CompositeExtract 97
2
10
3: 13(fvec3) CompositeExtract 98
2
10
3: 54(ptr) AccessChain 95(param) 61
10
4: 55(ptr) AccessChain 96(param) 62
Store 10
3 102
Store 10
4 103
10
4: 12(float) CompositeExtract 97
3
10
5: 12(float) CompositeExtract 98
3
10
5: 58(ptr) AccessChain 95(param) 64
10
6: 59(ptr) AccessChain 96(param) 65
Store 10
5 104
Store 10
6 105
10
6: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 92(param) 95
(param)
10
7: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 93(param) 96
(param)
10
7: 11(ptr) AccessChain 90(rayQuery) 57
10
8: 11(ptr) AccessChain 91(rayQuery) 58
10
8
: 48 Load 50(rtas)
10
9
: 48 Load 50(rtas)
1
09: 54(ptr) AccessChain 70(ray) 53
1
11: 55(ptr) AccessChain 71(ray) 54
11
0: 13(fvec3) Load 109
11
2: 13(fvec3) Load 111
11
1: 58(ptr) AccessChain 70(ray) 57
11
3: 59(ptr) AccessChain 71(ray) 58
11
2: 12(float) Load 111
11
4: 12(float) Load 113
11
3: 54(ptr) AccessChain 70(ray) 61
11
5: 55(ptr) AccessChain 71(ray) 62
11
4: 13(fvec3) Load 113
11
6: 13(fvec3) Load 115
11
5: 58(ptr) AccessChain 70(ray) 64
11
7: 59(ptr) AccessChain 71(ray) 65
11
6: 12(float) Load 115
11
8: 12(float) Load 117
RayQueryInitializeKHR 10
7 108 33 24 110 112 114 116
RayQueryInitializeKHR 10
8 109 33 110 112 114 116 118
1
19: 52(int) Load 118
(C)
1
21: 53(int) Load 120
(C)
12
1: 11(ptr) AccessChain 90(rayQuery) 119
12
3: 11(ptr) AccessChain 91(rayQuery) 121
12
2: 10 Load 121
12
4: 10 Load 123
Store 12
0(param) 122
Store 12
2(param) 124
12
4: 14(Ray) Load 70
(ray)
12
6: 14(Ray) Load 71
(ray)
Store 12
3(param) 124
Store 12
5(param) 126
12
5: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 120(param) 123
(param)
12
7: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 122(param) 125
(param)
Return
Return
FunctionEnd
FunctionEnd
8(launchIndex(): 6(int) Function None 7
8(launchIndex(): 6(int) Function None 7
...
@@ -186,14 +188,14 @@ rayQuery-array-2d-dynamic.rgen
...
@@ -186,14 +188,14 @@ rayQuery-array-2d-dynamic.rgen
18(ray): 15(ptr) FunctionParameter
18(ray): 15(ptr) FunctionParameter
20: Label
20: Label
51: 48 Load 50(rtas)
51: 48 Load 50(rtas)
5
5: 54(ptr) AccessChain 18(ray) 53
5
6: 55(ptr) AccessChain 18(ray) 54
5
6: 13(fvec3) Load 55
5
7: 13(fvec3) Load 56
59: 58(ptr) AccessChain 18(ray) 57
60: 59(ptr) AccessChain 18(ray) 58
6
0: 12(float) Load 59
6
1: 12(float) Load 60
6
2: 54(ptr) AccessChain 18(ray) 61
6
3: 55(ptr) AccessChain 18(ray) 62
6
3: 13(fvec3) Load 62
6
4: 13(fvec3) Load 63
6
5: 58(ptr) AccessChain 18(ray) 64
6
6: 59(ptr) AccessChain 18(ray) 65
6
6: 12(float) Load 65
6
7: 12(float) Load 66
RayQueryInitializeKHR 17(rayQuery) 51 29
33 56 60 63 66
RayQueryInitializeKHR 17(rayQuery) 51 29
52 57 61 64 67
Return
Return
FunctionEnd
FunctionEnd
Test/baseResults/rayQuery-decls.rgen.out
View file @
7f689beb
rayQuery-decls.rgen
rayQuery-decls.rgen
// Module Version 10000
// Module Version 10000
// Generated by (magic number): 80008
// Generated by (magic number): 80008
// Id's are bound by 1
27
// Id's are bound by 1
30
Capability RayQueryProvisionalKHR
Capability RayQueryProvisionalKHR
Capability RayTracingNV
Capability RayTracingNV
...
@@ -40,8 +40,8 @@ rayQuery-decls.rgen
...
@@ -40,8 +40,8 @@ rayQuery-decls.rgen
Name 86 "rayQuery0a"
Name 86 "rayQuery0a"
Name 89 "rayQuery0c"
Name 89 "rayQuery0c"
Name 96 "rtas"
Name 96 "rtas"
Name 10
6
"rayQuery1c"
Name 10
7
"rayQuery1c"
Name 12
6
"g_rayQueryUnused"
Name 12
9
"g_rayQueryUnused"
Decorate 12(gl_LaunchIDNV) BuiltIn LaunchIdKHR
Decorate 12(gl_LaunchIDNV) BuiltIn LaunchIdKHR
Decorate 17(gl_LaunchSizeNV) BuiltIn LaunchSizeKHR
Decorate 17(gl_LaunchSizeNV) BuiltIn LaunchSizeKHR
MemberDecorate 45(Ray) 0 Offset 0
MemberDecorate 45(Ray) 0 Offset 0
...
@@ -99,7 +99,10 @@ rayQuery-decls.rgen
...
@@ -99,7 +99,10 @@ rayQuery-decls.rgen
94: TypeAccelerationStructureKHR
94: TypeAccelerationStructureKHR
95: TypePointer UniformConstant 94
95: TypePointer UniformConstant 94
96(rtas): 95(ptr) Variable UniformConstant
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
4(main): 2 Function None 3
5: Label
5: Label
38(index): 37(ptr) Variable Function
38(index): 37(ptr) Variable Function
...
@@ -108,8 +111,8 @@ rayQuery-decls.rgen
...
@@ -108,8 +111,8 @@ rayQuery-decls.rgen
81(rayQuery0b): 80(ptr) Variable Function
81(rayQuery0b): 80(ptr) Variable Function
86(rayQuery0a): 80(ptr) Variable Function
86(rayQuery0a): 80(ptr) Variable Function
89(rayQuery0c): 80(ptr) Variable Function
89(rayQuery0c): 80(ptr) Variable Function
10
6
(rayQuery1c): 80(ptr) Variable Function
10
7
(rayQuery1c): 80(ptr) Variable Function
12
6
(g_rayQueryUnused): 80(ptr) Variable Function
12
9
(g_rayQueryUnused): 80(ptr) Variable Function
39: 6(int) FunctionCall 8(launchIndex()
39: 6(int) FunctionCall 8(launchIndex()
Store 38(index) 39
Store 38(index) 39
52: 6(int) Load 38(index)
52: 6(int) Load 38(index)
...
@@ -143,35 +146,35 @@ rayQuery-decls.rgen
...
@@ -143,35 +146,35 @@ rayQuery-decls.rgen
93: 69 Load 92
93: 69 Load 92
Store 89(rayQuery0c) 93
Store 89(rayQuery0c) 93
97: 94 Load 96(rtas)
97: 94 Load 96(rtas)
9
8
: 57(ptr) AccessChain 44(ray) 51
9
9
: 57(ptr) AccessChain 44(ray) 51
99: 41(fvec3) Load 98
100: 41(fvec3) Load 99
10
0
: 61(ptr) AccessChain 44(ray) 60
10
1
: 61(ptr) AccessChain 44(ray) 60
10
1: 40(float) Load 100
10
2: 40(float) Load 101
10
2
: 57(ptr) AccessChain 44(ray) 64
10
3
: 57(ptr) AccessChain 44(ray) 64
10
3: 41(fvec3) Load 102
10
4: 41(fvec3) Load 103
10
4
: 61(ptr) AccessChain 44(ray) 67
10
5
: 61(ptr) AccessChain 44(ray) 67
10
5: 40(float) Load 104
10
6: 40(float) Load 105
RayQueryInitializeKHR 89(rayQuery0c) 97 22
13 99 101 103 105
RayQueryInitializeKHR 89(rayQuery0c) 97 22
98 100 102 104 106
10
7
: 94 Load 96(rtas)
10
8
: 94 Load 96(rtas)
1
08
: 57(ptr) AccessChain 44(ray) 51
1
10
: 57(ptr) AccessChain 44(ray) 51
1
09: 41(fvec3) Load 108
1
11: 41(fvec3) Load 110
11
0
: 61(ptr) AccessChain 44(ray) 60
11
2
: 61(ptr) AccessChain 44(ray) 60
11
1: 40(float) Load 110
11
3: 40(float) Load 112
11
2
: 57(ptr) AccessChain 44(ray) 64
11
4
: 57(ptr) AccessChain 44(ray) 64
11
3: 41(fvec3) Load 112
11
5: 41(fvec3) Load 114
11
4
: 61(ptr) AccessChain 44(ray) 67
11
6
: 61(ptr) AccessChain 44(ray) 67
11
5: 40(float) Load 114
11
7: 40(float) Load 116
RayQueryInitializeKHR 10
6(rayQuery1c) 107 22 22 109 111 113 115
RayQueryInitializeKHR 10
7(rayQuery1c) 108 22 109 111 113 115 117
11
6
: 94 Load 96(rtas)
11
8
: 94 Load 96(rtas)
1
18
: 57(ptr) AccessChain 44(ray) 51
1
21
: 57(ptr) AccessChain 44(ray) 51
1
19: 41(fvec3) Load 118
1
22: 41(fvec3) Load 121
12
0
: 61(ptr) AccessChain 44(ray) 60
12
3
: 61(ptr) AccessChain 44(ray) 60
12
1: 40(float) Load 120
12
4: 40(float) Load 123
12
2
: 57(ptr) AccessChain 44(ray) 64
12
5
: 57(ptr) AccessChain 44(ray) 64
12
3: 41(fvec3) Load 122
12
6: 41(fvec3) Load 125
12
4
: 61(ptr) AccessChain 44(ray) 67
12
7
: 61(ptr) AccessChain 44(ray) 67
12
5: 40(float) Load 124
12
8: 40(float) Load 127
RayQueryInitializeKHR 10
6(rayQuery1c) 116 117 70 119 121 123 125
RayQueryInitializeKHR 10
7(rayQuery1c) 118 119 120 122 124 126 128
Return
Return
FunctionEnd
FunctionEnd
8(launchIndex(): 6(int) Function None 7
8(launchIndex(): 6(int) Function None 7
...
...
Test/baseResults/rayQuery-initialize.rgen.out
View file @
7f689beb
rayQuery-initialize.rgen
rayQuery-initialize.rgen
// Module Version 10000
// Module Version 10000
// Generated by (magic number): 80008
// Generated by (magic number): 80008
// Id's are bound by 10
3
// Id's are bound by 10
5
Capability RayQueryProvisionalKHR
Capability RayQueryProvisionalKHR
Capability RayTracingNV
Capability RayTracingNV
...
@@ -26,32 +26,32 @@ rayQuery-initialize.rgen
...
@@ -26,32 +26,32 @@ rayQuery-initialize.rgen
Name 23 "gl_LaunchIDNV"
Name 23 "gl_LaunchIDNV"
Name 28 "gl_LaunchSizeNV"
Name 28 "gl_LaunchSizeNV"
Name 50 "rtas"
Name 50 "rtas"
Name 6
8
"index"
Name 6
9
"index"
Name 7
0
"ray"
Name 7
1
"ray"
Name 7
1
"Ray"
Name 7
2
"Ray"
MemberName 7
1
(Ray) 0 "pos"
MemberName 7
2
(Ray) 0 "pos"
MemberName 7
1
(Ray) 1 "tmin"
MemberName 7
2
(Ray) 1 "tmin"
MemberName 7
1
(Ray) 2 "dir"
MemberName 7
2
(Ray) 2 "dir"
MemberName 7
1
(Ray) 3 "tmax"
MemberName 7
2
(Ray) 3 "tmax"
Name 7
3
"Rays"
Name 7
4
"Rays"
MemberName 7
3
(Rays) 0 "rays"
MemberName 7
4
(Rays) 0 "rays"
Name 7
5
""
Name 7
6
""
Name 8
8
"rayQuery"
Name 8
9
"rayQuery"
Name
89
"param"
Name
90
"param"
Name 9
1
"param"
Name 9
2
"param"
Decorate 23(gl_LaunchIDNV) BuiltIn LaunchIdKHR
Decorate 23(gl_LaunchIDNV) BuiltIn LaunchIdKHR
Decorate 28(gl_LaunchSizeNV) BuiltIn LaunchSizeKHR
Decorate 28(gl_LaunchSizeNV) BuiltIn LaunchSizeKHR
Decorate 50(rtas) DescriptorSet 0
Decorate 50(rtas) DescriptorSet 0
Decorate 50(rtas) Binding 0
Decorate 50(rtas) Binding 0
MemberDecorate 7
1
(Ray) 0 Offset 0
MemberDecorate 7
2
(Ray) 0 Offset 0
MemberDecorate 7
1
(Ray) 1 Offset 12
MemberDecorate 7
2
(Ray) 1 Offset 12
MemberDecorate 7
1
(Ray) 2 Offset 16
MemberDecorate 7
2
(Ray) 2 Offset 16
MemberDecorate 7
1
(Ray) 3 Offset 28
MemberDecorate 7
2
(Ray) 3 Offset 28
Decorate 7
2
ArrayStride 32
Decorate 7
3
ArrayStride 32
MemberDecorate 7
3
(Rays) 0 Offset 0
MemberDecorate 7
4
(Rays) 0 Offset 0
Decorate 7
3
(Rays) BufferBlock
Decorate 7
4
(Rays) BufferBlock
Decorate 7
5
DescriptorSet 0
Decorate 7
6
DescriptorSet 0
Decorate 7
5
Binding 2
Decorate 7
6
Binding 2
2: TypeVoid
2: TypeVoid
3: TypeFunction 2
3: TypeFunction 2
6: TypeInt 32 0
6: TypeInt 32 0
...
@@ -74,59 +74,61 @@ rayQuery-initialize.rgen
...
@@ -74,59 +74,61 @@ rayQuery-initialize.rgen
48: TypeAccelerationStructureKHR
48: TypeAccelerationStructureKHR
49: TypePointer UniformConstant 48
49: TypePointer UniformConstant 48
50(rtas): 49(ptr) Variable UniformConstant
50(rtas): 49(ptr) Variable UniformConstant
52: TypeInt 32 1
52: 6(int) Constant 16
53: 52(int) Constant 0
53: TypeInt 32 1
54: TypePointer Function 13(fvec3)
54: 53(int) Constant 0
57: 52(int) Constant 1
55: TypePointer Function 13(fvec3)
58: TypePointer Function 12(float)
58: 53(int) Constant 1
61: 52(int) Constant 2
59: TypePointer Function 12(float)
64: 52(int) Constant 3
62: 53(int) Constant 2
67: TypePointer Function 6(int)
65: 53(int) Constant 3
71(Ray): TypeStruct 13(fvec3) 12(float) 13(fvec3) 12(float)
68: TypePointer Function 6(int)
72: TypeRuntimeArray 71(Ray)
72(Ray): TypeStruct 13(fvec3) 12(float) 13(fvec3) 12(float)
73(Rays): TypeStruct 72
73: TypeRuntimeArray 72(Ray)
74: TypePointer Uniform 73(Rays)
74(Rays): TypeStruct 73
75: 74(ptr) Variable Uniform
75: TypePointer Uniform 74(Rays)
77: TypePointer Uniform 71(Ray)
76: 75(ptr) Variable Uniform
78: TypePointer Uniform 72(Ray)
96: 6(int) Constant 32
4(main): 2 Function None 3
4(main): 2 Function None 3
5: Label
5: Label
6
8(index): 67
(ptr) Variable Function
6
9(index): 68
(ptr) Variable Function
7
0
(ray): 15(ptr) Variable Function
7
1
(ray): 15(ptr) Variable Function
8
8
(rayQuery): 11(ptr) Variable Function
8
9
(rayQuery): 11(ptr) Variable Function
89
(param): 11(ptr) Variable Function
90
(param): 11(ptr) Variable Function
9
1
(param): 15(ptr) Variable Function
9
2
(param): 15(ptr) Variable Function
69
: 6(int) FunctionCall 8(launchIndex()
70
: 6(int) FunctionCall 8(launchIndex()
Store 6
8(index) 69
Store 6
9(index) 70
7
6: 6(int) Load 68
(index)
7
7: 6(int) Load 69
(index)
7
8: 77(ptr) AccessChain 75 53 76
7
9: 78(ptr) AccessChain 76 54 77
79: 71(Ray) Load 78
80: 72(Ray) Load 79
8
0: 13(fvec3) CompositeExtract 79
0
8
1: 13(fvec3) CompositeExtract 80
0
8
1: 54(ptr) AccessChain 70(ray) 53
8
2: 55(ptr) AccessChain 71(ray) 54
Store 8
1 80
Store 8
2 81
8
2: 12(float) CompositeExtract 79
1
8
3: 12(float) CompositeExtract 80
1
8
3: 58(ptr) AccessChain 70(ray) 57
8
4: 59(ptr) AccessChain 71(ray) 58
Store 8
3 82
Store 8
4 83
8
4: 13(fvec3) CompositeExtract 79
2
8
5: 13(fvec3) CompositeExtract 80
2
8
5: 54(ptr) AccessChain 70(ray) 61
8
6: 55(ptr) AccessChain 71(ray) 62
Store 8
5 84
Store 8
6 85
8
6: 12(float) CompositeExtract 79
3
8
7: 12(float) CompositeExtract 80
3
8
7: 58(ptr) AccessChain 70(ray) 64
8
8: 59(ptr) AccessChain 71(ray) 65
Store 8
7 86
Store 8
8 87
9
0: 10 Load 88
(rayQuery)
9
1: 10 Load 89
(rayQuery)
Store
89(param) 90
Store
90(param) 91
9
2: 14(Ray) Load 70
(ray)
9
3: 14(Ray) Load 71
(ray)
Store 9
1(param) 92
Store 9
2(param) 93
9
3: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 89(param) 91
(param)
9
4: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 90(param) 92
(param)
9
4
: 48 Load 50(rtas)
9
5
: 48 Load 50(rtas)
9
5: 54(ptr) AccessChain 70(ray) 53
9
7: 55(ptr) AccessChain 71(ray) 54
9
6: 13(fvec3) Load 95
9
8: 13(fvec3) Load 97
9
7: 58(ptr) AccessChain 70(ray) 57
9
9: 59(ptr) AccessChain 71(ray) 58
98: 12(float) Load 97
100: 12(float) Load 99
99: 54(ptr) AccessChain 70(ray) 61
101: 55(ptr) AccessChain 71(ray) 62
10
0: 13(fvec3) Load 99
10
2: 13(fvec3) Load 101
10
1: 58(ptr) AccessChain 70(ray) 64
10
3: 59(ptr) AccessChain 71(ray) 65
10
2: 12(float) Load 101
10
4: 12(float) Load 103
RayQueryInitializeKHR 8
8(rayQuery) 94 33 24 96 98 100 102
RayQueryInitializeKHR 8
9(rayQuery) 95 33 96 98 100 102 104
Return
Return
FunctionEnd
FunctionEnd
8(launchIndex(): 6(int) Function None 7
8(launchIndex(): 6(int) Function None 7
...
@@ -155,14 +157,14 @@ rayQuery-initialize.rgen
...
@@ -155,14 +157,14 @@ rayQuery-initialize.rgen
18(ray): 15(ptr) FunctionParameter
18(ray): 15(ptr) FunctionParameter
20: Label
20: Label
51: 48 Load 50(rtas)
51: 48 Load 50(rtas)
5
5: 54(ptr) AccessChain 18(ray) 53
5
6: 55(ptr) AccessChain 18(ray) 54
5
6: 13(fvec3) Load 55
5
7: 13(fvec3) Load 56
59: 58(ptr) AccessChain 18(ray) 57
60: 59(ptr) AccessChain 18(ray) 58
6
0: 12(float) Load 59
6
1: 12(float) Load 60
6
2: 54(ptr) AccessChain 18(ray) 61
6
3: 55(ptr) AccessChain 18(ray) 62
6
3: 13(fvec3) Load 62
6
4: 13(fvec3) Load 63
6
5: 58(ptr) AccessChain 18(ray) 64
6
6: 59(ptr) AccessChain 18(ray) 65
6
6: 12(float) Load 65
6
7: 12(float) Load 66
RayQueryInitializeKHR 17(rayQuery) 51 29
33 56 60 63 66
RayQueryInitializeKHR 17(rayQuery) 51 29
52 57 61 64 67
Return
Return
FunctionEnd
FunctionEnd
Test/baseResults/rayQuery-no-cse.rgen.out
View file @
7f689beb
rayQuery-no-cse.rgen
rayQuery-no-cse.rgen
// Module Version 10000
// Module Version 10000
// Generated by (magic number): 80008
// Generated by (magic number): 80008
// Id's are bound by 1
09
// Id's are bound by 1
11
Capability RayQueryProvisionalKHR
Capability RayQueryProvisionalKHR
Capability RayTracingNV
Capability RayTracingNV
...
@@ -26,35 +26,35 @@ rayQuery-no-cse.rgen
...
@@ -26,35 +26,35 @@ rayQuery-no-cse.rgen
Name 23 "gl_LaunchIDNV"
Name 23 "gl_LaunchIDNV"
Name 28 "gl_LaunchSizeNV"
Name 28 "gl_LaunchSizeNV"
Name 50 "rtas"
Name 50 "rtas"
Name 68 "index"
Name 69 "index"
Name 70 "ray"
Name 71 "ray"
Name 71 "Ray"
Name 72 "Ray"
MemberName 71(Ray) 0 "pos"
MemberName 72(Ray) 0 "pos"
MemberName 71(Ray) 1 "tmin"
MemberName 72(Ray) 1 "tmin"
MemberName 71(Ray) 2 "dir"
MemberName 72(Ray) 2 "dir"
MemberName 71(Ray) 3 "tmax"
MemberName 72(Ray) 3 "tmax"
Name 73 "Rays"
Name 74 "Rays"
MemberName 73(Rays) 0 "rays"
MemberName 74(Rays) 0 "rays"
Name 75 ""
Name 76 ""
Name 88 "rayQuery1"
Name 89 "rayQuery1"
Name 89 "param"
Name 90 "param"
Name 91 "param"
Name 92 "param"
Name 103 "rayQuery2"
Name 105 "rayQuery2"
Name 104 "param"
Name 106 "param"
Name 106 "param"
Name 108 "param"
Decorate 23(gl_LaunchIDNV) BuiltIn LaunchIdKHR
Decorate 23(gl_LaunchIDNV) BuiltIn LaunchIdKHR
Decorate 28(gl_LaunchSizeNV) BuiltIn LaunchSizeKHR
Decorate 28(gl_LaunchSizeNV) BuiltIn LaunchSizeKHR
Decorate 50(rtas) DescriptorSet 0
Decorate 50(rtas) DescriptorSet 0
Decorate 50(rtas) Binding 0
Decorate 50(rtas) Binding 0
MemberDecorate 7
1
(Ray) 0 Offset 0
MemberDecorate 7
2
(Ray) 0 Offset 0
MemberDecorate 7
1
(Ray) 1 Offset 12
MemberDecorate 7
2
(Ray) 1 Offset 12
MemberDecorate 7
1
(Ray) 2 Offset 16
MemberDecorate 7
2
(Ray) 2 Offset 16
MemberDecorate 7
1
(Ray) 3 Offset 28
MemberDecorate 7
2
(Ray) 3 Offset 28
Decorate 7
2
ArrayStride 32
Decorate 7
3
ArrayStride 32
MemberDecorate 7
3
(Rays) 0 Offset 0
MemberDecorate 7
4
(Rays) 0 Offset 0
Decorate 7
3
(Rays) BufferBlock
Decorate 7
4
(Rays) BufferBlock
Decorate 7
5
DescriptorSet 0
Decorate 7
6
DescriptorSet 0
Decorate 7
5
Binding 2
Decorate 7
6
Binding 2
2: TypeVoid
2: TypeVoid
3: TypeFunction 2
3: TypeFunction 2
6: TypeInt 32 0
6: TypeInt 32 0
...
@@ -77,67 +77,69 @@ rayQuery-no-cse.rgen
...
@@ -77,67 +77,69 @@ rayQuery-no-cse.rgen
48: TypeAccelerationStructureKHR
48: TypeAccelerationStructureKHR
49: TypePointer UniformConstant 48
49: TypePointer UniformConstant 48
50(rtas): 49(ptr) Variable UniformConstant
50(rtas): 49(ptr) Variable UniformConstant
52: TypeInt 32 1
52: 6(int) Constant 16
53: 52(int) Constant 0
53: TypeInt 32 1
54: TypePointer Function 13(fvec3)
54: 53(int) Constant 0
57: 52(int) Constant 1
55: TypePointer Function 13(fvec3)
58: TypePointer Function 12(float)
58: 53(int) Constant 1
61: 52(int) Constant 2
59: TypePointer Function 12(float)
64: 52(int) Constant 3
62: 53(int) Constant 2
67: TypePointer Function 6(int)
65: 53(int) Constant 3
71(Ray): TypeStruct 13(fvec3) 12(float) 13(fvec3) 12(float)
68: TypePointer Function 6(int)
72: TypeRuntimeArray 71(Ray)
72(Ray): TypeStruct 13(fvec3) 12(float) 13(fvec3) 12(float)
73(Rays): TypeStruct 72
73: TypeRuntimeArray 72(Ray)
74: TypePointer Uniform 73(Rays)
74(Rays): TypeStruct 73
75: 74(ptr) Variable Uniform
75: TypePointer Uniform 74(Rays)
77: TypePointer Uniform 71(Ray)
76: 75(ptr) Variable Uniform
78: TypePointer Uniform 72(Ray)
96: 6(int) Constant 32
4(main): 2 Function None 3
4(main): 2 Function None 3
5: Label
5: Label
68(index): 67(ptr) Variable Function
69(index): 68(ptr) Variable Function
70(ray): 15(ptr) Variable Function
71(ray): 15(ptr) Variable Function
88(rayQuery1): 11(ptr) Variable Function
89(rayQuery1): 11(ptr) Variable Function
89(param): 11(ptr) Variable Function
90(param): 11(ptr) Variable Function
91(param): 15(ptr) Variable Function
92(param): 15(ptr) Variable Function
103(rayQuery2): 11(ptr) Variable Function
105(rayQuery2): 11(ptr) Variable Function
104(param): 11(ptr) Variable Function
106(param): 11(ptr) Variable Function
106(param): 15(ptr) Variable Function
108(param): 15(ptr) Variable Function
69: 6(int) FunctionCall 8(launchIndex()
70: 6(int) FunctionCall 8(launchIndex()
Store 68(index) 69
Store 69(index) 70
76: 6(int) Load 68(index)
77: 6(int) Load 69(index)
78: 77(ptr) AccessChain 75 53 76
79: 78(ptr) AccessChain 76 54 77
79: 71(Ray) Load 78
80: 72(Ray) Load 79
80: 13(fvec3) CompositeExtract 79 0
81: 13(fvec3) CompositeExtract 80 0
81: 54(ptr) AccessChain 70(ray) 53
82: 55(ptr) AccessChain 71(ray) 54
Store 81 80
Store 82 81
82: 12(float) CompositeExtract 79 1
83: 12(float) CompositeExtract 80 1
83: 58(ptr) AccessChain 70(ray) 57
84: 59(ptr) AccessChain 71(ray) 58
Store 83 82
Store 84 83
84: 13(fvec3) CompositeExtract 79 2
85: 13(fvec3) CompositeExtract 80 2
85: 54(ptr) AccessChain 70(ray) 61
86: 55(ptr) AccessChain 71(ray) 62
Store 85 84
Store 86 85
86: 12(float) CompositeExtract 79 3
87: 12(float) CompositeExtract 80 3
87: 58(ptr) AccessChain 70(ray) 64
88: 59(ptr) AccessChain 71(ray) 65
Store 87 86
Store 88 87
90: 10 Load 88(rayQuery1)
91: 10 Load 89(rayQuery1)
Store 89(param) 90
Store 90(param) 91
92: 14(Ray) Load 70(ray)
93: 14(Ray) Load 71(ray)
Store 91(param) 92
Store 92(param) 93
93: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 89(param) 91(param)
94: 2 FunctionCall 19(doInitialize(rq1;struct-Ray-vf3-f1-vf3-f11;) 90(param) 92(param)
94: 48 Load 50(rtas)
95: 48 Load 50(rtas)
95: 54(ptr) AccessChain 70(ray) 53
97: 55(ptr) AccessChain 71(ray) 54
96: 13(fvec3) Load 95
98: 13(fvec3) Load 97
97: 58(ptr) AccessChain 70(ray) 57
99: 59(ptr) AccessChain 71(ray) 58
98: 12(float) Load 97
100: 12(float) Load 99
99: 54(ptr) AccessChain 70(ray) 61
101: 55(ptr) AccessChain 71(ray) 62
100: 13(fvec3) Load 99
102: 13(fvec3) Load 101
101: 58(ptr) AccessChain 70(ray) 64
103: 59(ptr) AccessChain 71(ray) 65
102: 12(float) Load 101
104: 12(float) Load 103
RayQueryInitializeKHR 88(rayQuery1) 94 33 24 96 98 100 102
RayQueryInitializeKHR 89(rayQuery1) 95 33 96 98 100 102 104
105: 10 Load 103(rayQuery2)
107: 10 Load 105(rayQuery2)
Store 104(param) 105
107: 14(Ray) Load 70(ray)
Store 106(param) 107
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
Return
FunctionEnd
FunctionEnd
8(launchIndex(): 6(int) Function None 7
8(launchIndex(): 6(int) Function None 7
...
@@ -166,14 +168,14 @@ rayQuery-no-cse.rgen
...
@@ -166,14 +168,14 @@ rayQuery-no-cse.rgen
18(ray): 15(ptr) FunctionParameter
18(ray): 15(ptr) FunctionParameter
20: Label
20: Label
51: 48 Load 50(rtas)
51: 48 Load 50(rtas)
5
5: 54(ptr) AccessChain 18(ray) 53
5
6: 55(ptr) AccessChain 18(ray) 54
5
6: 13(fvec3) Load 55
5
7: 13(fvec3) Load 56
59: 58(ptr) AccessChain 18(ray) 57
60: 59(ptr) AccessChain 18(ray) 58
6
0: 12(float) Load 59
6
1: 12(float) Load 60
6
2: 54(ptr) AccessChain 18(ray) 61
6
3: 55(ptr) AccessChain 18(ray) 62
6
3: 13(fvec3) Load 62
6
4: 13(fvec3) Load 63
6
5: 58(ptr) AccessChain 18(ray) 64
6
6: 59(ptr) AccessChain 18(ray) 65
6
6: 12(float) Load 65
6
7: 12(float) Load 66
RayQueryInitializeKHR 17(rayQuery) 51 29
33 56 60 63 66
RayQueryInitializeKHR 17(rayQuery) 51 29
52 57 61 64 67
Return
Return
FunctionEnd
FunctionEnd
Test/rayQuery-allOps.Error.rgen
View file @
7f689beb
...
@@ -39,7 +39,7 @@ void main()
...
@@ -39,7 +39,7 @@ void main()
{
{
Ray ray = makeRayDesc();
Ray ray = makeRayDesc();
rayQueryEXT rayQuery;
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;
mat4x3 _mat4x3;
mat3x4 _mat3x4;
mat3x4 _mat3x4;
...
...
Test/rayQuery-allOps.comp
View file @
7f689beb
...
@@ -37,9 +37,9 @@ Ray makeRayDesc()
...
@@ -37,9 +37,9 @@ Ray makeRayDesc()
void main()
void main()
{
{
Ray ray
;//
= makeRayDesc();
Ray ray = makeRayDesc();
rayQueryEXT rayQuery;
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;
mat4x3 _mat4x3;
mat3x4 _mat3x4;
mat3x4 _mat3x4;
...
...
Test/rayQuery-allOps.frag
View file @
7f689beb
...
@@ -37,9 +37,9 @@ Ray makeRayDesc()
...
@@ -37,9 +37,9 @@ Ray makeRayDesc()
void
main
()
void
main
()
{
{
Ray
ray
;
//
= makeRayDesc();
Ray
ray
=
makeRayDesc
();
rayQueryEXT
rayQuery
;
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
;
mat4x3
_mat4x3
;
mat3x4
_mat3x4
;
mat3x4
_mat3x4
;
...
...
Test/rayQuery-allOps.rgen
View file @
7f689beb
...
@@ -37,9 +37,9 @@ Ray makeRayDesc()
...
@@ -37,9 +37,9 @@ Ray makeRayDesc()
void main()
void main()
{
{
Ray ray
;//
= makeRayDesc();
Ray ray = makeRayDesc();
rayQueryEXT rayQuery;
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;
mat4x3 _mat4x3;
mat3x4 _mat3x4;
mat3x4 _mat3x4;
...
...
Test/rayQuery-array-2d-dynamic.rgen
View file @
7f689beb
...
@@ -20,7 +20,7 @@ uint launchIndex()
...
@@ -20,7 +20,7 @@ uint launchIndex()
void doInitialize(rayQueryEXT rayQuery, Ray ray)
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;
int C;
...
@@ -31,6 +31,6 @@ void main()
...
@@ -31,6 +31,6 @@ void main()
Ray ray = rays[index];
Ray ray = rays[index];
rayQueryEXT rayQuery[2];
rayQueryEXT rayQuery[2];
doInitialize(rayQuery[0], rays[index]);
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);
doInitialize(rayQuery[C], ray);
}
}
Test/rayQuery-committed.Error.rgen
View file @
7f689beb
...
@@ -39,7 +39,7 @@ void main()
...
@@ -39,7 +39,7 @@ void main()
bool committed_true = true;
bool committed_true = true;
bool committed_false = false;
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))
while (rayQueryProceedEXT(rayQuery))
{
{
mat4x3 mat_o2w;
mat4x3 mat_o2w;
...
...
Test/rayQuery-decls.rgen
View file @
7f689beb
...
@@ -41,13 +41,13 @@ void main()
...
@@ -41,13 +41,13 @@ void main()
rayQueryEXT rayQuery0c = g_rayQueryArray[idx];
rayQueryEXT rayQuery0c = g_rayQueryArray[idx];
// rayQuery0a is the one actually used here
// 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
// AllocateRayQuery occurs here, rather than next to allocas
// Should not be extray allocate, since above should allocate and copy
// Should not be extray allocate, since above should allocate and copy
rayQueryEXT rayQuery1c;
rayQueryEXT rayQuery1c;
// update the rayFlags as RAY_FLAG_FORCE_OPAQUE
// 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);
}
}
Test/rayQuery-initialize.rgen
View file @
7f689beb
...
@@ -20,7 +20,7 @@ uint launchIndex()
...
@@ -20,7 +20,7 @@ uint launchIndex()
void doInitialize(rayQueryEXT rayQuery, Ray ray)
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()
void main()
...
@@ -29,5 +29,5 @@ void main()
...
@@ -29,5 +29,5 @@ void main()
Ray ray = rays[index];
Ray ray = rays[index];
rayQueryEXT rayQuery;
rayQueryEXT rayQuery;
doInitialize(rayQuery, ray);
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);
}
}
Test/rayQuery-no-cse.rgen
View file @
7f689beb
...
@@ -20,7 +20,7 @@ uint launchIndex()
...
@@ -20,7 +20,7 @@ uint launchIndex()
void doInitialize(rayQueryEXT rayQuery, Ray ray)
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()
void main()
...
@@ -30,6 +30,6 @@ void main()
...
@@ -30,6 +30,6 @@ void main()
rayQueryEXT rayQuery1;
rayQueryEXT rayQuery1;
rayQueryEXT rayQuery2;
rayQueryEXT rayQuery2;
doInitialize(rayQuery1, ray);
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);
doInitialize(rayQuery2, ray);
}
}
glslang/MachineIndependent/Initialize.cpp
View file @
7f689beb
...
@@ -5573,24 +5573,14 @@ void TBuiltIns::initialize(int version, EProfile profile, const SpvVersion& spvV
...
@@ -5573,24 +5573,14 @@ void TBuiltIns::initialize(int version, EProfile profile, const SpvVersion& spvV
commonBuiltins
.
append
(
constRayQueryIntersection
);
commonBuiltins
.
append
(
constRayQueryIntersection
);
commonBuiltins
.
append
(
constRayFlags
);
stageBuiltins
[
EShLangRayGen
].
append
(
rayGenDecls
);
stageBuiltins
[
EShLangRayGen
].
append
(
rayGenDecls
);
stageBuiltins
[
EShLangRayGen
].
append
(
constRayFlags
);
stageBuiltins
[
EShLangIntersect
].
append
(
intersectDecls
);
stageBuiltins
[
EShLangIntersect
].
append
(
intersectDecls
);
stageBuiltins
[
EShLangIntersect
].
append
(
constRayFlags
);
stageBuiltins
[
EShLangAnyHit
].
append
(
hitDecls
);
stageBuiltins
[
EShLangAnyHit
].
append
(
hitDecls
);
stageBuiltins
[
EShLangAnyHit
].
append
(
constRayFlags
);
stageBuiltins
[
EShLangClosestHit
].
append
(
hitDecls
);
stageBuiltins
[
EShLangClosestHit
].
append
(
hitDecls
);
stageBuiltins
[
EShLangClosestHit
].
append
(
constRayFlags
);
stageBuiltins
[
EShLangMiss
].
append
(
missDecls
);
stageBuiltins
[
EShLangMiss
].
append
(
missDecls
);
stageBuiltins
[
EShLangMiss
].
append
(
constRayFlags
);
stageBuiltins
[
EShLangCallable
].
append
(
callableDecls
);
stageBuiltins
[
EShLangCallable
].
append
(
callableDecls
);
stageBuiltins
[
EShLangCallable
].
append
(
constRayFlags
);
}
}
if
((
profile
!=
EEsProfile
&&
version
>=
140
))
{
if
((
profile
!=
EEsProfile
&&
version
>=
140
))
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment