blob: 830b3e329625e65dad2e39e879f575d4d689f604 (
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
|
spv.8bitstorage-int.frag
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 171
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 88 "S2"
MemberName 88(S2) 0 "x"
MemberName 88(S2) 1 "y"
MemberName 88(S2) 2 "z"
Name 89 "S3"
MemberName 89(S3) 0 "x"
Name 90 "B4"
MemberName 90(B4) 0 "x"
MemberName 90(B4) 1 "y"
Name 92 "b4"
Name 93 "S2"
MemberName 93(S2) 0 "x"
MemberName 93(S2) 1 "y"
MemberName 93(S2) 2 "z"
Name 94 "B3"
MemberName 94(B3) 0 "x"
Name 96 "b3"
Name 113 "v3"
Name 135 "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 88(S2) 0 ColMajor
MemberDecorate 88(S2) 0 Offset 0
MemberDecorate 88(S2) 0 MatrixStride 16
MemberDecorate 88(S2) 1 Offset 64
MemberDecorate 88(S2) 2 Offset 68
MemberDecorate 89(S3) 0 Offset 0
MemberDecorate 90(B4) 0 Offset 0
MemberDecorate 90(B4) 1 Offset 80
Decorate 90(B4) BufferBlock
Decorate 92(b4) DescriptorSet 0
Decorate 92(b4) Binding 4
MemberDecorate 93(S2) 0 RowMajor
MemberDecorate 93(S2) 0 Offset 0
MemberDecorate 93(S2) 0 MatrixStride 16
MemberDecorate 93(S2) 1 Offset 64
MemberDecorate 93(S2) 2 Offset 68
MemberDecorate 94(B3) 0 Offset 0
Decorate 94(B3) BufferBlock
Decorate 96(b3) DescriptorSet 0
Decorate 96(b3) Binding 3
2: TypeVoid
3: TypeFunction 2
6: TypeInt 8 1
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 20(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 20(int) 3
39: TypeVector 20(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 20(int)
73: TypeVector 20(int) 4
74: TypePointer Function 73(ivec4)
85: TypeFloat 32
86: TypeVector 85(float) 4
87: TypeMatrix 86(fvec4) 4
88(S2): TypeStruct 87 6(int8_t) 20(int)
89(S3): TypeStruct 88(S2)
90(B4): TypeStruct 88(S2) 89(S3)
91: TypePointer Uniform 90(B4)
92(b4): 91(ptr) Variable Uniform
93(S2): TypeStruct 87 6(int8_t) 20(int)
94(B3): TypeStruct 93(S2)
95: TypePointer Uniform 94(B3)
96(b3): 95(ptr) Variable Uniform
97: TypePointer Uniform 87
104: 9(int) Constant 0
108: 20(int) Constant 5
112: TypePointer Function 37(ivec3)
114: 20(int) Constant 7
115: 20(int) Constant 6
116: TypePointer Uniform 20(int)
166: 39(ivec2) ConstantComposite 32 33
4(main): 2 Function None 3
5: Label
69(x0): 68(ptr) Variable Function
75(x1): 74(ptr) Variable Function
113(v3): 112(ptr) Variable Function
135(u3): 112(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) SConvert 36
40: 39(ivec2) VectorShuffle 38 38 0 1
41: 7(i8vec2) SConvert 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) SConvert 53
55: 39(ivec2) VectorShuffle 54 54 0 1
56: 7(i8vec2) SConvert 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: 20(int) SConvert 71
Store 69(x0) 72
76: 28(ptr) AccessChain 27(b1) 21
77: 6(int8_t) Load 76
78: 20(int) SConvert 77
79: 42(ptr) AccessChain 19(b2) 32
80: 7(i8vec2) Load 79
81: 39(ivec2) SConvert 80
82: 20(int) CompositeExtract 81 0
83: 20(int) CompositeExtract 81 1
84: 73(ivec4) CompositeConstruct 78 82 83 32
Store 75(x1) 84
98: 97(ptr) AccessChain 96(b3) 21 21
99: 87 Load 98
100: 97(ptr) AccessChain 92(b4) 21 21
Store 100 99
101: 42(ptr) AccessChain 19(b2) 32
102: 7(i8vec2) Load 101
103: 39(ivec2) SConvert 102
105: 20(int) CompositeExtract 103 0
106: 6(int8_t) SConvert 105
107: 28(ptr) AccessChain 19(b2) 21
Store 107 106
109: 42(ptr) AccessChain 19(b2) 108 32 32
110: 7(i8vec2) Load 109
111: 42(ptr) AccessChain 19(b2) 32
Store 111 110
117: 116(ptr) AccessChain 27(b1) 115
118: 20(int) Load 117
119: 28(ptr) AccessChain 19(b2) 114 118
120: 6(int8_t) Load 119
121: 20(int) SConvert 120
122: 116(ptr) AccessChain 27(b1) 115
123: 20(int) Load 122
124: 20(int) IAdd 123 32
125: 28(ptr) AccessChain 19(b2) 114 124
126: 6(int8_t) Load 125
127: 20(int) SConvert 126
128: 116(ptr) AccessChain 27(b1) 115
129: 20(int) Load 128
130: 20(int) IAdd 129 33
131: 28(ptr) AccessChain 19(b2) 114 130
132: 6(int8_t) Load 131
133: 20(int) SConvert 132
134: 37(ivec3) CompositeConstruct 121 127 133
Store 113(v3) 134
136: 116(ptr) AccessChain 27(b1) 115
137: 20(int) Load 136
138: 28(ptr) AccessChain 51(b5) 114 137
139: 6(int8_t) Load 138
140: 20(int) SConvert 139
141: 116(ptr) AccessChain 27(b1) 115
142: 20(int) Load 141
143: 20(int) IAdd 142 32
144: 28(ptr) AccessChain 51(b5) 114 143
145: 6(int8_t) Load 144
146: 20(int) SConvert 145
147: 116(ptr) AccessChain 27(b1) 115
148: 20(int) Load 147
149: 20(int) IAdd 148 33
150: 28(ptr) AccessChain 51(b5) 114 149
151: 6(int8_t) Load 150
152: 20(int) SConvert 151
153: 37(ivec3) CompositeConstruct 140 146 152
Store 135(u3) 153
154: 42(ptr) AccessChain 19(b2) 115 21
155: 7(i8vec2) Load 154
156: 42(ptr) AccessChain 19(b2) 115 21
Store 156 155
157: 42(ptr) AccessChain 51(b5) 115 32
158: 7(i8vec2) Load 157
159: 42(ptr) AccessChain 19(b2) 115 32
Store 159 158
160: 28(ptr) AccessChain 27(b1) 21
161: 6(int8_t) Load 160
162: 28(ptr) AccessChain 19(b2) 32 104
Store 162 161
163: 28(ptr) AccessChain 19(b2) 32 104
164: 6(int8_t) Load 163
165: 28(ptr) AccessChain 19(b2) 21
Store 165 164
167: 7(i8vec2) SConvert 166
168: 42(ptr) AccessChain 19(b2) 32
Store 168 167
169: 6(int8_t) SConvert 58
170: 28(ptr) AccessChain 19(b2) 21
Store 170 169
Return
FunctionEnd
|