SPV: Implement Vulkan 1.1 features and extensions.
This commit is contained in:
288
Test/baseResults/spv.subgroupVote.comp.out
Normal file
288
Test/baseResults/spv.subgroupVote.comp.out
Normal file
@@ -0,0 +1,288 @@
|
||||
spv.subgroupVote.comp
|
||||
// Module Version 10300
|
||||
// Generated by (magic number): 80005
|
||||
// Id's are bound by 216
|
||||
|
||||
Capability Shader
|
||||
Capability Float64
|
||||
Capability GroupNonUniform
|
||||
Capability GroupNonUniformVote
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint GLCompute 4 "main" 10 12
|
||||
ExecutionMode 4 LocalSize 8 8 1
|
||||
Source GLSL 450
|
||||
SourceExtension "GL_KHR_shader_subgroup_basic"
|
||||
SourceExtension "GL_KHR_shader_subgroup_vote"
|
||||
Name 4 "main"
|
||||
Name 8 "invocation"
|
||||
Name 10 "gl_SubgroupInvocationID"
|
||||
Name 12 "gl_SubgroupSize"
|
||||
Name 24 "Buffers"
|
||||
MemberName 24(Buffers) 0 "f4"
|
||||
MemberName 24(Buffers) 1 "i4"
|
||||
MemberName 24(Buffers) 2 "u4"
|
||||
MemberName 24(Buffers) 3 "d4"
|
||||
MemberName 24(Buffers) 4 "r"
|
||||
Name 27 "data"
|
||||
Decorate 10(gl_SubgroupInvocationID) RelaxedPrecision
|
||||
Decorate 10(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
|
||||
Decorate 11 RelaxedPrecision
|
||||
Decorate 12(gl_SubgroupSize) RelaxedPrecision
|
||||
Decorate 12(gl_SubgroupSize) BuiltIn SubgroupSize
|
||||
Decorate 13 RelaxedPrecision
|
||||
Decorate 14 RelaxedPrecision
|
||||
Decorate 16 RelaxedPrecision
|
||||
MemberDecorate 24(Buffers) 0 Offset 0
|
||||
MemberDecorate 24(Buffers) 1 Offset 16
|
||||
MemberDecorate 24(Buffers) 2 Offset 32
|
||||
MemberDecorate 24(Buffers) 3 Offset 64
|
||||
MemberDecorate 24(Buffers) 4 Offset 96
|
||||
Decorate 24(Buffers) BufferBlock
|
||||
Decorate 27(data) DescriptorSet 0
|
||||
Decorate 27(data) Binding 0
|
||||
Decorate 215 BuiltIn WorkgroupSize
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 0
|
||||
7: TypePointer Function 6(int)
|
||||
9: TypePointer Input 6(int)
|
||||
10(gl_SubgroupInvocationID): 9(ptr) Variable Input
|
||||
12(gl_SubgroupSize): 9(ptr) Variable Input
|
||||
15: 6(int) Constant 4
|
||||
17: TypeFloat 32
|
||||
18: TypeVector 17(float) 4
|
||||
19: TypeInt 32 1
|
||||
20: TypeVector 19(int) 4
|
||||
21: TypeVector 6(int) 4
|
||||
22: TypeFloat 64
|
||||
23: TypeVector 22(float) 4
|
||||
24(Buffers): TypeStruct 18(fvec4) 20(ivec4) 21(ivec4) 23(fvec4) 19(int)
|
||||
25: TypeArray 24(Buffers) 15
|
||||
26: TypePointer Uniform 25
|
||||
27(data): 26(ptr) Variable Uniform
|
||||
29: 19(int) Constant 4
|
||||
30: TypePointer Uniform 19(int)
|
||||
33: 19(int) Constant 0
|
||||
34: TypeBool
|
||||
36: 6(int) Constant 3
|
||||
41: 6(int) Constant 0
|
||||
42: TypePointer Uniform 17(float)
|
||||
46: 19(int) Constant 1
|
||||
50: TypeVector 17(float) 2
|
||||
51: TypePointer Uniform 18(fvec4)
|
||||
59: 19(int) Constant 2
|
||||
60: TypeVector 17(float) 3
|
||||
68: 19(int) Constant 3
|
||||
81: TypeVector 19(int) 2
|
||||
82: TypePointer Uniform 20(ivec4)
|
||||
90: TypeVector 19(int) 3
|
||||
104: TypePointer Uniform 6(int)
|
||||
111: TypeVector 6(int) 2
|
||||
112: TypePointer Uniform 21(ivec4)
|
||||
120: TypeVector 6(int) 3
|
||||
142: TypePointer Uniform 22(float)
|
||||
149: TypeVector 22(float) 2
|
||||
150: TypePointer Uniform 23(fvec4)
|
||||
158: TypeVector 22(float) 3
|
||||
182: 81(ivec2) ConstantComposite 33 33
|
||||
183: TypeVector 34(bool) 2
|
||||
194: 90(ivec3) ConstantComposite 33 33 33
|
||||
195: TypeVector 34(bool) 3
|
||||
205: 20(ivec4) ConstantComposite 33 33 33 33
|
||||
206: TypeVector 34(bool) 4
|
||||
213: 6(int) Constant 8
|
||||
214: 6(int) Constant 1
|
||||
215: 120(ivec3) ConstantComposite 213 213 214
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(invocation): 7(ptr) Variable Function
|
||||
11: 6(int) Load 10(gl_SubgroupInvocationID)
|
||||
13: 6(int) Load 12(gl_SubgroupSize)
|
||||
14: 6(int) IAdd 11 13
|
||||
16: 6(int) UMod 14 15
|
||||
Store 8(invocation) 16
|
||||
28: 6(int) Load 8(invocation)
|
||||
31: 30(ptr) AccessChain 27(data) 28 29
|
||||
32: 19(int) Load 31
|
||||
35: 34(bool) SLessThan 32 33
|
||||
37: 34(bool) GroupNonUniformAll 36 35
|
||||
SelectionMerge 39 None
|
||||
BranchConditional 37 38 133
|
||||
38: Label
|
||||
40: 6(int) Load 8(invocation)
|
||||
43: 42(ptr) AccessChain 27(data) 33 33 41
|
||||
44: 17(float) Load 43
|
||||
45: 34(bool) GroupNonUniformAllEqual 36 44
|
||||
47: 19(int) Select 45 46 33
|
||||
48: 30(ptr) AccessChain 27(data) 40 29
|
||||
Store 48 47
|
||||
49: 6(int) Load 8(invocation)
|
||||
52: 51(ptr) AccessChain 27(data) 46 33
|
||||
53: 18(fvec4) Load 52
|
||||
54: 50(fvec2) VectorShuffle 53 53 0 1
|
||||
55: 34(bool) GroupNonUniformAllEqual 36 54
|
||||
56: 19(int) Select 55 46 33
|
||||
57: 30(ptr) AccessChain 27(data) 49 29
|
||||
Store 57 56
|
||||
58: 6(int) Load 8(invocation)
|
||||
61: 51(ptr) AccessChain 27(data) 59 33
|
||||
62: 18(fvec4) Load 61
|
||||
63: 60(fvec3) VectorShuffle 62 62 0 1 2
|
||||
64: 34(bool) GroupNonUniformAllEqual 36 63
|
||||
65: 19(int) Select 64 46 33
|
||||
66: 30(ptr) AccessChain 27(data) 58 29
|
||||
Store 66 65
|
||||
67: 6(int) Load 8(invocation)
|
||||
69: 51(ptr) AccessChain 27(data) 68 33
|
||||
70: 18(fvec4) Load 69
|
||||
71: 34(bool) GroupNonUniformAllEqual 36 70
|
||||
72: 19(int) Select 71 46 33
|
||||
73: 30(ptr) AccessChain 27(data) 67 29
|
||||
Store 73 72
|
||||
74: 6(int) Load 8(invocation)
|
||||
75: 30(ptr) AccessChain 27(data) 33 46 41
|
||||
76: 19(int) Load 75
|
||||
77: 34(bool) GroupNonUniformAllEqual 36 76
|
||||
78: 19(int) Select 77 46 33
|
||||
79: 30(ptr) AccessChain 27(data) 74 29
|
||||
Store 79 78
|
||||
80: 6(int) Load 8(invocation)
|
||||
83: 82(ptr) AccessChain 27(data) 46 46
|
||||
84: 20(ivec4) Load 83
|
||||
85: 81(ivec2) VectorShuffle 84 84 0 1
|
||||
86: 34(bool) GroupNonUniformAllEqual 36 85
|
||||
87: 19(int) Select 86 46 33
|
||||
88: 30(ptr) AccessChain 27(data) 80 29
|
||||
Store 88 87
|
||||
89: 6(int) Load 8(invocation)
|
||||
91: 82(ptr) AccessChain 27(data) 59 46
|
||||
92: 20(ivec4) Load 91
|
||||
93: 90(ivec3) VectorShuffle 92 92 0 1 2
|
||||
94: 34(bool) GroupNonUniformAllEqual 36 93
|
||||
95: 19(int) Select 94 46 33
|
||||
96: 30(ptr) AccessChain 27(data) 89 29
|
||||
Store 96 95
|
||||
97: 6(int) Load 8(invocation)
|
||||
98: 82(ptr) AccessChain 27(data) 68 46
|
||||
99: 20(ivec4) Load 98
|
||||
100: 34(bool) GroupNonUniformAllEqual 36 99
|
||||
101: 19(int) Select 100 46 33
|
||||
102: 30(ptr) AccessChain 27(data) 97 29
|
||||
Store 102 101
|
||||
103: 6(int) Load 8(invocation)
|
||||
105: 104(ptr) AccessChain 27(data) 33 59 41
|
||||
106: 6(int) Load 105
|
||||
107: 34(bool) GroupNonUniformAllEqual 36 106
|
||||
108: 19(int) Select 107 46 33
|
||||
109: 30(ptr) AccessChain 27(data) 103 29
|
||||
Store 109 108
|
||||
110: 6(int) Load 8(invocation)
|
||||
113: 112(ptr) AccessChain 27(data) 46 59
|
||||
114: 21(ivec4) Load 113
|
||||
115: 111(ivec2) VectorShuffle 114 114 0 1
|
||||
116: 34(bool) GroupNonUniformAllEqual 36 115
|
||||
117: 19(int) Select 116 46 33
|
||||
118: 30(ptr) AccessChain 27(data) 110 29
|
||||
Store 118 117
|
||||
119: 6(int) Load 8(invocation)
|
||||
121: 112(ptr) AccessChain 27(data) 59 59
|
||||
122: 21(ivec4) Load 121
|
||||
123: 120(ivec3) VectorShuffle 122 122 0 1 2
|
||||
124: 34(bool) GroupNonUniformAllEqual 36 123
|
||||
125: 19(int) Select 124 46 33
|
||||
126: 30(ptr) AccessChain 27(data) 119 29
|
||||
Store 126 125
|
||||
127: 6(int) Load 8(invocation)
|
||||
128: 112(ptr) AccessChain 27(data) 68 59
|
||||
129: 21(ivec4) Load 128
|
||||
130: 34(bool) GroupNonUniformAllEqual 36 129
|
||||
131: 19(int) Select 130 46 33
|
||||
132: 30(ptr) AccessChain 27(data) 127 29
|
||||
Store 132 131
|
||||
Branch 39
|
||||
133: Label
|
||||
134: 6(int) Load 8(invocation)
|
||||
135: 30(ptr) AccessChain 27(data) 134 29
|
||||
136: 19(int) Load 135
|
||||
137: 34(bool) SLessThan 136 33
|
||||
138: 34(bool) GroupNonUniformAny 36 137
|
||||
SelectionMerge 140 None
|
||||
BranchConditional 138 139 140
|
||||
139: Label
|
||||
141: 6(int) Load 8(invocation)
|
||||
143: 142(ptr) AccessChain 27(data) 33 68 41
|
||||
144: 22(float) Load 143
|
||||
145: 34(bool) GroupNonUniformAllEqual 36 144
|
||||
146: 19(int) Select 145 46 33
|
||||
147: 30(ptr) AccessChain 27(data) 141 29
|
||||
Store 147 146
|
||||
148: 6(int) Load 8(invocation)
|
||||
151: 150(ptr) AccessChain 27(data) 46 68
|
||||
152: 23(fvec4) Load 151
|
||||
153: 149(fvec2) VectorShuffle 152 152 0 1
|
||||
154: 34(bool) GroupNonUniformAllEqual 36 153
|
||||
155: 19(int) Select 154 46 33
|
||||
156: 30(ptr) AccessChain 27(data) 148 29
|
||||
Store 156 155
|
||||
157: 6(int) Load 8(invocation)
|
||||
159: 150(ptr) AccessChain 27(data) 59 68
|
||||
160: 23(fvec4) Load 159
|
||||
161: 158(fvec3) VectorShuffle 160 160 0 1 2
|
||||
162: 34(bool) GroupNonUniformAllEqual 36 161
|
||||
163: 19(int) Select 162 46 33
|
||||
164: 30(ptr) AccessChain 27(data) 157 29
|
||||
Store 164 163
|
||||
165: 6(int) Load 8(invocation)
|
||||
166: 150(ptr) AccessChain 27(data) 68 68
|
||||
167: 23(fvec4) Load 166
|
||||
168: 34(bool) GroupNonUniformAllEqual 36 167
|
||||
169: 19(int) Select 168 46 33
|
||||
170: 30(ptr) AccessChain 27(data) 165 29
|
||||
Store 170 169
|
||||
171: 6(int) Load 8(invocation)
|
||||
172: 30(ptr) AccessChain 27(data) 33 46 41
|
||||
173: 19(int) Load 172
|
||||
174: 34(bool) SLessThan 173 33
|
||||
175: 34(bool) GroupNonUniformAllEqual 36 174
|
||||
176: 19(int) Select 175 46 33
|
||||
177: 30(ptr) AccessChain 27(data) 171 29
|
||||
Store 177 176
|
||||
178: 6(int) Load 8(invocation)
|
||||
179: 82(ptr) AccessChain 27(data) 46 46
|
||||
180: 20(ivec4) Load 179
|
||||
181: 81(ivec2) VectorShuffle 180 180 0 1
|
||||
184: 183(bvec2) SLessThan 181 182
|
||||
185: 34(bool) GroupNonUniformAllEqual 36 184
|
||||
186: 19(int) Select 185 46 33
|
||||
187: 81(ivec2) CompositeConstruct 186 186
|
||||
188: 19(int) CompositeExtract 187 0
|
||||
189: 30(ptr) AccessChain 27(data) 178 29
|
||||
Store 189 188
|
||||
190: 6(int) Load 8(invocation)
|
||||
191: 82(ptr) AccessChain 27(data) 46 46
|
||||
192: 20(ivec4) Load 191
|
||||
193: 90(ivec3) VectorShuffle 192 192 0 1 2
|
||||
196: 195(bvec3) SLessThan 193 194
|
||||
197: 34(bool) GroupNonUniformAllEqual 36 196
|
||||
198: 19(int) Select 197 46 33
|
||||
199: 90(ivec3) CompositeConstruct 198 198 198
|
||||
200: 19(int) CompositeExtract 199 0
|
||||
201: 30(ptr) AccessChain 27(data) 190 29
|
||||
Store 201 200
|
||||
202: 6(int) Load 8(invocation)
|
||||
203: 82(ptr) AccessChain 27(data) 46 46
|
||||
204: 20(ivec4) Load 203
|
||||
207: 206(bvec4) SLessThan 204 205
|
||||
208: 34(bool) GroupNonUniformAllEqual 36 207
|
||||
209: 19(int) Select 208 46 33
|
||||
210: 20(ivec4) CompositeConstruct 209 209 209 209
|
||||
211: 19(int) CompositeExtract 210 0
|
||||
212: 30(ptr) AccessChain 27(data) 202 29
|
||||
Store 212 211
|
||||
Branch 140
|
||||
140: Label
|
||||
Branch 39
|
||||
39: Label
|
||||
Return
|
||||
FunctionEnd
|
||||
Reference in New Issue
Block a user