Before, it was only including explicit interface, sufficient for IO-Block-declared oriented interface, but not sufficient for all modes GLSL might be used with SPIR-V. Two things are accomplished now: 1) each id will appear exactly once 2) the OpEntryPoint list will union static use with declarations
345 lines
16 KiB
Plaintext
Executable File
345 lines
16 KiB
Plaintext
Executable File
spv.types.frag
|
|
|
|
Linked fragment stage:
|
|
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 80001
|
|
// Id's are bound by 268
|
|
|
|
Capability Shader
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4 "main" 134 94 104 168 144 154 114 164 124
|
|
ExecutionMode 4 OriginLowerLeft
|
|
Source GLSL 130
|
|
Name 4 "main"
|
|
Name 8 "b"
|
|
Name 10 "u_b"
|
|
Name 12 "i_b"
|
|
Name 17 "b2"
|
|
Name 19 "u_b2"
|
|
Name 22 "i_b2"
|
|
Name 35 "b3"
|
|
Name 37 "u_b3"
|
|
Name 40 "i_b3"
|
|
Name 59 "b4"
|
|
Name 61 "u_b4"
|
|
Name 64 "i_b4"
|
|
Name 89 "i"
|
|
Name 91 "u_i"
|
|
Name 94 "i_i"
|
|
Name 99 "i2"
|
|
Name 101 "u_i2"
|
|
Name 104 "i_i2"
|
|
Name 109 "i3"
|
|
Name 111 "u_i3"
|
|
Name 114 "i_i3"
|
|
Name 119 "i4"
|
|
Name 121 "u_i4"
|
|
Name 124 "i_i4"
|
|
Name 129 "f"
|
|
Name 131 "u_f"
|
|
Name 134 "i_f"
|
|
Name 139 "f2"
|
|
Name 141 "u_f2"
|
|
Name 144 "i_f2"
|
|
Name 149 "f3"
|
|
Name 151 "u_f3"
|
|
Name 154 "i_f3"
|
|
Name 159 "f4"
|
|
Name 161 "u_f4"
|
|
Name 164 "i_f4"
|
|
Name 168 "gl_FragColor"
|
|
Decorate 94(i_i) Flat
|
|
Decorate 104(i_i2) Flat
|
|
Decorate 114(i_i3) Flat
|
|
Decorate 124(i_i4) Flat
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeBool
|
|
7: TypePointer Function 6(bool)
|
|
9: TypePointer UniformConstant 6(bool)
|
|
10(u_b): 9(ptr) Variable UniformConstant
|
|
12(i_b): 9(ptr) Variable UniformConstant
|
|
15: TypeVector 6(bool) 2
|
|
16: TypePointer Function 15(bvec2)
|
|
18: TypePointer UniformConstant 15(bvec2)
|
|
19(u_b2): 18(ptr) Variable UniformConstant
|
|
22(i_b2): 18(ptr) Variable UniformConstant
|
|
33: TypeVector 6(bool) 3
|
|
34: TypePointer Function 33(bvec3)
|
|
36: TypePointer UniformConstant 33(bvec3)
|
|
37(u_b3): 36(ptr) Variable UniformConstant
|
|
40(i_b3): 36(ptr) Variable UniformConstant
|
|
57: TypeVector 6(bool) 4
|
|
58: TypePointer Function 57(bvec4)
|
|
60: TypePointer UniformConstant 57(bvec4)
|
|
61(u_b4): 60(ptr) Variable UniformConstant
|
|
64(i_b4): 60(ptr) Variable UniformConstant
|
|
87: TypeInt 32 1
|
|
88: TypePointer Function 87(int)
|
|
90: TypePointer UniformConstant 87(int)
|
|
91(u_i): 90(ptr) Variable UniformConstant
|
|
93: TypePointer Input 87(int)
|
|
94(i_i): 93(ptr) Variable Input
|
|
97: TypeVector 87(int) 2
|
|
98: TypePointer Function 97(ivec2)
|
|
100: TypePointer UniformConstant 97(ivec2)
|
|
101(u_i2): 100(ptr) Variable UniformConstant
|
|
103: TypePointer Input 97(ivec2)
|
|
104(i_i2): 103(ptr) Variable Input
|
|
107: TypeVector 87(int) 3
|
|
108: TypePointer Function 107(ivec3)
|
|
110: TypePointer UniformConstant 107(ivec3)
|
|
111(u_i3): 110(ptr) Variable UniformConstant
|
|
113: TypePointer Input 107(ivec3)
|
|
114(i_i3): 113(ptr) Variable Input
|
|
117: TypeVector 87(int) 4
|
|
118: TypePointer Function 117(ivec4)
|
|
120: TypePointer UniformConstant 117(ivec4)
|
|
121(u_i4): 120(ptr) Variable UniformConstant
|
|
123: TypePointer Input 117(ivec4)
|
|
124(i_i4): 123(ptr) Variable Input
|
|
127: TypeFloat 32
|
|
128: TypePointer Function 127(float)
|
|
130: TypePointer UniformConstant 127(float)
|
|
131(u_f): 130(ptr) Variable UniformConstant
|
|
133: TypePointer Input 127(float)
|
|
134(i_f): 133(ptr) Variable Input
|
|
137: TypeVector 127(float) 2
|
|
138: TypePointer Function 137(fvec2)
|
|
140: TypePointer UniformConstant 137(fvec2)
|
|
141(u_f2): 140(ptr) Variable UniformConstant
|
|
143: TypePointer Input 137(fvec2)
|
|
144(i_f2): 143(ptr) Variable Input
|
|
147: TypeVector 127(float) 3
|
|
148: TypePointer Function 147(fvec3)
|
|
150: TypePointer UniformConstant 147(fvec3)
|
|
151(u_f3): 150(ptr) Variable UniformConstant
|
|
153: TypePointer Input 147(fvec3)
|
|
154(i_f3): 153(ptr) Variable Input
|
|
157: TypeVector 127(float) 4
|
|
158: TypePointer Function 157(fvec4)
|
|
160: TypePointer UniformConstant 157(fvec4)
|
|
161(u_f4): 160(ptr) Variable UniformConstant
|
|
163: TypePointer Input 157(fvec4)
|
|
164(i_f4): 163(ptr) Variable Input
|
|
167: TypePointer Output 157(fvec4)
|
|
168(gl_FragColor): 167(ptr) Variable Output
|
|
201: TypeInt 32 0
|
|
202: 201(int) Constant 0
|
|
206: 201(int) Constant 1
|
|
216: 201(int) Constant 2
|
|
229: 201(int) Constant 3
|
|
265: 127(float) Constant 1065353216
|
|
266: 157(fvec4) ConstantComposite 265 265 265 265
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
8(b): 7(ptr) Variable Function
|
|
17(b2): 16(ptr) Variable Function
|
|
35(b3): 34(ptr) Variable Function
|
|
59(b4): 58(ptr) Variable Function
|
|
89(i): 88(ptr) Variable Function
|
|
99(i2): 98(ptr) Variable Function
|
|
109(i3): 108(ptr) Variable Function
|
|
119(i4): 118(ptr) Variable Function
|
|
129(f): 128(ptr) Variable Function
|
|
139(f2): 138(ptr) Variable Function
|
|
149(f3): 148(ptr) Variable Function
|
|
159(f4): 158(ptr) Variable Function
|
|
169: 158(ptr) Variable Function
|
|
11: 6(bool) Load 10(u_b)
|
|
13: 6(bool) Load 12(i_b)
|
|
14: 6(bool) LogicalAnd 11 13
|
|
Store 8(b) 14
|
|
20: 15(bvec2) Load 19(u_b2)
|
|
21: 6(bool) CompositeExtract 20 0
|
|
23: 15(bvec2) Load 22(i_b2)
|
|
24: 6(bool) CompositeExtract 23 0
|
|
25: 6(bool) LogicalAnd 21 24
|
|
26: 15(bvec2) Load 19(u_b2)
|
|
27: 6(bool) CompositeExtract 26 1
|
|
28: 6(bool) LogicalAnd 25 27
|
|
29: 15(bvec2) Load 22(i_b2)
|
|
30: 6(bool) CompositeExtract 29 1
|
|
31: 6(bool) LogicalAnd 28 30
|
|
32: 15(bvec2) CompositeConstruct 31 31
|
|
Store 17(b2) 32
|
|
38: 33(bvec3) Load 37(u_b3)
|
|
39: 6(bool) CompositeExtract 38 0
|
|
41: 33(bvec3) Load 40(i_b3)
|
|
42: 6(bool) CompositeExtract 41 0
|
|
43: 6(bool) LogicalAnd 39 42
|
|
44: 33(bvec3) Load 37(u_b3)
|
|
45: 6(bool) CompositeExtract 44 1
|
|
46: 6(bool) LogicalAnd 43 45
|
|
47: 33(bvec3) Load 40(i_b3)
|
|
48: 6(bool) CompositeExtract 47 1
|
|
49: 6(bool) LogicalAnd 46 48
|
|
50: 33(bvec3) Load 37(u_b3)
|
|
51: 6(bool) CompositeExtract 50 2
|
|
52: 6(bool) LogicalAnd 49 51
|
|
53: 33(bvec3) Load 40(i_b3)
|
|
54: 6(bool) CompositeExtract 53 2
|
|
55: 6(bool) LogicalAnd 52 54
|
|
56: 33(bvec3) CompositeConstruct 55 55 55
|
|
Store 35(b3) 56
|
|
62: 57(bvec4) Load 61(u_b4)
|
|
63: 6(bool) CompositeExtract 62 0
|
|
65: 57(bvec4) Load 64(i_b4)
|
|
66: 6(bool) CompositeExtract 65 0
|
|
67: 6(bool) LogicalAnd 63 66
|
|
68: 57(bvec4) Load 61(u_b4)
|
|
69: 6(bool) CompositeExtract 68 1
|
|
70: 6(bool) LogicalAnd 67 69
|
|
71: 57(bvec4) Load 64(i_b4)
|
|
72: 6(bool) CompositeExtract 71 1
|
|
73: 6(bool) LogicalAnd 70 72
|
|
74: 57(bvec4) Load 61(u_b4)
|
|
75: 6(bool) CompositeExtract 74 2
|
|
76: 6(bool) LogicalAnd 73 75
|
|
77: 57(bvec4) Load 64(i_b4)
|
|
78: 6(bool) CompositeExtract 77 2
|
|
79: 6(bool) LogicalAnd 76 78
|
|
80: 57(bvec4) Load 61(u_b4)
|
|
81: 6(bool) CompositeExtract 80 3
|
|
82: 6(bool) LogicalAnd 79 81
|
|
83: 57(bvec4) Load 64(i_b4)
|
|
84: 6(bool) CompositeExtract 83 3
|
|
85: 6(bool) LogicalAnd 82 84
|
|
86: 57(bvec4) CompositeConstruct 85 85 85 85
|
|
Store 59(b4) 86
|
|
92: 87(int) Load 91(u_i)
|
|
95: 87(int) Load 94(i_i)
|
|
96: 87(int) IAdd 92 95
|
|
Store 89(i) 96
|
|
102: 97(ivec2) Load 101(u_i2)
|
|
105: 97(ivec2) Load 104(i_i2)
|
|
106: 97(ivec2) IAdd 102 105
|
|
Store 99(i2) 106
|
|
112: 107(ivec3) Load 111(u_i3)
|
|
115: 107(ivec3) Load 114(i_i3)
|
|
116: 107(ivec3) IAdd 112 115
|
|
Store 109(i3) 116
|
|
122: 117(ivec4) Load 121(u_i4)
|
|
125: 117(ivec4) Load 124(i_i4)
|
|
126: 117(ivec4) IAdd 122 125
|
|
Store 119(i4) 126
|
|
132: 127(float) Load 131(u_f)
|
|
135: 127(float) Load 134(i_f)
|
|
136: 127(float) FAdd 132 135
|
|
Store 129(f) 136
|
|
142: 137(fvec2) Load 141(u_f2)
|
|
145: 137(fvec2) Load 144(i_f2)
|
|
146: 137(fvec2) FAdd 142 145
|
|
Store 139(f2) 146
|
|
152: 147(fvec3) Load 151(u_f3)
|
|
155: 147(fvec3) Load 154(i_f3)
|
|
156: 147(fvec3) FAdd 152 155
|
|
Store 149(f3) 156
|
|
162: 157(fvec4) Load 161(u_f4)
|
|
165: 157(fvec4) Load 164(i_f4)
|
|
166: 157(fvec4) FAdd 162 165
|
|
Store 159(f4) 166
|
|
170: 6(bool) Load 8(b)
|
|
171: 15(bvec2) Load 17(b2)
|
|
172: 6(bool) CompositeExtract 171 0
|
|
173: 6(bool) LogicalOr 170 172
|
|
174: 15(bvec2) Load 17(b2)
|
|
175: 6(bool) CompositeExtract 174 1
|
|
176: 6(bool) LogicalOr 173 175
|
|
177: 33(bvec3) Load 35(b3)
|
|
178: 6(bool) CompositeExtract 177 0
|
|
179: 6(bool) LogicalOr 176 178
|
|
180: 33(bvec3) Load 35(b3)
|
|
181: 6(bool) CompositeExtract 180 1
|
|
182: 6(bool) LogicalOr 179 181
|
|
183: 33(bvec3) Load 35(b3)
|
|
184: 6(bool) CompositeExtract 183 2
|
|
185: 6(bool) LogicalOr 182 184
|
|
186: 57(bvec4) Load 59(b4)
|
|
187: 6(bool) CompositeExtract 186 0
|
|
188: 6(bool) LogicalOr 185 187
|
|
189: 57(bvec4) Load 59(b4)
|
|
190: 6(bool) CompositeExtract 189 1
|
|
191: 6(bool) LogicalOr 188 190
|
|
192: 57(bvec4) Load 59(b4)
|
|
193: 6(bool) CompositeExtract 192 2
|
|
194: 6(bool) LogicalOr 191 193
|
|
195: 57(bvec4) Load 59(b4)
|
|
196: 6(bool) CompositeExtract 195 3
|
|
197: 6(bool) LogicalOr 194 196
|
|
SelectionMerge 199 None
|
|
BranchConditional 197 198 264
|
|
198: Label
|
|
200: 87(int) Load 89(i)
|
|
203: 88(ptr) AccessChain 99(i2) 202
|
|
204: 87(int) Load 203
|
|
205: 87(int) IAdd 200 204
|
|
207: 88(ptr) AccessChain 99(i2) 206
|
|
208: 87(int) Load 207
|
|
209: 87(int) IAdd 205 208
|
|
210: 88(ptr) AccessChain 109(i3) 202
|
|
211: 87(int) Load 210
|
|
212: 87(int) IAdd 209 211
|
|
213: 88(ptr) AccessChain 109(i3) 206
|
|
214: 87(int) Load 213
|
|
215: 87(int) IAdd 212 214
|
|
217: 88(ptr) AccessChain 109(i3) 216
|
|
218: 87(int) Load 217
|
|
219: 87(int) IAdd 215 218
|
|
220: 88(ptr) AccessChain 119(i4) 202
|
|
221: 87(int) Load 220
|
|
222: 87(int) IAdd 219 221
|
|
223: 88(ptr) AccessChain 119(i4) 206
|
|
224: 87(int) Load 223
|
|
225: 87(int) IAdd 222 224
|
|
226: 88(ptr) AccessChain 119(i4) 216
|
|
227: 87(int) Load 226
|
|
228: 87(int) IAdd 225 227
|
|
230: 88(ptr) AccessChain 119(i4) 229
|
|
231: 87(int) Load 230
|
|
232: 87(int) IAdd 228 231
|
|
233: 127(float) ConvertSToF 232
|
|
234: 127(float) Load 129(f)
|
|
235: 127(float) FAdd 233 234
|
|
236: 128(ptr) AccessChain 139(f2) 202
|
|
237: 127(float) Load 236
|
|
238: 127(float) FAdd 235 237
|
|
239: 128(ptr) AccessChain 139(f2) 206
|
|
240: 127(float) Load 239
|
|
241: 127(float) FAdd 238 240
|
|
242: 128(ptr) AccessChain 149(f3) 202
|
|
243: 127(float) Load 242
|
|
244: 127(float) FAdd 241 243
|
|
245: 128(ptr) AccessChain 149(f3) 206
|
|
246: 127(float) Load 245
|
|
247: 127(float) FAdd 244 246
|
|
248: 128(ptr) AccessChain 149(f3) 216
|
|
249: 127(float) Load 248
|
|
250: 127(float) FAdd 247 249
|
|
251: 128(ptr) AccessChain 159(f4) 202
|
|
252: 127(float) Load 251
|
|
253: 127(float) FAdd 250 252
|
|
254: 128(ptr) AccessChain 159(f4) 206
|
|
255: 127(float) Load 254
|
|
256: 127(float) FAdd 253 255
|
|
257: 128(ptr) AccessChain 159(f4) 216
|
|
258: 127(float) Load 257
|
|
259: 127(float) FAdd 256 258
|
|
260: 128(ptr) AccessChain 159(f4) 229
|
|
261: 127(float) Load 260
|
|
262: 127(float) FAdd 259 261
|
|
263: 157(fvec4) CompositeConstruct 262 262 262 262
|
|
Store 169 263
|
|
Branch 199
|
|
264: Label
|
|
Store 169 266
|
|
Branch 199
|
|
199: Label
|
|
267: 157(fvec4) Load 169
|
|
Store 168(gl_FragColor) 267
|
|
Return
|
|
FunctionEnd
|