blob: ec6671c68522babb946a8de884c4a39a40a9ed35 [file] [edit]
spv.longVectorBuiltinsSpecConst.comp
// Module Version 10300
// Generated by (magic number): 8000b
// Id's are bound by 321
Capability Shader
Capability Float16
Capability LongVectorEXT
Capability ExpectAssumeKHR
Extension "SPV_EXT_long_vector"
Extension "SPV_KHR_expect_assume"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint GLCompute 4 "main"
ExecutionMode 4 LocalSize 64 1 1
Source GLSL 450
SourceExtension "GL_EXT_buffer_reference"
SourceExtension "GL_EXT_expect_assume"
SourceExtension "GL_EXT_long_vector"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types"
SourceExtension "GL_KHR_memory_scope_semantics"
Name 4 "main"
Name 8 "c0"
Name 11 "vf"
Name 16 "f"
Name 30 "vf16"
Name 104 "tempReturn"
Name 106 "tempArg"
Name 107 "ResType"
Name 151 "vb"
Name 178 "vi"
Name 183 "vu"
Name 195 "ResType"
Name 242 "b"
Name 249 "tempReturn"
Name 252 "tempArg"
Name 253 "ResType"
Name 259 "tempReturn"
Name 262 "tempArg"
Name 270 "tempArg"
Name 271 "tempArg"
Name 279 "tempArg"
Name 280 "tempArg"
Name 281 "ResType"
Name 289 "i"
Decorate 8(c0) SpecId 0
Decorate 320 BuiltIn WorkgroupSize
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeInt 32 0
8(c0): 7(int) SpecConstant 0
9: TypeCooperativeVectorNV 6(float) 8(c0)
10: TypePointer Function 9
15: TypePointer Function 6(float)
27: TypeFloat 16
28: TypeCooperativeVectorNV 27(float16_t) 8(c0)
29: TypePointer Function 28
107(ResType): TypeStruct 9 9
148: TypeBool
149: TypeCooperativeVectorNV 148(bool) 8(c0)
150: TypePointer Function 149
175: TypeInt 32 1
176: TypeCooperativeVectorNV 175(int) 8(c0)
177: TypePointer Function 176
181: TypeCooperativeVectorNV 7(int) 8(c0)
182: TypePointer Function 181
195(ResType): TypeStruct 9 176
241: TypePointer Function 148(bool)
253(ResType): TypeStruct 181 181
281(ResType): TypeStruct 176 176
288: TypePointer Function 175(int)
317: TypeVector 7(int) 3
318: 7(int) Constant 64
319: 7(int) Constant 1
320: 317(ivec3) ConstantComposite 318 319 319
4(main): 2 Function None 3
5: Label
11(vf): 10(ptr) Variable Function
16(f): 15(ptr) Variable Function
30(vf16): 29(ptr) Variable Function
104(tempReturn): 10(ptr) Variable Function
106(tempArg): 10(ptr) Variable Function
151(vb): 150(ptr) Variable Function
178(vi): 177(ptr) Variable Function
183(vu): 182(ptr) Variable Function
242(b): 241(ptr) Variable Function
249(tempReturn): 182(ptr) Variable Function
252(tempArg): 182(ptr) Variable Function
259(tempReturn): 182(ptr) Variable Function
262(tempArg): 182(ptr) Variable Function
270(tempArg): 182(ptr) Variable Function
271(tempArg): 182(ptr) Variable Function
279(tempArg): 177(ptr) Variable Function
280(tempArg): 177(ptr) Variable Function
289(i): 288(ptr) Variable Function
12: 9 Load 11(vf)
13: 9 Load 11(vf)
14: 9 ExtInst 1(GLSL.std.450) 40(FMax) 12 13
Store 11(vf) 14
17: 6(float) Load 16(f)
18: 6(float) Load 16(f)
19: 9 Load 11(vf)
20: 9 CompositeConstruct
21: 9 CompositeConstruct
22: 9 ExtInst 1(GLSL.std.450) 49(SmoothStep) 20 21 19
Store 11(vf) 22
23: 9 Load 11(vf)
24: 9 Load 11(vf)
25: 9 Load 11(vf)
26: 9 ExtInst 1(GLSL.std.450) 49(SmoothStep) 23 24 25
Store 11(vf) 26
31: 28 Load 30(vf16)
32: 28 Load 30(vf16)
33: 28 Load 30(vf16)
34: 28 ExtInst 1(GLSL.std.450) 49(SmoothStep) 31 32 33
Store 30(vf16) 34
35: 9 Load 11(vf)
36: 9 ExtInst 1(GLSL.std.450) 11(Radians) 35
Store 11(vf) 36
37: 9 Load 11(vf)
38: 9 ExtInst 1(GLSL.std.450) 12(Degrees) 37
Store 11(vf) 38
39: 9 Load 11(vf)
40: 9 ExtInst 1(GLSL.std.450) 13(Sin) 39
Store 11(vf) 40
41: 9 Load 11(vf)
42: 9 ExtInst 1(GLSL.std.450) 14(Cos) 41
Store 11(vf) 42
43: 9 Load 11(vf)
44: 9 ExtInst 1(GLSL.std.450) 15(Tan) 43
Store 11(vf) 44
45: 9 Load 11(vf)
46: 9 ExtInst 1(GLSL.std.450) 16(Asin) 45
Store 11(vf) 46
47: 9 Load 11(vf)
48: 9 ExtInst 1(GLSL.std.450) 17(Acos) 47
Store 11(vf) 48
49: 9 Load 11(vf)
50: 9 ExtInst 1(GLSL.std.450) 18(Atan) 49
Store 11(vf) 50
51: 9 Load 11(vf)
52: 9 Load 11(vf)
53: 9 ExtInst 1(GLSL.std.450) 25(Atan2) 51 52
Store 11(vf) 53
54: 9 Load 11(vf)
55: 9 ExtInst 1(GLSL.std.450) 19(Sinh) 54
Store 11(vf) 55
56: 9 Load 11(vf)
57: 9 ExtInst 1(GLSL.std.450) 20(Cosh) 56
Store 11(vf) 57
58: 9 Load 11(vf)
59: 9 ExtInst 1(GLSL.std.450) 21(Tanh) 58
Store 11(vf) 59
60: 9 Load 11(vf)
61: 9 ExtInst 1(GLSL.std.450) 22(Asinh) 60
Store 11(vf) 61
62: 9 Load 11(vf)
63: 9 ExtInst 1(GLSL.std.450) 23(Acosh) 62
Store 11(vf) 63
64: 9 Load 11(vf)
65: 9 ExtInst 1(GLSL.std.450) 24(Atanh) 64
Store 11(vf) 65
66: 9 Load 11(vf)
67: 9 Load 11(vf)
68: 9 ExtInst 1(GLSL.std.450) 26(Pow) 66 67
Store 11(vf) 68
69: 9 Load 11(vf)
70: 9 ExtInst 1(GLSL.std.450) 27(Exp) 69
Store 11(vf) 70
71: 9 Load 11(vf)
72: 9 ExtInst 1(GLSL.std.450) 28(Log) 71
Store 11(vf) 72
73: 9 Load 11(vf)
74: 9 ExtInst 1(GLSL.std.450) 29(Exp2) 73
Store 11(vf) 74
75: 9 Load 11(vf)
76: 9 ExtInst 1(GLSL.std.450) 30(Log2) 75
Store 11(vf) 76
77: 9 Load 11(vf)
78: 9 ExtInst 1(GLSL.std.450) 31(Sqrt) 77
Store 11(vf) 78
79: 9 Load 11(vf)
80: 9 ExtInst 1(GLSL.std.450) 32(InverseSqrt) 79
Store 11(vf) 80
81: 9 Load 11(vf)
82: 9 ExtInst 1(GLSL.std.450) 4(FAbs) 81
Store 11(vf) 82
83: 9 Load 11(vf)
84: 9 ExtInst 1(GLSL.std.450) 6(FSign) 83
Store 11(vf) 84
85: 9 Load 11(vf)
86: 9 ExtInst 1(GLSL.std.450) 8(Floor) 85
Store 11(vf) 86
87: 9 Load 11(vf)
88: 9 ExtInst 1(GLSL.std.450) 3(Trunc) 87
Store 11(vf) 88
89: 9 Load 11(vf)
90: 9 ExtInst 1(GLSL.std.450) 1(Round) 89
Store 11(vf) 90
91: 9 Load 11(vf)
92: 9 ExtInst 1(GLSL.std.450) 2(RoundEven) 91
Store 11(vf) 92
93: 9 Load 11(vf)
94: 9 ExtInst 1(GLSL.std.450) 9(Ceil) 93
Store 11(vf) 94
95: 9 Load 11(vf)
96: 9 ExtInst 1(GLSL.std.450) 10(Fract) 95
Store 11(vf) 96
97: 9 Load 11(vf)
98: 6(float) Load 16(f)
99: 9 CompositeConstruct
100: 9 FMod 97 99
Store 11(vf) 100
101: 9 Load 11(vf)
102: 9 Load 11(vf)
103: 9 FMod 101 102
Store 11(vf) 103
105: 9 Load 11(vf)
108:107(ResType) ExtInst 1(GLSL.std.450) 36(ModfStruct) 105
109: 9 CompositeExtract 108 1
Store 106(tempArg) 109
110: 9 CompositeExtract 108 0
Store 104(tempReturn) 110
111: 9 Load 106(tempArg)
Store 11(vf) 111
112: 9 Load 104(tempReturn)
Store 11(vf) 112
113: 9 Load 11(vf)
114: 6(float) Load 16(f)
115: 9 CompositeConstruct
116: 9 ExtInst 1(GLSL.std.450) 37(FMin) 113 115
Store 11(vf) 116
117: 9 Load 11(vf)
118: 9 Load 11(vf)
119: 9 ExtInst 1(GLSL.std.450) 37(FMin) 117 118
Store 11(vf) 119
120: 9 Load 11(vf)
121: 6(float) Load 16(f)
122: 9 CompositeConstruct
123: 9 ExtInst 1(GLSL.std.450) 40(FMax) 120 122
Store 11(vf) 123
124: 9 Load 11(vf)
125: 9 Load 11(vf)
126: 9 ExtInst 1(GLSL.std.450) 40(FMax) 124 125
Store 11(vf) 126
127: 9 Load 11(vf)
128: 6(float) Load 16(f)
129: 6(float) Load 16(f)
130: 9 CompositeConstruct
131: 9 CompositeConstruct
132: 9 ExtInst 1(GLSL.std.450) 43(FClamp) 127 130 131
Store 11(vf) 132
133: 9 Load 11(vf)
134: 9 Load 11(vf)
135: 9 Load 11(vf)
136: 9 ExtInst 1(GLSL.std.450) 43(FClamp) 133 134 135
Store 11(vf) 136
137: 9 Load 11(vf)
138: 9 Load 11(vf)
139: 6(float) Load 16(f)
140: 9 CompositeConstruct
141: 9 ExtInst 1(GLSL.std.450) 46(FMix) 137 138 140
Store 11(vf) 141
142: 9 Load 11(vf)
143: 9 Load 11(vf)
144: 9 Load 11(vf)
145: 9 ExtInst 1(GLSL.std.450) 46(FMix) 142 143 144
Store 11(vf) 145
146: 9 Load 11(vf)
147: 9 Load 11(vf)
152: 149 Load 151(vb)
153: 9 Select 152 147 146
Store 11(vf) 153
154: 9 Load 11(vf)
155: 9 Load 11(vf)
156: 9 ExtInst 1(GLSL.std.450) 48(Step) 154 155
Store 11(vf) 156
157: 6(float) Load 16(f)
158: 9 Load 11(vf)
159: 9 CompositeConstruct
160: 9 ExtInst 1(GLSL.std.450) 48(Step) 159 158
Store 11(vf) 160
161: 9 Load 11(vf)
162: 9 Load 11(vf)
163: 9 Load 11(vf)
164: 9 ExtInst 1(GLSL.std.450) 49(SmoothStep) 161 162 163
Store 11(vf) 164
165: 6(float) Load 16(f)
166: 6(float) Load 16(f)
167: 9 Load 11(vf)
168: 9 CompositeConstruct
169: 9 CompositeConstruct
170: 9 ExtInst 1(GLSL.std.450) 49(SmoothStep) 168 169 167
Store 11(vf) 170
171: 9 Load 11(vf)
172: 149 IsNan 171
Store 151(vb) 172
173: 9 Load 11(vf)
174: 149 IsInf 173
Store 151(vb) 174
179: 9 Load 11(vf)
180: 176 Bitcast 179
Store 178(vi) 180
184: 9 Load 11(vf)
185: 181 Bitcast 184
Store 183(vu) 185
186: 176 Load 178(vi)
187: 9 Bitcast 186
Store 11(vf) 187
188: 181 Load 183(vu)
189: 9 Bitcast 188
Store 11(vf) 189
190: 9 Load 11(vf)
191: 9 Load 11(vf)
192: 9 Load 11(vf)
193: 9 ExtInst 1(GLSL.std.450) 50(Fma) 190 191 192
Store 11(vf) 193
194: 9 Load 11(vf)
196:195(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 194
197: 176 CompositeExtract 196 1
Store 178(vi) 197
198: 9 CompositeExtract 196 0
Store 11(vf) 198
199: 9 Load 11(vf)
200: 176 Load 178(vi)
201: 9 ExtInst 1(GLSL.std.450) 53(Ldexp) 199 200
Store 11(vf) 201
202: 9 Load 11(vf)
203: 6(float) ExtInst 1(GLSL.std.450) 66(Length) 202
Store 16(f) 203
204: 9 Load 11(vf)
205: 9 Load 11(vf)
206: 6(float) ExtInst 1(GLSL.std.450) 67(Distance) 204 205
Store 16(f) 206
207: 9 Load 11(vf)
208: 9 Load 11(vf)
209: 6(float) Dot 207 208
Store 16(f) 209
210: 9 Load 11(vf)
211: 9 ExtInst 1(GLSL.std.450) 69(Normalize) 210
Store 11(vf) 211
212: 9 Load 11(vf)
213: 9 Load 11(vf)
214: 9 Load 11(vf)
215: 9 ExtInst 1(GLSL.std.450) 70(FaceForward) 212 213 214
Store 11(vf) 215
216: 9 Load 11(vf)
217: 9 Load 11(vf)
218: 9 ExtInst 1(GLSL.std.450) 71(Reflect) 216 217
Store 11(vf) 218
219: 9 Load 11(vf)
220: 9 Load 11(vf)
221: 6(float) Load 16(f)
222: 9 ExtInst 1(GLSL.std.450) 72(Refract) 219 220 221
Store 11(vf) 222
223: 9 Load 11(vf)
224: 9 Load 11(vf)
225: 149 FOrdLessThan 223 224
Store 151(vb) 225
226: 9 Load 11(vf)
227: 9 Load 11(vf)
228: 149 FOrdLessThanEqual 226 227
Store 151(vb) 228
229: 9 Load 11(vf)
230: 9 Load 11(vf)
231: 149 FOrdGreaterThan 229 230
Store 151(vb) 231
232: 9 Load 11(vf)
233: 9 Load 11(vf)
234: 149 FOrdGreaterThanEqual 232 233
Store 151(vb) 234
235: 9 Load 11(vf)
236: 9 Load 11(vf)
237: 149 FOrdEqual 235 236
Store 151(vb) 237
238: 9 Load 11(vf)
239: 9 Load 11(vf)
240: 149 FUnordNotEqual 238 239
Store 151(vb) 240
243: 149 Load 151(vb)
244: 148(bool) Any 243
Store 242(b) 244
245: 149 Load 151(vb)
246: 148(bool) All 245
Store 242(b) 246
247: 149 Load 151(vb)
248: 149 LogicalNot 247
Store 151(vb) 248
250: 181 Load 183(vu)
251: 181 Load 183(vu)
254:253(ResType) IAddCarry 250 251
255: 181 CompositeExtract 254 1
Store 252(tempArg) 255
256: 181 CompositeExtract 254 0
Store 249(tempReturn) 256
257: 181 Load 252(tempArg)
Store 183(vu) 257
258: 181 Load 249(tempReturn)
Store 183(vu) 258
260: 181 Load 183(vu)
261: 181 Load 183(vu)
263:253(ResType) ISubBorrow 260 261
264: 181 CompositeExtract 263 1
Store 262(tempArg) 264
265: 181 CompositeExtract 263 0
Store 259(tempReturn) 265
266: 181 Load 262(tempArg)
Store 183(vu) 266
267: 181 Load 259(tempReturn)
Store 183(vu) 267
268: 181 Load 183(vu)
269: 181 Load 183(vu)
272:253(ResType) UMulExtended 268 269
273: 181 CompositeExtract 272 0
Store 271(tempArg) 273
274: 181 CompositeExtract 272 1
Store 270(tempArg) 274
275: 181 Load 270(tempArg)
Store 183(vu) 275
276: 181 Load 271(tempArg)
Store 183(vu) 276
277: 176 Load 178(vi)
278: 176 Load 178(vi)
282:281(ResType) SMulExtended 277 278
283: 176 CompositeExtract 282 0
Store 280(tempArg) 283
284: 176 CompositeExtract 282 1
Store 279(tempArg) 284
285: 176 Load 279(tempArg)
Store 178(vi) 285
286: 176 Load 280(tempArg)
Store 178(vi) 286
287: 181 Load 183(vu)
290: 175(int) Load 289(i)
291: 175(int) Load 289(i)
292: 181 BitFieldUExtract 287 290 291
Store 183(vu) 292
293: 181 Load 183(vu)
294: 181 Load 183(vu)
295: 175(int) Load 289(i)
296: 175(int) Load 289(i)
297: 181 BitFieldInsert 293 294 295 296
Store 183(vu) 297
298: 181 Load 183(vu)
299: 181 BitReverse 298
Store 183(vu) 299
300: 181 Load 183(vu)
301: 176 BitCount 300
Store 178(vi) 301
302: 181 Load 183(vu)
303: 176 ExtInst 1(GLSL.std.450) 73(FindILsb) 302
Store 178(vi) 303
304: 181 Load 183(vu)
305: 176 ExtInst 1(GLSL.std.450) 75(FindUMsb) 304
Store 178(vi) 305
306: 181 Load 183(vu)
307: 181 Load 183(vu)
308: 149 Load 151(vb)
309: 181 Select 308 307 306
Store 183(vu) 309
310: 149 Load 151(vb)
311: 149 Load 151(vb)
312: 149 Load 151(vb)
313: 149 Select 312 311 310
Store 151(vb) 313
314: 181 Load 183(vu)
315: 181 Load 183(vu)
316: 181 ExpectKHR 314 315
Store 183(vu) 316
Return
FunctionEnd