SPV: Create more access chains addressing a few swizzling issues.
- Fixes #1233 - Treats local bools like anything else - more consistently deals with a dynamic component selection
This commit is contained in:
parent
2651ccaec8
commit
5c3eed542d
8 changed files with 764 additions and 716 deletions
|
|
@ -6,7 +6,7 @@ spv.types.frag
|
|||
Capability Shader
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint Fragment 4 "main" 91 93 100 102 109 111 118 120 127 129 136 138 145 147 154 156 160
|
||||
EntryPoint Fragment 4 "main" 96 98 105 107 114 116 123 125 132 134 141 143 150 152 159 161 165
|
||||
ExecutionMode 4 OriginUpperLeft
|
||||
Source GLSL 140
|
||||
Name 4 "main"
|
||||
|
|
@ -15,47 +15,47 @@ spv.types.frag
|
|||
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 93 "i_i"
|
||||
Name 98 "i2"
|
||||
Name 100 "u_i2"
|
||||
Name 102 "i_i2"
|
||||
Name 107 "i3"
|
||||
Name 109 "u_i3"
|
||||
Name 111 "i_i3"
|
||||
Name 116 "i4"
|
||||
Name 118 "u_i4"
|
||||
Name 120 "i_i4"
|
||||
Name 125 "f"
|
||||
Name 127 "u_f"
|
||||
Name 129 "i_f"
|
||||
Name 134 "f2"
|
||||
Name 136 "u_f2"
|
||||
Name 138 "i_f2"
|
||||
Name 143 "f3"
|
||||
Name 145 "u_f3"
|
||||
Name 147 "i_f3"
|
||||
Name 152 "f4"
|
||||
Name 154 "u_f4"
|
||||
Name 156 "i_f4"
|
||||
Name 160 "gl_FragColor"
|
||||
Decorate 91(u_i) Flat
|
||||
Decorate 93(i_i) Flat
|
||||
Decorate 100(u_i2) Flat
|
||||
Decorate 102(i_i2) Flat
|
||||
Decorate 109(u_i3) Flat
|
||||
Decorate 111(i_i3) Flat
|
||||
Decorate 118(u_i4) Flat
|
||||
Decorate 120(i_i4) Flat
|
||||
Decorate 160(gl_FragColor) Location 0
|
||||
Name 24 "i_b2"
|
||||
Name 38 "b3"
|
||||
Name 40 "u_b3"
|
||||
Name 43 "i_b3"
|
||||
Name 63 "b4"
|
||||
Name 65 "u_b4"
|
||||
Name 68 "i_b4"
|
||||
Name 94 "i"
|
||||
Name 96 "u_i"
|
||||
Name 98 "i_i"
|
||||
Name 103 "i2"
|
||||
Name 105 "u_i2"
|
||||
Name 107 "i_i2"
|
||||
Name 112 "i3"
|
||||
Name 114 "u_i3"
|
||||
Name 116 "i_i3"
|
||||
Name 121 "i4"
|
||||
Name 123 "u_i4"
|
||||
Name 125 "i_i4"
|
||||
Name 130 "f"
|
||||
Name 132 "u_f"
|
||||
Name 134 "i_f"
|
||||
Name 139 "f2"
|
||||
Name 141 "u_f2"
|
||||
Name 143 "i_f2"
|
||||
Name 148 "f3"
|
||||
Name 150 "u_f3"
|
||||
Name 152 "i_f3"
|
||||
Name 157 "f4"
|
||||
Name 159 "u_f4"
|
||||
Name 161 "i_f4"
|
||||
Name 165 "gl_FragColor"
|
||||
Decorate 96(u_i) Flat
|
||||
Decorate 98(i_i) Flat
|
||||
Decorate 105(u_i2) Flat
|
||||
Decorate 107(i_i2) Flat
|
||||
Decorate 114(u_i3) Flat
|
||||
Decorate 116(i_i3) Flat
|
||||
Decorate 123(u_i4) Flat
|
||||
Decorate 125(i_i4) Flat
|
||||
Decorate 165(gl_FragColor) Location 0
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeBool
|
||||
|
|
@ -67,271 +67,271 @@ spv.types.frag
|
|||
16: TypePointer Function 15(bvec2)
|
||||
18: TypePointer Private 15(bvec2)
|
||||
19(u_b2): 18(ptr) Variable Private
|
||||
22(i_b2): 18(ptr) Variable Private
|
||||
33: TypeVector 6(bool) 3
|
||||
34: TypePointer Function 33(bvec3)
|
||||
36: TypePointer Private 33(bvec3)
|
||||
37(u_b3): 36(ptr) Variable Private
|
||||
40(i_b3): 36(ptr) Variable Private
|
||||
57: TypeVector 6(bool) 4
|
||||
58: TypePointer Function 57(bvec4)
|
||||
60: TypePointer Private 57(bvec4)
|
||||
61(u_b4): 60(ptr) Variable Private
|
||||
64(i_b4): 60(ptr) Variable Private
|
||||
87: TypeInt 32 1
|
||||
88: TypePointer Function 87(int)
|
||||
90: TypePointer Input 87(int)
|
||||
91(u_i): 90(ptr) Variable Input
|
||||
93(i_i): 90(ptr) Variable Input
|
||||
96: TypeVector 87(int) 2
|
||||
97: TypePointer Function 96(ivec2)
|
||||
99: TypePointer Input 96(ivec2)
|
||||
100(u_i2): 99(ptr) Variable Input
|
||||
102(i_i2): 99(ptr) Variable Input
|
||||
105: TypeVector 87(int) 3
|
||||
106: TypePointer Function 105(ivec3)
|
||||
108: TypePointer Input 105(ivec3)
|
||||
109(u_i3): 108(ptr) Variable Input
|
||||
111(i_i3): 108(ptr) Variable Input
|
||||
114: TypeVector 87(int) 4
|
||||
115: TypePointer Function 114(ivec4)
|
||||
117: TypePointer Input 114(ivec4)
|
||||
118(u_i4): 117(ptr) Variable Input
|
||||
120(i_i4): 117(ptr) Variable Input
|
||||
123: TypeFloat 32
|
||||
124: TypePointer Function 123(float)
|
||||
126: TypePointer Input 123(float)
|
||||
127(u_f): 126(ptr) Variable Input
|
||||
129(i_f): 126(ptr) Variable Input
|
||||
132: TypeVector 123(float) 2
|
||||
133: TypePointer Function 132(fvec2)
|
||||
135: TypePointer Input 132(fvec2)
|
||||
136(u_f2): 135(ptr) Variable Input
|
||||
138(i_f2): 135(ptr) Variable Input
|
||||
141: TypeVector 123(float) 3
|
||||
142: TypePointer Function 141(fvec3)
|
||||
144: TypePointer Input 141(fvec3)
|
||||
145(u_f3): 144(ptr) Variable Input
|
||||
147(i_f3): 144(ptr) Variable Input
|
||||
150: TypeVector 123(float) 4
|
||||
151: TypePointer Function 150(fvec4)
|
||||
153: TypePointer Input 150(fvec4)
|
||||
154(u_f4): 153(ptr) Variable Input
|
||||
156(i_f4): 153(ptr) Variable Input
|
||||
159: TypePointer Output 150(fvec4)
|
||||
160(gl_FragColor): 159(ptr) Variable Output
|
||||
193: TypeInt 32 0
|
||||
194: 193(int) Constant 0
|
||||
198: 193(int) Constant 1
|
||||
208: 193(int) Constant 2
|
||||
221: 193(int) Constant 3
|
||||
257: 123(float) Constant 1065353216
|
||||
258: 150(fvec4) ConstantComposite 257 257 257 257
|
||||
20: TypeInt 32 0
|
||||
21: 20(int) Constant 0
|
||||
24(i_b2): 18(ptr) Variable Private
|
||||
28: 20(int) Constant 1
|
||||
36: TypeVector 6(bool) 3
|
||||
37: TypePointer Function 36(bvec3)
|
||||
39: TypePointer Private 36(bvec3)
|
||||
40(u_b3): 39(ptr) Variable Private
|
||||
43(i_b3): 39(ptr) Variable Private
|
||||
53: 20(int) Constant 2
|
||||
61: TypeVector 6(bool) 4
|
||||
62: TypePointer Function 61(bvec4)
|
||||
64: TypePointer Private 61(bvec4)
|
||||
65(u_b4): 64(ptr) Variable Private
|
||||
68(i_b4): 64(ptr) Variable Private
|
||||
84: 20(int) Constant 3
|
||||
92: TypeInt 32 1
|
||||
93: TypePointer Function 92(int)
|
||||
95: TypePointer Input 92(int)
|
||||
96(u_i): 95(ptr) Variable Input
|
||||
98(i_i): 95(ptr) Variable Input
|
||||
101: TypeVector 92(int) 2
|
||||
102: TypePointer Function 101(ivec2)
|
||||
104: TypePointer Input 101(ivec2)
|
||||
105(u_i2): 104(ptr) Variable Input
|
||||
107(i_i2): 104(ptr) Variable Input
|
||||
110: TypeVector 92(int) 3
|
||||
111: TypePointer Function 110(ivec3)
|
||||
113: TypePointer Input 110(ivec3)
|
||||
114(u_i3): 113(ptr) Variable Input
|
||||
116(i_i3): 113(ptr) Variable Input
|
||||
119: TypeVector 92(int) 4
|
||||
120: TypePointer Function 119(ivec4)
|
||||
122: TypePointer Input 119(ivec4)
|
||||
123(u_i4): 122(ptr) Variable Input
|
||||
125(i_i4): 122(ptr) Variable Input
|
||||
128: TypeFloat 32
|
||||
129: TypePointer Function 128(float)
|
||||
131: TypePointer Input 128(float)
|
||||
132(u_f): 131(ptr) Variable Input
|
||||
134(i_f): 131(ptr) Variable Input
|
||||
137: TypeVector 128(float) 2
|
||||
138: TypePointer Function 137(fvec2)
|
||||
140: TypePointer Input 137(fvec2)
|
||||
141(u_f2): 140(ptr) Variable Input
|
||||
143(i_f2): 140(ptr) Variable Input
|
||||
146: TypeVector 128(float) 3
|
||||
147: TypePointer Function 146(fvec3)
|
||||
149: TypePointer Input 146(fvec3)
|
||||
150(u_f3): 149(ptr) Variable Input
|
||||
152(i_f3): 149(ptr) Variable Input
|
||||
155: TypeVector 128(float) 4
|
||||
156: TypePointer Function 155(fvec4)
|
||||
158: TypePointer Input 155(fvec4)
|
||||
159(u_f4): 158(ptr) Variable Input
|
||||
161(i_f4): 158(ptr) Variable Input
|
||||
164: TypePointer Output 155(fvec4)
|
||||
165(gl_FragColor): 164(ptr) Variable Output
|
||||
257: 128(float) Constant 1065353216
|
||||
258: 155(fvec4) ConstantComposite 257 257 257 257
|
||||
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
|
||||
98(i2): 97(ptr) Variable Function
|
||||
107(i3): 106(ptr) Variable Function
|
||||
116(i4): 115(ptr) Variable Function
|
||||
125(f): 124(ptr) Variable Function
|
||||
134(f2): 133(ptr) Variable Function
|
||||
143(f3): 142(ptr) Variable Function
|
||||
152(f4): 151(ptr) Variable Function
|
||||
161: 151(ptr) Variable Function
|
||||
38(b3): 37(ptr) Variable Function
|
||||
63(b4): 62(ptr) Variable Function
|
||||
94(i): 93(ptr) Variable Function
|
||||
103(i2): 102(ptr) Variable Function
|
||||
112(i3): 111(ptr) Variable Function
|
||||
121(i4): 120(ptr) Variable Function
|
||||
130(f): 129(ptr) Variable Function
|
||||
139(f2): 138(ptr) Variable Function
|
||||
148(f3): 147(ptr) Variable Function
|
||||
157(f4): 156(ptr) Variable Function
|
||||
166: 156(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
|
||||
22: 9(ptr) AccessChain 19(u_b2) 21
|
||||
23: 6(bool) Load 22
|
||||
25: 9(ptr) AccessChain 24(i_b2) 21
|
||||
26: 6(bool) Load 25
|
||||
27: 6(bool) LogicalAnd 23 26
|
||||
29: 9(ptr) AccessChain 19(u_b2) 28
|
||||
30: 6(bool) Load 29
|
||||
31: 6(bool) LogicalAnd 27 30
|
||||
32: 9(ptr) AccessChain 24(i_b2) 28
|
||||
33: 6(bool) Load 32
|
||||
34: 6(bool) LogicalAnd 31 33
|
||||
35: 15(bvec2) CompositeConstruct 34 34
|
||||
Store 17(b2) 35
|
||||
41: 9(ptr) AccessChain 40(u_b3) 21
|
||||
42: 6(bool) Load 41
|
||||
44: 9(ptr) AccessChain 43(i_b3) 21
|
||||
45: 6(bool) Load 44
|
||||
46: 6(bool) LogicalAnd 42 45
|
||||
47: 9(ptr) AccessChain 40(u_b3) 28
|
||||
48: 6(bool) Load 47
|
||||
49: 6(bool) LogicalAnd 46 48
|
||||
50: 33(bvec3) Load 37(u_b3)
|
||||
51: 6(bool) CompositeExtract 50 2
|
||||
50: 9(ptr) AccessChain 43(i_b3) 28
|
||||
51: 6(bool) Load 50
|
||||
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)
|
||||
94: 87(int) Load 93(i_i)
|
||||
95: 87(int) IAdd 92 94
|
||||
Store 89(i) 95
|
||||
101: 96(ivec2) Load 100(u_i2)
|
||||
103: 96(ivec2) Load 102(i_i2)
|
||||
104: 96(ivec2) IAdd 101 103
|
||||
Store 98(i2) 104
|
||||
110: 105(ivec3) Load 109(u_i3)
|
||||
112: 105(ivec3) Load 111(i_i3)
|
||||
113: 105(ivec3) IAdd 110 112
|
||||
Store 107(i3) 113
|
||||
119: 114(ivec4) Load 118(u_i4)
|
||||
121: 114(ivec4) Load 120(i_i4)
|
||||
122: 114(ivec4) IAdd 119 121
|
||||
Store 116(i4) 122
|
||||
128: 123(float) Load 127(u_f)
|
||||
130: 123(float) Load 129(i_f)
|
||||
131: 123(float) FAdd 128 130
|
||||
Store 125(f) 131
|
||||
137: 132(fvec2) Load 136(u_f2)
|
||||
139: 132(fvec2) Load 138(i_f2)
|
||||
140: 132(fvec2) FAdd 137 139
|
||||
Store 134(f2) 140
|
||||
146: 141(fvec3) Load 145(u_f3)
|
||||
148: 141(fvec3) Load 147(i_f3)
|
||||
149: 141(fvec3) FAdd 146 148
|
||||
Store 143(f3) 149
|
||||
155: 150(fvec4) Load 154(u_f4)
|
||||
157: 150(fvec4) Load 156(i_f4)
|
||||
158: 150(fvec4) FAdd 155 157
|
||||
Store 152(f4) 158
|
||||
162: 6(bool) Load 8(b)
|
||||
163: 15(bvec2) Load 17(b2)
|
||||
164: 6(bool) CompositeExtract 163 0
|
||||
165: 6(bool) LogicalOr 162 164
|
||||
166: 15(bvec2) Load 17(b2)
|
||||
167: 6(bool) CompositeExtract 166 1
|
||||
168: 6(bool) LogicalOr 165 167
|
||||
169: 33(bvec3) Load 35(b3)
|
||||
170: 6(bool) CompositeExtract 169 0
|
||||
171: 6(bool) LogicalOr 168 170
|
||||
172: 33(bvec3) Load 35(b3)
|
||||
173: 6(bool) CompositeExtract 172 1
|
||||
174: 6(bool) LogicalOr 171 173
|
||||
175: 33(bvec3) Load 35(b3)
|
||||
176: 6(bool) CompositeExtract 175 2
|
||||
177: 6(bool) LogicalOr 174 176
|
||||
178: 57(bvec4) Load 59(b4)
|
||||
179: 6(bool) CompositeExtract 178 0
|
||||
180: 6(bool) LogicalOr 177 179
|
||||
181: 57(bvec4) Load 59(b4)
|
||||
182: 6(bool) CompositeExtract 181 1
|
||||
183: 6(bool) LogicalOr 180 182
|
||||
184: 57(bvec4) Load 59(b4)
|
||||
185: 6(bool) CompositeExtract 184 2
|
||||
186: 6(bool) LogicalOr 183 185
|
||||
187: 57(bvec4) Load 59(b4)
|
||||
188: 6(bool) CompositeExtract 187 3
|
||||
189: 6(bool) LogicalOr 186 188
|
||||
SelectionMerge 191 None
|
||||
BranchConditional 189 190 256
|
||||
190: Label
|
||||
192: 87(int) Load 89(i)
|
||||
195: 88(ptr) AccessChain 98(i2) 194
|
||||
196: 87(int) Load 195
|
||||
197: 87(int) IAdd 192 196
|
||||
199: 88(ptr) AccessChain 98(i2) 198
|
||||
200: 87(int) Load 199
|
||||
201: 87(int) IAdd 197 200
|
||||
202: 88(ptr) AccessChain 107(i3) 194
|
||||
203: 87(int) Load 202
|
||||
204: 87(int) IAdd 201 203
|
||||
205: 88(ptr) AccessChain 107(i3) 198
|
||||
206: 87(int) Load 205
|
||||
207: 87(int) IAdd 204 206
|
||||
209: 88(ptr) AccessChain 107(i3) 208
|
||||
210: 87(int) Load 209
|
||||
211: 87(int) IAdd 207 210
|
||||
212: 88(ptr) AccessChain 116(i4) 194
|
||||
213: 87(int) Load 212
|
||||
214: 87(int) IAdd 211 213
|
||||
215: 88(ptr) AccessChain 116(i4) 198
|
||||
216: 87(int) Load 215
|
||||
217: 87(int) IAdd 214 216
|
||||
218: 88(ptr) AccessChain 116(i4) 208
|
||||
219: 87(int) Load 218
|
||||
220: 87(int) IAdd 217 219
|
||||
222: 88(ptr) AccessChain 116(i4) 221
|
||||
223: 87(int) Load 222
|
||||
224: 87(int) IAdd 220 223
|
||||
225: 123(float) ConvertSToF 224
|
||||
226: 123(float) Load 125(f)
|
||||
227: 123(float) FAdd 225 226
|
||||
228: 124(ptr) AccessChain 134(f2) 194
|
||||
229: 123(float) Load 228
|
||||
230: 123(float) FAdd 227 229
|
||||
231: 124(ptr) AccessChain 134(f2) 198
|
||||
232: 123(float) Load 231
|
||||
233: 123(float) FAdd 230 232
|
||||
234: 124(ptr) AccessChain 143(f3) 194
|
||||
235: 123(float) Load 234
|
||||
236: 123(float) FAdd 233 235
|
||||
237: 124(ptr) AccessChain 143(f3) 198
|
||||
238: 123(float) Load 237
|
||||
239: 123(float) FAdd 236 238
|
||||
240: 124(ptr) AccessChain 143(f3) 208
|
||||
241: 123(float) Load 240
|
||||
242: 123(float) FAdd 239 241
|
||||
243: 124(ptr) AccessChain 152(f4) 194
|
||||
244: 123(float) Load 243
|
||||
245: 123(float) FAdd 242 244
|
||||
246: 124(ptr) AccessChain 152(f4) 198
|
||||
247: 123(float) Load 246
|
||||
248: 123(float) FAdd 245 247
|
||||
249: 124(ptr) AccessChain 152(f4) 208
|
||||
250: 123(float) Load 249
|
||||
251: 123(float) FAdd 248 250
|
||||
252: 124(ptr) AccessChain 152(f4) 221
|
||||
253: 123(float) Load 252
|
||||
254: 123(float) FAdd 251 253
|
||||
255: 150(fvec4) CompositeConstruct 254 254 254 254
|
||||
Store 161 255
|
||||
Branch 191
|
||||
54: 9(ptr) AccessChain 40(u_b3) 53
|
||||
55: 6(bool) Load 54
|
||||
56: 6(bool) LogicalAnd 52 55
|
||||
57: 9(ptr) AccessChain 43(i_b3) 53
|
||||
58: 6(bool) Load 57
|
||||
59: 6(bool) LogicalAnd 56 58
|
||||
60: 36(bvec3) CompositeConstruct 59 59 59
|
||||
Store 38(b3) 60
|
||||
66: 9(ptr) AccessChain 65(u_b4) 21
|
||||
67: 6(bool) Load 66
|
||||
69: 9(ptr) AccessChain 68(i_b4) 21
|
||||
70: 6(bool) Load 69
|
||||
71: 6(bool) LogicalAnd 67 70
|
||||
72: 9(ptr) AccessChain 65(u_b4) 28
|
||||
73: 6(bool) Load 72
|
||||
74: 6(bool) LogicalAnd 71 73
|
||||
75: 9(ptr) AccessChain 68(i_b4) 28
|
||||
76: 6(bool) Load 75
|
||||
77: 6(bool) LogicalAnd 74 76
|
||||
78: 9(ptr) AccessChain 65(u_b4) 53
|
||||
79: 6(bool) Load 78
|
||||
80: 6(bool) LogicalAnd 77 79
|
||||
81: 9(ptr) AccessChain 68(i_b4) 53
|
||||
82: 6(bool) Load 81
|
||||
83: 6(bool) LogicalAnd 80 82
|
||||
85: 9(ptr) AccessChain 65(u_b4) 84
|
||||
86: 6(bool) Load 85
|
||||
87: 6(bool) LogicalAnd 83 86
|
||||
88: 9(ptr) AccessChain 68(i_b4) 84
|
||||
89: 6(bool) Load 88
|
||||
90: 6(bool) LogicalAnd 87 89
|
||||
91: 61(bvec4) CompositeConstruct 90 90 90 90
|
||||
Store 63(b4) 91
|
||||
97: 92(int) Load 96(u_i)
|
||||
99: 92(int) Load 98(i_i)
|
||||
100: 92(int) IAdd 97 99
|
||||
Store 94(i) 100
|
||||
106: 101(ivec2) Load 105(u_i2)
|
||||
108: 101(ivec2) Load 107(i_i2)
|
||||
109: 101(ivec2) IAdd 106 108
|
||||
Store 103(i2) 109
|
||||
115: 110(ivec3) Load 114(u_i3)
|
||||
117: 110(ivec3) Load 116(i_i3)
|
||||
118: 110(ivec3) IAdd 115 117
|
||||
Store 112(i3) 118
|
||||
124: 119(ivec4) Load 123(u_i4)
|
||||
126: 119(ivec4) Load 125(i_i4)
|
||||
127: 119(ivec4) IAdd 124 126
|
||||
Store 121(i4) 127
|
||||
133: 128(float) Load 132(u_f)
|
||||
135: 128(float) Load 134(i_f)
|
||||
136: 128(float) FAdd 133 135
|
||||
Store 130(f) 136
|
||||
142: 137(fvec2) Load 141(u_f2)
|
||||
144: 137(fvec2) Load 143(i_f2)
|
||||
145: 137(fvec2) FAdd 142 144
|
||||
Store 139(f2) 145
|
||||
151: 146(fvec3) Load 150(u_f3)
|
||||
153: 146(fvec3) Load 152(i_f3)
|
||||
154: 146(fvec3) FAdd 151 153
|
||||
Store 148(f3) 154
|
||||
160: 155(fvec4) Load 159(u_f4)
|
||||
162: 155(fvec4) Load 161(i_f4)
|
||||
163: 155(fvec4) FAdd 160 162
|
||||
Store 157(f4) 163
|
||||
167: 6(bool) Load 8(b)
|
||||
168: 7(ptr) AccessChain 17(b2) 21
|
||||
169: 6(bool) Load 168
|
||||
170: 6(bool) LogicalOr 167 169
|
||||
171: 7(ptr) AccessChain 17(b2) 28
|
||||
172: 6(bool) Load 171
|
||||
173: 6(bool) LogicalOr 170 172
|
||||
174: 7(ptr) AccessChain 38(b3) 21
|
||||
175: 6(bool) Load 174
|
||||
176: 6(bool) LogicalOr 173 175
|
||||
177: 7(ptr) AccessChain 38(b3) 28
|
||||
178: 6(bool) Load 177
|
||||
179: 6(bool) LogicalOr 176 178
|
||||
180: 7(ptr) AccessChain 38(b3) 53
|
||||
181: 6(bool) Load 180
|
||||
182: 6(bool) LogicalOr 179 181
|
||||
183: 7(ptr) AccessChain 63(b4) 21
|
||||
184: 6(bool) Load 183
|
||||
185: 6(bool) LogicalOr 182 184
|
||||
186: 7(ptr) AccessChain 63(b4) 28
|
||||
187: 6(bool) Load 186
|
||||
188: 6(bool) LogicalOr 185 187
|
||||
189: 7(ptr) AccessChain 63(b4) 53
|
||||
190: 6(bool) Load 189
|
||||
191: 6(bool) LogicalOr 188 190
|
||||
192: 7(ptr) AccessChain 63(b4) 84
|
||||
193: 6(bool) Load 192
|
||||
194: 6(bool) LogicalOr 191 193
|
||||
SelectionMerge 196 None
|
||||
BranchConditional 194 195 256
|
||||
195: Label
|
||||
197: 92(int) Load 94(i)
|
||||
198: 93(ptr) AccessChain 103(i2) 21
|
||||
199: 92(int) Load 198
|
||||
200: 92(int) IAdd 197 199
|
||||
201: 93(ptr) AccessChain 103(i2) 28
|
||||
202: 92(int) Load 201
|
||||
203: 92(int) IAdd 200 202
|
||||
204: 93(ptr) AccessChain 112(i3) 21
|
||||
205: 92(int) Load 204
|
||||
206: 92(int) IAdd 203 205
|
||||
207: 93(ptr) AccessChain 112(i3) 28
|
||||
208: 92(int) Load 207
|
||||
209: 92(int) IAdd 206 208
|
||||
210: 93(ptr) AccessChain 112(i3) 53
|
||||
211: 92(int) Load 210
|
||||
212: 92(int) IAdd 209 211
|
||||
213: 93(ptr) AccessChain 121(i4) 21
|
||||
214: 92(int) Load 213
|
||||
215: 92(int) IAdd 212 214
|
||||
216: 93(ptr) AccessChain 121(i4) 28
|
||||
217: 92(int) Load 216
|
||||
218: 92(int) IAdd 215 217
|
||||
219: 93(ptr) AccessChain 121(i4) 53
|
||||
220: 92(int) Load 219
|
||||
221: 92(int) IAdd 218 220
|
||||
222: 93(ptr) AccessChain 121(i4) 84
|
||||
223: 92(int) Load 222
|
||||
224: 92(int) IAdd 221 223
|
||||
225: 128(float) ConvertSToF 224
|
||||
226: 128(float) Load 130(f)
|
||||
227: 128(float) FAdd 225 226
|
||||
228: 129(ptr) AccessChain 139(f2) 21
|
||||
229: 128(float) Load 228
|
||||
230: 128(float) FAdd 227 229
|
||||
231: 129(ptr) AccessChain 139(f2) 28
|
||||
232: 128(float) Load 231
|
||||
233: 128(float) FAdd 230 232
|
||||
234: 129(ptr) AccessChain 148(f3) 21
|
||||
235: 128(float) Load 234
|
||||
236: 128(float) FAdd 233 235
|
||||
237: 129(ptr) AccessChain 148(f3) 28
|
||||
238: 128(float) Load 237
|
||||
239: 128(float) FAdd 236 238
|
||||
240: 129(ptr) AccessChain 148(f3) 53
|
||||
241: 128(float) Load 240
|
||||
242: 128(float) FAdd 239 241
|
||||
243: 129(ptr) AccessChain 157(f4) 21
|
||||
244: 128(float) Load 243
|
||||
245: 128(float) FAdd 242 244
|
||||
246: 129(ptr) AccessChain 157(f4) 28
|
||||
247: 128(float) Load 246
|
||||
248: 128(float) FAdd 245 247
|
||||
249: 129(ptr) AccessChain 157(f4) 53
|
||||
250: 128(float) Load 249
|
||||
251: 128(float) FAdd 248 250
|
||||
252: 129(ptr) AccessChain 157(f4) 84
|
||||
253: 128(float) Load 252
|
||||
254: 128(float) FAdd 251 253
|
||||
255: 155(fvec4) CompositeConstruct 254 254 254 254
|
||||
Store 166 255
|
||||
Branch 196
|
||||
256: Label
|
||||
Store 161 258
|
||||
Branch 191
|
||||
191: Label
|
||||
259: 150(fvec4) Load 161
|
||||
Store 160(gl_FragColor) 259
|
||||
Store 166 258
|
||||
Branch 196
|
||||
196: Label
|
||||
259: 155(fvec4) Load 166
|
||||
Store 165(gl_FragColor) 259
|
||||
Return
|
||||
FunctionEnd
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue