blob: 5809991fcccb0a9b707398c1d2aa96cea856ed06 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
|
spv.8bitstorage-uint.frag
// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 173
Capability Shader
Capability UniformAndStorageBuffer8BitAccess
Extension "SPV_KHR_8bit_storage"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginUpperLeft
Source GLSL 450
SourceExtension "GL_EXT_shader_8bit_storage"
Name 4 "main"
Name 12 "S"
MemberName 12(S) 0 "x"
MemberName 12(S) 1 "y"
MemberName 12(S) 2 "z"
Name 17 "B2"
MemberName 17(B2) 0 "o"
MemberName 17(B2) 1 "p"
MemberName 17(B2) 2 "q"
MemberName 17(B2) 3 "r"
MemberName 17(B2) 4 "u"
MemberName 17(B2) 5 "v"
MemberName 17(B2) 6 "x"
MemberName 17(B2) 7 "w"
Name 19 "b2"
Name 23 "S"
MemberName 23(S) 0 "x"
MemberName 23(S) 1 "y"
MemberName 23(S) 2 "z"
Name 25 "B1"
MemberName 25(B1) 0 "a"
MemberName 25(B1) 1 "b"
MemberName 25(B1) 2 "c"
MemberName 25(B1) 3 "d"
MemberName 25(B1) 4 "g"
MemberName 25(B1) 5 "h"
MemberName 25(B1) 6 "j"
Name 27 "b1"
Name 45 "S"
MemberName 45(S) 0 "x"
MemberName 45(S) 1 "y"
MemberName 45(S) 2 "z"
Name 49 "B5"
MemberName 49(B5) 0 "o"
MemberName 49(B5) 1 "p"
MemberName 49(B5) 2 "q"
MemberName 49(B5) 3 "r"
MemberName 49(B5) 4 "u"
MemberName 49(B5) 5 "v"
MemberName 49(B5) 6 "x"
MemberName 49(B5) 7 "w"
Name 51 "b5"
Name 69 "x0"
Name 75 "x1"
Name 89 "S2"
MemberName 89(S2) 0 "x"
MemberName 89(S2) 1 "y"
MemberName 89(S2) 2 "z"
Name 90 "S3"
MemberName 90(S3) 0 "x"
Name 91 "B4"
MemberName 91(B4) 0 "x"
MemberName 91(B4) 1 "y"
Name 93 "b4"
Name 94 "S2"
MemberName 94(S2) 0 "x"
MemberName 94(S2) 1 "y"
MemberName 94(S2) 2 "z"
Name 95 "B3"
MemberName 95(B3) 0 "x"
Name 97 "b3"
Name 114 "v3"
Name 136 "u3"
Decorate 11 ArrayStride 1
MemberDecorate 12(S) 0 Offset 0
MemberDecorate 12(S) 1 Offset 2
MemberDecorate 12(S) 2 Offset 4
Decorate 13 ArrayStride 8
Decorate 15 ArrayStride 2
Decorate 16 ArrayStride 1
MemberDecorate 17(B2) 0 Offset 0
MemberDecorate 17(B2) 1 Offset 2
MemberDecorate 17(B2) 2 Offset 4
MemberDecorate 17(B2) 3 Offset 7
MemberDecorate 17(B2) 4 Offset 12
MemberDecorate 17(B2) 5 Offset 20
MemberDecorate 17(B2) 6 Offset 36
MemberDecorate 17(B2) 7 Offset 236
Decorate 17(B2) BufferBlock
Decorate 19(b2) DescriptorSet 0
Decorate 19(b2) Binding 1
Decorate 22 ArrayStride 16
MemberDecorate 23(S) 0 Offset 0
MemberDecorate 23(S) 1 Offset 2
MemberDecorate 23(S) 2 Offset 4
Decorate 24 ArrayStride 16
MemberDecorate 25(B1) 0 Offset 0
MemberDecorate 25(B1) 1 Offset 2
MemberDecorate 25(B1) 2 Offset 4
MemberDecorate 25(B1) 3 Offset 16
MemberDecorate 25(B1) 4 Offset 48
MemberDecorate 25(B1) 5 Offset 64
MemberDecorate 25(B1) 6 Offset 96
Decorate 25(B1) Block
Decorate 27(b1) DescriptorSet 0
Decorate 27(b1) Binding 0
Decorate 44 ArrayStride 16
MemberDecorate 45(S) 0 Offset 0
MemberDecorate 45(S) 1 Offset 2
MemberDecorate 45(S) 2 Offset 4
Decorate 46 ArrayStride 16
Decorate 47 ArrayStride 16
Decorate 48 ArrayStride 16
MemberDecorate 49(B5) 0 Offset 0
MemberDecorate 49(B5) 1 Offset 2
MemberDecorate 49(B5) 2 Offset 4
MemberDecorate 49(B5) 3 Offset 16
MemberDecorate 49(B5) 4 Offset 48
MemberDecorate 49(B5) 5 Offset 64
MemberDecorate 49(B5) 6 Offset 96
MemberDecorate 49(B5) 7 Offset 1696
Decorate 49(B5) Block
Decorate 51(b5) DescriptorSet 0
Decorate 51(b5) Binding 2
MemberDecorate 89(S2) 0 ColMajor
MemberDecorate 89(S2) 0 Offset 0
MemberDecorate 89(S2) 0 MatrixStride 16
MemberDecorate 89(S2) 1 Offset 64
MemberDecorate 89(S2) 2 Offset 68
MemberDecorate 90(S3) 0 Offset 0
MemberDecorate 91(B4) 0 Offset 0
MemberDecorate 91(B4) 1 Offset 80
Decorate 91(B4) BufferBlock
Decorate 93(b4) DescriptorSet 0
Decorate 93(b4) Binding 4
MemberDecorate 94(S2) 0 RowMajor
MemberDecorate 94(S2) 0 Offset 0
MemberDecorate 94(S2) 0 MatrixStride 16
MemberDecorate 94(S2) 1 Offset 64
MemberDecorate 94(S2) 2 Offset 68
MemberDecorate 95(B3) 0 Offset 0
Decorate 95(B3) BufferBlock
Decorate 97(b3) DescriptorSet 0
Decorate 97(b3) Binding 3
2: TypeVoid
3: TypeFunction 2
6: TypeInt 8 0
7: TypeVector 6(int8_t) 2
8: TypeVector 6(int8_t) 3
9: TypeInt 32 0
10: 9(int) Constant 2
11: TypeArray 6(int8_t) 10
12(S): TypeStruct 6(int8_t) 7(i8vec2) 8(i8vec3)
13: TypeArray 12(S) 10
14: 9(int) Constant 100
15: TypeArray 7(i8vec2) 14
16: TypeRuntimeArray 6(int8_t)
17(B2): TypeStruct 6(int8_t) 7(i8vec2) 8(i8vec3) 11 12(S) 13 15 16
18: TypePointer Uniform 17(B2)
19(b2): 18(ptr) Variable Uniform
20: TypeInt 32 1
21: 20(int) Constant 0
22: TypeArray 6(int8_t) 10
23(S): TypeStruct 6(int8_t) 7(i8vec2) 8(i8vec3)
24: TypeArray 23(S) 10
25(B1): TypeStruct 6(int8_t) 7(i8vec2) 8(i8vec3) 22 23(S) 24 9(int)
26: TypePointer Uniform 25(B1)
27(b1): 26(ptr) Variable Uniform
28: TypePointer Uniform 6(int8_t)
32: 20(int) Constant 1
33: 20(int) Constant 2
34: TypePointer Uniform 8(i8vec3)
37: TypeVector 9(int) 3
39: TypeVector 9(int) 2
42: TypePointer Uniform 7(i8vec2)
44: TypeArray 6(int8_t) 10
45(S): TypeStruct 6(int8_t) 7(i8vec2) 8(i8vec3)
46: TypeArray 45(S) 10
47: TypeArray 7(i8vec2) 14
48: TypeArray 6(int8_t) 14
49(B5): TypeStruct 6(int8_t) 7(i8vec2) 8(i8vec3) 44 45(S) 46 47 48
50: TypePointer Uniform 49(B5)
51(b5): 50(ptr) Variable Uniform
58: 20(int) Constant 3
68: TypePointer Function 9(int)
73: TypeVector 9(int) 4
74: TypePointer Function 73(ivec4)
82: 9(int) Constant 1
86: TypeFloat 32
87: TypeVector 86(float) 4
88: TypeMatrix 87(fvec4) 4
89(S2): TypeStruct 88 6(int8_t) 9(int)
90(S3): TypeStruct 89(S2)
91(B4): TypeStruct 89(S2) 90(S3)
92: TypePointer Uniform 91(B4)
93(b4): 92(ptr) Variable Uniform
94(S2): TypeStruct 88 6(int8_t) 9(int)
95(B3): TypeStruct 94(S2)
96: TypePointer Uniform 95(B3)
97(b3): 96(ptr) Variable Uniform
98: TypePointer Uniform 88
105: 9(int) Constant 0
109: 20(int) Constant 5
113: TypePointer Function 37(ivec3)
115: 20(int) Constant 7
116: 20(int) Constant 6
117: TypePointer Uniform 9(int)
167: 39(ivec2) ConstantComposite 82 10
170: 9(int) Constant 3
4(main): 2 Function None 3
5: Label
69(x0): 68(ptr) Variable Function
75(x1): 74(ptr) Variable Function
114(v3): 113(ptr) Variable Function
136(u3): 113(ptr) Variable Function
29: 28(ptr) AccessChain 27(b1) 21
30: 6(int8_t) Load 29
31: 28(ptr) AccessChain 19(b2) 21
Store 31 30
35: 34(ptr) AccessChain 19(b2) 33
36: 8(i8vec3) Load 35
38: 37(ivec3) UConvert 36
40: 39(ivec2) VectorShuffle 38 38 0 1
41: 7(i8vec2) UConvert 40
43: 42(ptr) AccessChain 19(b2) 32
Store 43 41
52: 34(ptr) AccessChain 51(b5) 33
53: 8(i8vec3) Load 52
54: 37(ivec3) UConvert 53
55: 39(ivec2) VectorShuffle 54 54 0 1
56: 7(i8vec2) UConvert 55
57: 42(ptr) AccessChain 19(b2) 32
Store 57 56
59: 28(ptr) AccessChain 19(b2) 58 21
60: 6(int8_t) Load 59
61: 28(ptr) AccessChain 19(b2) 58 21
Store 61 60
62: 28(ptr) AccessChain 51(b5) 58 32
63: 6(int8_t) Load 62
64: 28(ptr) AccessChain 19(b2) 58 32
Store 64 63
65: 42(ptr) AccessChain 19(b2) 32
66: 7(i8vec2) Load 65
67: 42(ptr) AccessChain 19(b2) 32
Store 67 66
70: 28(ptr) AccessChain 27(b1) 21
71: 6(int8_t) Load 70
72: 9(int) UConvert 71
Store 69(x0) 72
76: 28(ptr) AccessChain 27(b1) 21
77: 6(int8_t) Load 76
78: 9(int) UConvert 77
79: 42(ptr) AccessChain 19(b2) 32
80: 7(i8vec2) Load 79
81: 39(ivec2) UConvert 80
83: 9(int) CompositeExtract 81 0
84: 9(int) CompositeExtract 81 1
85: 73(ivec4) CompositeConstruct 78 83 84 82
Store 75(x1) 85
99: 98(ptr) AccessChain 97(b3) 21 21
100: 88 Load 99
101: 98(ptr) AccessChain 93(b4) 21 21
Store 101 100
102: 42(ptr) AccessChain 19(b2) 32
103: 7(i8vec2) Load 102
104: 39(ivec2) UConvert 103
106: 9(int) CompositeExtract 104 0
107: 6(int8_t) UConvert 106
108: 28(ptr) AccessChain 19(b2) 21
Store 108 107
110: 42(ptr) AccessChain 19(b2) 109 32 32
111: 7(i8vec2) Load 110
112: 42(ptr) AccessChain 19(b2) 32
Store 112 111
118: 117(ptr) AccessChain 27(b1) 116
119: 9(int) Load 118
120: 28(ptr) AccessChain 19(b2) 115 119
121: 6(int8_t) Load 120
122: 9(int) UConvert 121
123: 117(ptr) AccessChain 27(b1) 116
124: 9(int) Load 123
125: 9(int) IAdd 124 82
126: 28(ptr) AccessChain 19(b2) 115 125
127: 6(int8_t) Load 126
128: 9(int) UConvert 127
129: 117(ptr) AccessChain 27(b1) 116
130: 9(int) Load 129
131: 9(int) IAdd 130 10
132: 28(ptr) AccessChain 19(b2) 115 131
133: 6(int8_t) Load 132
134: 9(int) UConvert 133
135: 37(ivec3) CompositeConstruct 122 128 134
Store 114(v3) 135
137: 117(ptr) AccessChain 27(b1) 116
138: 9(int) Load 137
139: 28(ptr) AccessChain 51(b5) 115 138
140: 6(int8_t) Load 139
141: 9(int) UConvert 140
142: 117(ptr) AccessChain 27(b1) 116
143: 9(int) Load 142
144: 9(int) IAdd 143 82
145: 28(ptr) AccessChain 51(b5) 115 144
146: 6(int8_t) Load 145
147: 9(int) UConvert 146
148: 117(ptr) AccessChain 27(b1) 116
149: 9(int) Load 148
150: 9(int) IAdd 149 10
151: 28(ptr) AccessChain 51(b5) 115 150
152: 6(int8_t) Load 151
153: 9(int) UConvert 152
154: 37(ivec3) CompositeConstruct 141 147 153
Store 136(u3) 154
155: 42(ptr) AccessChain 19(b2) 116 21
156: 7(i8vec2) Load 155
157: 42(ptr) AccessChain 19(b2) 116 21
Store 157 156
158: 42(ptr) AccessChain 51(b5) 116 32
159: 7(i8vec2) Load 158
160: 42(ptr) AccessChain 19(b2) 116 32
Store 160 159
161: 28(ptr) AccessChain 27(b1) 21
162: 6(int8_t) Load 161
163: 28(ptr) AccessChain 19(b2) 32 105
Store 163 162
164: 28(ptr) AccessChain 19(b2) 32 105
165: 6(int8_t) Load 164
166: 28(ptr) AccessChain 19(b2) 21
Store 166 165
168: 7(i8vec2) UConvert 167
169: 42(ptr) AccessChain 19(b2) 32
Store 169 168
171: 6(int8_t) UConvert 170
172: 28(ptr) AccessChain 19(b2) 21
Store 172 171
Return
FunctionEnd
|