First Commit
This commit is contained in:
375
externals/glslang/Test/baseResults/spv.460.subgroupEXT.task.out
vendored
Normal file
375
externals/glslang/Test/baseResults/spv.460.subgroupEXT.task.out
vendored
Normal file
@@ -0,0 +1,375 @@
|
||||
spv.460.subgroupEXT.task
|
||||
// Module Version 10400
|
||||
// Generated by (magic number): 8000b
|
||||
// Id's are bound by 243
|
||||
|
||||
Capability StorageImageWriteWithoutFormat
|
||||
Capability GroupNonUniform
|
||||
Capability GroupNonUniformVote
|
||||
Capability GroupNonUniformArithmetic
|
||||
Capability GroupNonUniformBallot
|
||||
Capability GroupNonUniformShuffle
|
||||
Capability GroupNonUniformShuffleRelative
|
||||
Capability GroupNonUniformClustered
|
||||
Capability GroupNonUniformQuad
|
||||
Capability MeshShadingEXT
|
||||
Extension "SPV_EXT_mesh_shader"
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint TaskEXT 4 "main" 35 41 56 61 77 102 123 124 129 130 133 134 135 136 137
|
||||
ExecutionMode 4 LocalSize 32 1 1
|
||||
Source GLSL 460
|
||||
SourceExtension "GL_EXT_mesh_shader"
|
||||
SourceExtension "GL_KHR_shader_subgroup_arithmetic"
|
||||
SourceExtension "GL_KHR_shader_subgroup_ballot"
|
||||
SourceExtension "GL_KHR_shader_subgroup_basic"
|
||||
SourceExtension "GL_KHR_shader_subgroup_clustered"
|
||||
SourceExtension "GL_KHR_shader_subgroup_quad"
|
||||
SourceExtension "GL_KHR_shader_subgroup_shuffle"
|
||||
SourceExtension "GL_KHR_shader_subgroup_shuffle_relative"
|
||||
SourceExtension "GL_KHR_shader_subgroup_vote"
|
||||
Name 4 "main"
|
||||
Name 6 "basic_works("
|
||||
Name 13 "ballot_works(vf4;"
|
||||
Name 12 "f4"
|
||||
Name 16 "vote_works(vf4;"
|
||||
Name 15 "f4"
|
||||
Name 19 "shuffle_works(vf4;"
|
||||
Name 18 "f4"
|
||||
Name 22 "arith_works(vf4;"
|
||||
Name 21 "f4"
|
||||
Name 25 "clustered_works(vf4;"
|
||||
Name 24 "f4"
|
||||
Name 28 "quad_works(vf4;"
|
||||
Name 27 "f4"
|
||||
Name 32 "iid"
|
||||
Name 35 "gl_LocalInvocationID"
|
||||
Name 40 "gid"
|
||||
Name 41 "gl_WorkGroupID"
|
||||
Name 44 "i"
|
||||
Name 56 "mem"
|
||||
Name 59 "block0"
|
||||
MemberName 59(block0) 0 "uni_value"
|
||||
Name 61 ""
|
||||
Name 77 "uni_image"
|
||||
Name 100 "Task"
|
||||
MemberName 100(Task) 0 "dummy"
|
||||
MemberName 100(Task) 1 "submesh"
|
||||
Name 102 "mytask"
|
||||
Name 123 "gl_SubgroupSize"
|
||||
Name 124 "gl_SubgroupInvocationID"
|
||||
Name 129 "gl_NumSubgroups"
|
||||
Name 130 "gl_SubgroupID"
|
||||
Name 133 "gl_SubgroupEqMask"
|
||||
Name 134 "gl_SubgroupGeMask"
|
||||
Name 135 "gl_SubgroupGtMask"
|
||||
Name 136 "gl_SubgroupLeMask"
|
||||
Name 137 "gl_SubgroupLtMask"
|
||||
Name 143 "ballot"
|
||||
Name 181 "ballot"
|
||||
Name 216 "ballot"
|
||||
Decorate 35(gl_LocalInvocationID) BuiltIn LocalInvocationId
|
||||
Decorate 41(gl_WorkGroupID) BuiltIn WorkgroupId
|
||||
MemberDecorate 59(block0) 0 Offset 0
|
||||
Decorate 59(block0) Block
|
||||
Decorate 61 DescriptorSet 0
|
||||
Decorate 61 Binding 1
|
||||
Decorate 77(uni_image) DescriptorSet 0
|
||||
Decorate 77(uni_image) Binding 0
|
||||
Decorate 77(uni_image) NonReadable
|
||||
Decorate 123(gl_SubgroupSize) RelaxedPrecision
|
||||
Decorate 123(gl_SubgroupSize) BuiltIn SubgroupSize
|
||||
Decorate 124(gl_SubgroupInvocationID) RelaxedPrecision
|
||||
Decorate 124(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
|
||||
Decorate 129(gl_NumSubgroups) BuiltIn NumSubgroups
|
||||
Decorate 130(gl_SubgroupID) BuiltIn SubgroupId
|
||||
Decorate 133(gl_SubgroupEqMask) BuiltIn SubgroupEqMaskKHR
|
||||
Decorate 134(gl_SubgroupGeMask) BuiltIn SubgroupGeMaskKHR
|
||||
Decorate 135(gl_SubgroupGtMask) BuiltIn SubgroupGtMaskKHR
|
||||
Decorate 136(gl_SubgroupLeMask) BuiltIn SubgroupLeMaskKHR
|
||||
Decorate 137(gl_SubgroupLtMask) BuiltIn SubgroupLtMaskKHR
|
||||
Decorate 242 BuiltIn WorkgroupSize
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
8: TypeFloat 32
|
||||
9: TypeVector 8(float) 4
|
||||
10: TypePointer Function 9(fvec4)
|
||||
11: TypeFunction 2 10(ptr)
|
||||
30: TypeInt 32 0
|
||||
31: TypePointer Function 30(int)
|
||||
33: TypeVector 30(int) 3
|
||||
34: TypePointer Input 33(ivec3)
|
||||
35(gl_LocalInvocationID): 34(ptr) Variable Input
|
||||
36: 30(int) Constant 0
|
||||
37: TypePointer Input 30(int)
|
||||
41(gl_WorkGroupID): 34(ptr) Variable Input
|
||||
51: 30(int) Constant 10
|
||||
52: TypeBool
|
||||
54: TypeArray 9(fvec4) 51
|
||||
55: TypePointer Workgroup 54
|
||||
56(mem): 55(ptr) Variable Workgroup
|
||||
59(block0): TypeStruct 30(int)
|
||||
60: TypePointer Uniform 59(block0)
|
||||
61: 60(ptr) Variable Uniform
|
||||
62: TypeInt 32 1
|
||||
63: 62(int) Constant 0
|
||||
64: TypePointer Uniform 30(int)
|
||||
70: TypePointer Workgroup 9(fvec4)
|
||||
73: 62(int) Constant 1
|
||||
75: TypeImage 8(float) 2D nonsampled format:Unknown
|
||||
76: TypePointer UniformConstant 75
|
||||
77(uni_image): 76(ptr) Variable UniformConstant
|
||||
81: TypeVector 62(int) 2
|
||||
91: 30(int) Constant 1
|
||||
95: 30(int) Constant 264
|
||||
96: 30(int) Constant 2
|
||||
97: TypeVector 8(float) 2
|
||||
98: 30(int) Constant 3
|
||||
99: TypeArray 97(fvec2) 98
|
||||
100(Task): TypeStruct 97(fvec2) 99
|
||||
101: TypePointer TaskPayloadWorkgroupEXT 100(Task)
|
||||
102(mytask): 101(ptr) Variable TaskPayloadWorkgroupEXT
|
||||
103: 8(float) Constant 1106247680
|
||||
104: 8(float) Constant 1106771968
|
||||
105: 97(fvec2) ConstantComposite 103 104
|
||||
106: TypePointer TaskPayloadWorkgroupEXT 97(fvec2)
|
||||
108: 8(float) Constant 1107296256
|
||||
109: 8(float) Constant 1107558400
|
||||
110: 97(fvec2) ConstantComposite 108 109
|
||||
112: 8(float) Constant 1107820544
|
||||
113: 8(float) Constant 1108082688
|
||||
114: 97(fvec2) ConstantComposite 112 113
|
||||
116: 62(int) Constant 2
|
||||
123(gl_SubgroupSize): 37(ptr) Variable Input
|
||||
124(gl_SubgroupInvocationID): 37(ptr) Variable Input
|
||||
125: 30(int) Constant 3400
|
||||
126: 30(int) Constant 72
|
||||
127: 30(int) Constant 2056
|
||||
129(gl_NumSubgroups): 37(ptr) Variable Input
|
||||
130(gl_SubgroupID): 37(ptr) Variable Input
|
||||
131: TypeVector 30(int) 4
|
||||
132: TypePointer Input 131(ivec4)
|
||||
133(gl_SubgroupEqMask): 132(ptr) Variable Input
|
||||
134(gl_SubgroupGeMask): 132(ptr) Variable Input
|
||||
135(gl_SubgroupGtMask): 132(ptr) Variable Input
|
||||
136(gl_SubgroupLeMask): 132(ptr) Variable Input
|
||||
137(gl_SubgroupLtMask): 132(ptr) Variable Input
|
||||
142: TypePointer Function 131(ivec4)
|
||||
144: 52(bool) ConstantFalse
|
||||
146: 131(ivec4) ConstantComposite 91 91 91 91
|
||||
160: 52(bool) ConstantTrue
|
||||
217: 30(int) Constant 85
|
||||
218: 131(ivec4) ConstantComposite 217 36 36 36
|
||||
241: 30(int) Constant 32
|
||||
242: 33(ivec3) ConstantComposite 241 91 91
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
32(iid): 31(ptr) Variable Function
|
||||
40(gid): 31(ptr) Variable Function
|
||||
44(i): 31(ptr) Variable Function
|
||||
38: 37(ptr) AccessChain 35(gl_LocalInvocationID) 36
|
||||
39: 30(int) Load 38
|
||||
Store 32(iid) 39
|
||||
42: 37(ptr) AccessChain 41(gl_WorkGroupID) 36
|
||||
43: 30(int) Load 42
|
||||
Store 40(gid) 43
|
||||
Store 44(i) 36
|
||||
Branch 45
|
||||
45: Label
|
||||
LoopMerge 47 48 None
|
||||
Branch 49
|
||||
49: Label
|
||||
50: 30(int) Load 44(i)
|
||||
53: 52(bool) ULessThan 50 51
|
||||
BranchConditional 53 46 47
|
||||
46: Label
|
||||
57: 30(int) Load 44(i)
|
||||
58: 30(int) Load 44(i)
|
||||
65: 64(ptr) AccessChain 61 63
|
||||
66: 30(int) Load 65
|
||||
67: 30(int) IAdd 58 66
|
||||
68: 8(float) ConvertUToF 67
|
||||
69: 9(fvec4) CompositeConstruct 68 68 68 68
|
||||
71: 70(ptr) AccessChain 56(mem) 57
|
||||
Store 71 69
|
||||
Branch 48
|
||||
48: Label
|
||||
72: 30(int) Load 44(i)
|
||||
74: 30(int) IAdd 72 73
|
||||
Store 44(i) 74
|
||||
Branch 45
|
||||
47: Label
|
||||
78: 75 Load 77(uni_image)
|
||||
79: 30(int) Load 32(iid)
|
||||
80: 62(int) Bitcast 79
|
||||
82: 81(ivec2) CompositeConstruct 80 80
|
||||
83: 30(int) Load 40(gid)
|
||||
84: 70(ptr) AccessChain 56(mem) 83
|
||||
85: 9(fvec4) Load 84
|
||||
ImageWrite 78 82 85
|
||||
86: 75 Load 77(uni_image)
|
||||
87: 30(int) Load 32(iid)
|
||||
88: 62(int) Bitcast 87
|
||||
89: 81(ivec2) CompositeConstruct 88 88
|
||||
90: 30(int) Load 40(gid)
|
||||
92: 30(int) IAdd 90 91
|
||||
93: 70(ptr) AccessChain 56(mem) 92
|
||||
94: 9(fvec4) Load 93
|
||||
ImageWrite 86 89 94
|
||||
MemoryBarrier 91 95
|
||||
ControlBarrier 96 96 95
|
||||
107: 106(ptr) AccessChain 102(mytask) 63
|
||||
Store 107 105
|
||||
111: 106(ptr) AccessChain 102(mytask) 73 63
|
||||
Store 111 110
|
||||
115: 106(ptr) AccessChain 102(mytask) 73 73
|
||||
Store 115 114
|
||||
117: 30(int) Load 40(gid)
|
||||
118: 30(int) UMod 117 96
|
||||
119: 106(ptr) AccessChain 102(mytask) 73 118
|
||||
120: 97(fvec2) Load 119
|
||||
121: 106(ptr) AccessChain 102(mytask) 73 116
|
||||
Store 121 120
|
||||
MemoryBarrier 91 95
|
||||
ControlBarrier 96 96 95
|
||||
EmitMeshTasksEXT 98 91 91 102(mytask)
|
||||
FunctionEnd
|
||||
6(basic_works(): 2 Function None 3
|
||||
7: Label
|
||||
ControlBarrier 98 98 125
|
||||
MemoryBarrier 98 125
|
||||
MemoryBarrier 98 126
|
||||
MemoryBarrier 98 127
|
||||
128: 52(bool) GroupNonUniformElect 98
|
||||
MemoryBarrier 98 95
|
||||
Return
|
||||
FunctionEnd
|
||||
13(ballot_works(vf4;): 2 Function None 11
|
||||
12(f4): 10(ptr) FunctionParameter
|
||||
14: Label
|
||||
143(ballot): 142(ptr) Variable Function
|
||||
138: 9(fvec4) Load 12(f4)
|
||||
139: 9(fvec4) GroupNonUniformBroadcast 98 138 36
|
||||
140: 9(fvec4) Load 12(f4)
|
||||
141: 9(fvec4) GroupNonUniformBroadcastFirst 98 140
|
||||
145: 131(ivec4) GroupNonUniformBallot 98 144
|
||||
Store 143(ballot) 145
|
||||
147: 52(bool) GroupNonUniformInverseBallot 98 146
|
||||
148: 131(ivec4) Load 143(ballot)
|
||||
149: 52(bool) GroupNonUniformBallotBitExtract 98 148 36
|
||||
150: 131(ivec4) Load 143(ballot)
|
||||
151: 30(int) GroupNonUniformBallotBitCount 98 Reduce 150
|
||||
152: 131(ivec4) Load 143(ballot)
|
||||
153: 30(int) GroupNonUniformBallotBitCount 98 InclusiveScan 152
|
||||
154: 131(ivec4) Load 143(ballot)
|
||||
155: 30(int) GroupNonUniformBallotBitCount 98 ExclusiveScan 154
|
||||
156: 131(ivec4) Load 143(ballot)
|
||||
157: 30(int) GroupNonUniformBallotFindLSB 98 156
|
||||
158: 131(ivec4) Load 143(ballot)
|
||||
159: 30(int) GroupNonUniformBallotFindMSB 98 158
|
||||
Return
|
||||
FunctionEnd
|
||||
16(vote_works(vf4;): 2 Function None 11
|
||||
15(f4): 10(ptr) FunctionParameter
|
||||
17: Label
|
||||
161: 52(bool) GroupNonUniformAll 98 160
|
||||
162: 52(bool) GroupNonUniformAny 98 144
|
||||
163: 9(fvec4) Load 15(f4)
|
||||
164: 52(bool) GroupNonUniformAllEqual 98 163
|
||||
Return
|
||||
FunctionEnd
|
||||
19(shuffle_works(vf4;): 2 Function None 11
|
||||
18(f4): 10(ptr) FunctionParameter
|
||||
20: Label
|
||||
165: 9(fvec4) Load 18(f4)
|
||||
166: 9(fvec4) GroupNonUniformShuffle 98 165 36
|
||||
167: 9(fvec4) Load 18(f4)
|
||||
168: 9(fvec4) GroupNonUniformShuffleXor 98 167 91
|
||||
169: 9(fvec4) Load 18(f4)
|
||||
170: 9(fvec4) GroupNonUniformShuffleUp 98 169 91
|
||||
171: 9(fvec4) Load 18(f4)
|
||||
172: 9(fvec4) GroupNonUniformShuffleDown 98 171 91
|
||||
Return
|
||||
FunctionEnd
|
||||
22(arith_works(vf4;): 2 Function None 11
|
||||
21(f4): 10(ptr) FunctionParameter
|
||||
23: Label
|
||||
181(ballot): 142(ptr) Variable Function
|
||||
173: 9(fvec4) Load 21(f4)
|
||||
174: 9(fvec4) GroupNonUniformFAdd 98 Reduce 173
|
||||
175: 9(fvec4) Load 21(f4)
|
||||
176: 9(fvec4) GroupNonUniformFMul 98 Reduce 175
|
||||
177: 9(fvec4) Load 21(f4)
|
||||
178: 9(fvec4) GroupNonUniformFMin 98 Reduce 177
|
||||
179: 9(fvec4) Load 21(f4)
|
||||
180: 9(fvec4) GroupNonUniformFMax 98 Reduce 179
|
||||
182: 131(ivec4) Load 181(ballot)
|
||||
183: 131(ivec4) GroupNonUniformBitwiseAnd 98 Reduce 182
|
||||
184: 131(ivec4) Load 181(ballot)
|
||||
185: 131(ivec4) GroupNonUniformBitwiseOr 98 Reduce 184
|
||||
186: 131(ivec4) Load 181(ballot)
|
||||
187: 131(ivec4) GroupNonUniformBitwiseXor 98 Reduce 186
|
||||
188: 9(fvec4) Load 21(f4)
|
||||
189: 9(fvec4) GroupNonUniformFAdd 98 InclusiveScan 188
|
||||
190: 9(fvec4) Load 21(f4)
|
||||
191: 9(fvec4) GroupNonUniformFMul 98 InclusiveScan 190
|
||||
192: 9(fvec4) Load 21(f4)
|
||||
193: 9(fvec4) GroupNonUniformFMin 98 InclusiveScan 192
|
||||
194: 9(fvec4) Load 21(f4)
|
||||
195: 9(fvec4) GroupNonUniformFMax 98 InclusiveScan 194
|
||||
196: 131(ivec4) Load 181(ballot)
|
||||
197: 131(ivec4) GroupNonUniformBitwiseAnd 98 InclusiveScan 196
|
||||
198: 131(ivec4) Load 181(ballot)
|
||||
199: 131(ivec4) GroupNonUniformBitwiseOr 98 InclusiveScan 198
|
||||
200: 131(ivec4) Load 181(ballot)
|
||||
201: 131(ivec4) GroupNonUniformBitwiseXor 98 InclusiveScan 200
|
||||
202: 9(fvec4) Load 21(f4)
|
||||
203: 9(fvec4) GroupNonUniformFAdd 98 ExclusiveScan 202
|
||||
204: 9(fvec4) Load 21(f4)
|
||||
205: 9(fvec4) GroupNonUniformFMul 98 ExclusiveScan 204
|
||||
206: 9(fvec4) Load 21(f4)
|
||||
207: 9(fvec4) GroupNonUniformFMin 98 ExclusiveScan 206
|
||||
208: 9(fvec4) Load 21(f4)
|
||||
209: 9(fvec4) GroupNonUniformFMax 98 ExclusiveScan 208
|
||||
210: 131(ivec4) Load 181(ballot)
|
||||
211: 131(ivec4) GroupNonUniformBitwiseAnd 98 ExclusiveScan 210
|
||||
212: 131(ivec4) Load 181(ballot)
|
||||
213: 131(ivec4) GroupNonUniformBitwiseOr 98 ExclusiveScan 212
|
||||
214: 131(ivec4) Load 181(ballot)
|
||||
215: 131(ivec4) GroupNonUniformBitwiseXor 98 ExclusiveScan 214
|
||||
Return
|
||||
FunctionEnd
|
||||
25(clustered_works(vf4;): 2 Function None 11
|
||||
24(f4): 10(ptr) FunctionParameter
|
||||
26: Label
|
||||
216(ballot): 142(ptr) Variable Function
|
||||
Store 216(ballot) 218
|
||||
219: 9(fvec4) Load 24(f4)
|
||||
220: 9(fvec4) GroupNonUniformFAdd 98 ClusteredReduce 219 96
|
||||
221: 9(fvec4) Load 24(f4)
|
||||
222: 9(fvec4) GroupNonUniformFMul 98 ClusteredReduce 221 96
|
||||
223: 9(fvec4) Load 24(f4)
|
||||
224: 9(fvec4) GroupNonUniformFMin 98 ClusteredReduce 223 96
|
||||
225: 9(fvec4) Load 24(f4)
|
||||
226: 9(fvec4) GroupNonUniformFMax 98 ClusteredReduce 225 96
|
||||
227: 131(ivec4) Load 216(ballot)
|
||||
228: 131(ivec4) GroupNonUniformBitwiseAnd 98 ClusteredReduce 227 96
|
||||
229: 131(ivec4) Load 216(ballot)
|
||||
230: 131(ivec4) GroupNonUniformBitwiseOr 98 ClusteredReduce 229 96
|
||||
231: 131(ivec4) Load 216(ballot)
|
||||
232: 131(ivec4) GroupNonUniformBitwiseXor 98 ClusteredReduce 231 96
|
||||
Return
|
||||
FunctionEnd
|
||||
28(quad_works(vf4;): 2 Function None 11
|
||||
27(f4): 10(ptr) FunctionParameter
|
||||
29: Label
|
||||
233: 9(fvec4) Load 27(f4)
|
||||
234: 9(fvec4) GroupNonUniformQuadBroadcast 98 233 36
|
||||
235: 9(fvec4) Load 27(f4)
|
||||
236: 9(fvec4) GroupNonUniformQuadSwap 98 235 36
|
||||
237: 9(fvec4) Load 27(f4)
|
||||
238: 9(fvec4) GroupNonUniformQuadSwap 98 237 91
|
||||
239: 9(fvec4) Load 27(f4)
|
||||
240: 9(fvec4) GroupNonUniformQuadSwap 98 239 96
|
||||
Return
|
||||
FunctionEnd
|
||||
Reference in New Issue
Block a user