Generate separate stores for partially swizzled memory stores
Full vector and fully specified vector swizzle stores are not affected by this change, only partial swizzles ie swizzles with fewer components than the vector being stored to. Previously the vector being stored to loaded and any components not specified in the swizzle were used to create a full store to the vector. While this change generates more SPIR-V instructions, it is necessary for correctness. Fixes #2518.
This commit is contained in:
parent
9158061398
commit
6d5b40f051
50 changed files with 31343 additions and 26594 deletions
|
|
@ -1,7 +1,7 @@
|
|||
spv.subgroupBallot.comp
|
||||
// Module Version 10300
|
||||
// Generated by (magic number): 8000a
|
||||
// Id's are bound by 397
|
||||
// Id's are bound by 437
|
||||
|
||||
Capability Shader
|
||||
Capability Float64
|
||||
|
|
@ -51,7 +51,7 @@ spv.subgroupBallot.comp
|
|||
Decorate 46(Buffers) Block
|
||||
Decorate 49(data) DescriptorSet 0
|
||||
Decorate 49(data) Binding 0
|
||||
Decorate 396 BuiltIn WorkgroupSize
|
||||
Decorate 436 BuiltIn WorkgroupSize
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 32 0
|
||||
|
|
@ -93,28 +93,28 @@ spv.subgroupBallot.comp
|
|||
96: TypePointer StorageBuffer 40(float)
|
||||
102: TypeVector 40(float) 2
|
||||
103: TypePointer StorageBuffer 41(fvec4)
|
||||
112: TypeVector 40(float) 3
|
||||
121: 42(int) Constant 3
|
||||
127: TypePointer StorageBuffer 42(int)
|
||||
133: TypeVector 42(int) 2
|
||||
134: TypePointer StorageBuffer 43(ivec4)
|
||||
143: TypeVector 42(int) 3
|
||||
162: TypeVector 6(int) 2
|
||||
171: TypeVector 6(int) 3
|
||||
185: TypePointer StorageBuffer 44(float64_t)
|
||||
191: TypeVector 44(float64_t) 2
|
||||
192: TypePointer StorageBuffer 45(f64vec4)
|
||||
201: TypeVector 44(float64_t) 3
|
||||
225: 133(ivec2) ConstantComposite 61 61
|
||||
226: TypeVector 36(bool) 2
|
||||
229: 133(ivec2) ConstantComposite 60 60
|
||||
238: 143(ivec3) ConstantComposite 61 61 61
|
||||
239: TypeVector 36(bool) 3
|
||||
242: 143(ivec3) ConstantComposite 60 60 60
|
||||
250: 43(ivec4) ConstantComposite 61 61 61 61
|
||||
253: 43(ivec4) ConstantComposite 60 60 60 60
|
||||
395: 6(int) Constant 8
|
||||
396: 171(ivec3) ConstantComposite 395 395 64
|
||||
113: TypeVector 40(float) 3
|
||||
125: 42(int) Constant 3
|
||||
131: TypePointer StorageBuffer 42(int)
|
||||
137: TypeVector 42(int) 2
|
||||
138: TypePointer StorageBuffer 43(ivec4)
|
||||
148: TypeVector 42(int) 3
|
||||
170: TypeVector 6(int) 2
|
||||
180: TypeVector 6(int) 3
|
||||
197: TypePointer StorageBuffer 44(float64_t)
|
||||
203: TypeVector 44(float64_t) 2
|
||||
204: TypePointer StorageBuffer 45(f64vec4)
|
||||
214: TypeVector 44(float64_t) 3
|
||||
241: 137(ivec2) ConstantComposite 61 61
|
||||
242: TypeVector 36(bool) 2
|
||||
245: 137(ivec2) ConstantComposite 60 60
|
||||
255: 148(ivec3) ConstantComposite 61 61 61
|
||||
256: TypeVector 36(bool) 3
|
||||
259: 148(ivec3) ConstantComposite 60 60 60
|
||||
270: 43(ivec4) ConstantComposite 61 61 61 61
|
||||
273: 43(ivec4) ConstantComposite 60 60 60 60
|
||||
435: 6(int) Constant 8
|
||||
436: 180(ivec3) ConstantComposite 435 435 64
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
8(invocation): 7(ptr) Variable Function
|
||||
|
|
@ -179,7 +179,7 @@ spv.subgroupBallot.comp
|
|||
87: Label
|
||||
92: 36(bool) Phi 85 5 91 86
|
||||
SelectionMerge 94 None
|
||||
BranchConditional 92 93 256
|
||||
BranchConditional 92 93 276
|
||||
93: Label
|
||||
95: 6(int) Load 8(invocation)
|
||||
97: 96(ptr) AccessChain 49(data) 61 61 54
|
||||
|
|
@ -192,313 +192,383 @@ spv.subgroupBallot.comp
|
|||
105: 41(fvec4) Load 104
|
||||
106: 102(fvec2) VectorShuffle 105 105 0 1
|
||||
107: 102(fvec2) GroupNonUniformBroadcast 38 106 38
|
||||
108: 103(ptr) AccessChain 49(data) 101 61
|
||||
109: 41(fvec4) Load 108
|
||||
110: 41(fvec4) VectorShuffle 109 107 4 5 2 3
|
||||
Store 108 110
|
||||
111: 6(int) Load 8(invocation)
|
||||
113: 103(ptr) AccessChain 49(data) 51 61
|
||||
114: 41(fvec4) Load 113
|
||||
115: 112(fvec3) VectorShuffle 114 114 0 1 2
|
||||
116: 112(fvec3) GroupNonUniformBroadcast 38 115 38
|
||||
117: 103(ptr) AccessChain 49(data) 111 61
|
||||
118: 41(fvec4) Load 117
|
||||
119: 41(fvec4) VectorShuffle 118 116 4 5 6 3
|
||||
Store 117 119
|
||||
120: 6(int) Load 8(invocation)
|
||||
122: 103(ptr) AccessChain 49(data) 121 61
|
||||
123: 41(fvec4) Load 122
|
||||
124: 41(fvec4) GroupNonUniformBroadcast 38 123 38
|
||||
125: 103(ptr) AccessChain 49(data) 120 61
|
||||
Store 125 124
|
||||
126: 6(int) Load 8(invocation)
|
||||
128: 127(ptr) AccessChain 49(data) 61 60 54
|
||||
129: 42(int) Load 128
|
||||
130: 42(int) GroupNonUniformBroadcast 38 129 72
|
||||
131: 127(ptr) AccessChain 49(data) 126 60 54
|
||||
Store 131 130
|
||||
132: 6(int) Load 8(invocation)
|
||||
135: 134(ptr) AccessChain 49(data) 60 60
|
||||
136: 43(ivec4) Load 135
|
||||
137: 133(ivec2) VectorShuffle 136 136 0 1
|
||||
138: 133(ivec2) GroupNonUniformBroadcast 38 137 72
|
||||
139: 134(ptr) AccessChain 49(data) 132 60
|
||||
108: 96(ptr) AccessChain 49(data) 101 61 54
|
||||
109: 40(float) CompositeExtract 107 0
|
||||
Store 108 109
|
||||
110: 96(ptr) AccessChain 49(data) 101 61 64
|
||||
111: 40(float) CompositeExtract 107 1
|
||||
Store 110 111
|
||||
112: 6(int) Load 8(invocation)
|
||||
114: 103(ptr) AccessChain 49(data) 51 61
|
||||
115: 41(fvec4) Load 114
|
||||
116: 113(fvec3) VectorShuffle 115 115 0 1 2
|
||||
117: 113(fvec3) GroupNonUniformBroadcast 38 116 38
|
||||
118: 96(ptr) AccessChain 49(data) 112 61 54
|
||||
119: 40(float) CompositeExtract 117 0
|
||||
Store 118 119
|
||||
120: 96(ptr) AccessChain 49(data) 112 61 64
|
||||
121: 40(float) CompositeExtract 117 1
|
||||
Store 120 121
|
||||
122: 96(ptr) AccessChain 49(data) 112 61 72
|
||||
123: 40(float) CompositeExtract 117 2
|
||||
Store 122 123
|
||||
124: 6(int) Load 8(invocation)
|
||||
126: 103(ptr) AccessChain 49(data) 125 61
|
||||
127: 41(fvec4) Load 126
|
||||
128: 41(fvec4) GroupNonUniformBroadcast 38 127 38
|
||||
129: 103(ptr) AccessChain 49(data) 124 61
|
||||
Store 129 128
|
||||
130: 6(int) Load 8(invocation)
|
||||
132: 131(ptr) AccessChain 49(data) 61 60 54
|
||||
133: 42(int) Load 132
|
||||
134: 42(int) GroupNonUniformBroadcast 38 133 72
|
||||
135: 131(ptr) AccessChain 49(data) 130 60 54
|
||||
Store 135 134
|
||||
136: 6(int) Load 8(invocation)
|
||||
139: 138(ptr) AccessChain 49(data) 60 60
|
||||
140: 43(ivec4) Load 139
|
||||
141: 43(ivec4) VectorShuffle 140 138 4 5 2 3
|
||||
Store 139 141
|
||||
142: 6(int) Load 8(invocation)
|
||||
144: 134(ptr) AccessChain 49(data) 51 60
|
||||
145: 43(ivec4) Load 144
|
||||
146: 143(ivec3) VectorShuffle 145 145 0 1 2
|
||||
147: 143(ivec3) GroupNonUniformBroadcast 38 146 72
|
||||
148: 134(ptr) AccessChain 49(data) 142 60
|
||||
149: 43(ivec4) Load 148
|
||||
150: 43(ivec4) VectorShuffle 149 147 4 5 6 3
|
||||
Store 148 150
|
||||
151: 6(int) Load 8(invocation)
|
||||
152: 134(ptr) AccessChain 49(data) 121 60
|
||||
153: 43(ivec4) Load 152
|
||||
154: 43(ivec4) GroupNonUniformBroadcast 38 153 72
|
||||
155: 134(ptr) AccessChain 49(data) 151 60
|
||||
Store 155 154
|
||||
156: 6(int) Load 8(invocation)
|
||||
157: 55(ptr) AccessChain 49(data) 61 51 54
|
||||
158: 6(int) Load 157
|
||||
159: 6(int) GroupNonUniformBroadcast 38 158 64
|
||||
160: 55(ptr) AccessChain 49(data) 156 51 54
|
||||
Store 160 159
|
||||
161: 6(int) Load 8(invocation)
|
||||
163: 88(ptr) AccessChain 49(data) 60 51
|
||||
164: 17(ivec4) Load 163
|
||||
165: 162(ivec2) VectorShuffle 164 164 0 1
|
||||
166: 162(ivec2) GroupNonUniformBroadcast 38 165 64
|
||||
167: 88(ptr) AccessChain 49(data) 161 51
|
||||
168: 17(ivec4) Load 167
|
||||
169: 17(ivec4) VectorShuffle 168 166 4 5 2 3
|
||||
Store 167 169
|
||||
170: 6(int) Load 8(invocation)
|
||||
172: 88(ptr) AccessChain 49(data) 51 51
|
||||
173: 17(ivec4) Load 172
|
||||
174: 171(ivec3) VectorShuffle 173 173 0 1 2
|
||||
175: 171(ivec3) GroupNonUniformBroadcast 38 174 64
|
||||
176: 88(ptr) AccessChain 49(data) 170 51
|
||||
177: 17(ivec4) Load 176
|
||||
178: 17(ivec4) VectorShuffle 177 175 4 5 6 3
|
||||
Store 176 178
|
||||
141: 137(ivec2) VectorShuffle 140 140 0 1
|
||||
142: 137(ivec2) GroupNonUniformBroadcast 38 141 72
|
||||
143: 131(ptr) AccessChain 49(data) 136 60 54
|
||||
144: 42(int) CompositeExtract 142 0
|
||||
Store 143 144
|
||||
145: 131(ptr) AccessChain 49(data) 136 60 64
|
||||
146: 42(int) CompositeExtract 142 1
|
||||
Store 145 146
|
||||
147: 6(int) Load 8(invocation)
|
||||
149: 138(ptr) AccessChain 49(data) 51 60
|
||||
150: 43(ivec4) Load 149
|
||||
151: 148(ivec3) VectorShuffle 150 150 0 1 2
|
||||
152: 148(ivec3) GroupNonUniformBroadcast 38 151 72
|
||||
153: 131(ptr) AccessChain 49(data) 147 60 54
|
||||
154: 42(int) CompositeExtract 152 0
|
||||
Store 153 154
|
||||
155: 131(ptr) AccessChain 49(data) 147 60 64
|
||||
156: 42(int) CompositeExtract 152 1
|
||||
Store 155 156
|
||||
157: 131(ptr) AccessChain 49(data) 147 60 72
|
||||
158: 42(int) CompositeExtract 152 2
|
||||
Store 157 158
|
||||
159: 6(int) Load 8(invocation)
|
||||
160: 138(ptr) AccessChain 49(data) 125 60
|
||||
161: 43(ivec4) Load 160
|
||||
162: 43(ivec4) GroupNonUniformBroadcast 38 161 72
|
||||
163: 138(ptr) AccessChain 49(data) 159 60
|
||||
Store 163 162
|
||||
164: 6(int) Load 8(invocation)
|
||||
165: 55(ptr) AccessChain 49(data) 61 51 54
|
||||
166: 6(int) Load 165
|
||||
167: 6(int) GroupNonUniformBroadcast 38 166 64
|
||||
168: 55(ptr) AccessChain 49(data) 164 51 54
|
||||
Store 168 167
|
||||
169: 6(int) Load 8(invocation)
|
||||
171: 88(ptr) AccessChain 49(data) 60 51
|
||||
172: 17(ivec4) Load 171
|
||||
173: 170(ivec2) VectorShuffle 172 172 0 1
|
||||
174: 170(ivec2) GroupNonUniformBroadcast 38 173 64
|
||||
175: 55(ptr) AccessChain 49(data) 169 51 54
|
||||
176: 6(int) CompositeExtract 174 0
|
||||
Store 175 176
|
||||
177: 55(ptr) AccessChain 49(data) 169 51 64
|
||||
178: 6(int) CompositeExtract 174 1
|
||||
Store 177 178
|
||||
179: 6(int) Load 8(invocation)
|
||||
180: 88(ptr) AccessChain 49(data) 121 51
|
||||
181: 17(ivec4) Load 180
|
||||
182: 17(ivec4) GroupNonUniformBroadcast 38 181 64
|
||||
183: 88(ptr) AccessChain 49(data) 179 51
|
||||
Store 183 182
|
||||
184: 6(int) Load 8(invocation)
|
||||
186: 185(ptr) AccessChain 49(data) 61 121 54
|
||||
187:44(float64_t) Load 186
|
||||
188:44(float64_t) GroupNonUniformBroadcast 38 187 54
|
||||
189: 185(ptr) AccessChain 49(data) 184 121 54
|
||||
Store 189 188
|
||||
190: 6(int) Load 8(invocation)
|
||||
193: 192(ptr) AccessChain 49(data) 60 121
|
||||
194: 45(f64vec4) Load 193
|
||||
195:191(f64vec2) VectorShuffle 194 194 0 1
|
||||
196:191(f64vec2) GroupNonUniformBroadcast 38 195 54
|
||||
197: 192(ptr) AccessChain 49(data) 190 121
|
||||
198: 45(f64vec4) Load 197
|
||||
199: 45(f64vec4) VectorShuffle 198 196 4 5 2 3
|
||||
Store 197 199
|
||||
200: 6(int) Load 8(invocation)
|
||||
202: 192(ptr) AccessChain 49(data) 51 121
|
||||
203: 45(f64vec4) Load 202
|
||||
204:201(f64vec3) VectorShuffle 203 203 0 1 2
|
||||
205:201(f64vec3) GroupNonUniformBroadcast 38 204 54
|
||||
206: 192(ptr) AccessChain 49(data) 200 121
|
||||
207: 45(f64vec4) Load 206
|
||||
208: 45(f64vec4) VectorShuffle 207 205 4 5 6 3
|
||||
Store 206 208
|
||||
209: 6(int) Load 8(invocation)
|
||||
210: 192(ptr) AccessChain 49(data) 121 121
|
||||
211: 45(f64vec4) Load 210
|
||||
212: 45(f64vec4) GroupNonUniformBroadcast 38 211 54
|
||||
213: 192(ptr) AccessChain 49(data) 209 121
|
||||
Store 213 212
|
||||
214: 6(int) Load 8(invocation)
|
||||
215: 127(ptr) AccessChain 49(data) 61 60 54
|
||||
216: 42(int) Load 215
|
||||
217: 36(bool) SLessThan 216 61
|
||||
218: 36(bool) GroupNonUniformBroadcast 38 217 64
|
||||
219: 42(int) Select 218 60 61
|
||||
220: 127(ptr) AccessChain 49(data) 214 60 54
|
||||
Store 220 219
|
||||
221: 6(int) Load 8(invocation)
|
||||
222: 134(ptr) AccessChain 49(data) 60 60
|
||||
223: 43(ivec4) Load 222
|
||||
224: 133(ivec2) VectorShuffle 223 223 0 1
|
||||
227: 226(bvec2) SLessThan 224 225
|
||||
228: 226(bvec2) GroupNonUniformBroadcast 38 227 64
|
||||
230: 133(ivec2) Select 228 229 225
|
||||
231: 134(ptr) AccessChain 49(data) 221 60
|
||||
232: 43(ivec4) Load 231
|
||||
233: 43(ivec4) VectorShuffle 232 230 4 5 2 3
|
||||
Store 231 233
|
||||
234: 6(int) Load 8(invocation)
|
||||
235: 134(ptr) AccessChain 49(data) 60 60
|
||||
236: 43(ivec4) Load 235
|
||||
237: 143(ivec3) VectorShuffle 236 236 0 1 2
|
||||
240: 239(bvec3) SLessThan 237 238
|
||||
241: 239(bvec3) GroupNonUniformBroadcast 38 240 64
|
||||
243: 143(ivec3) Select 241 242 238
|
||||
244: 134(ptr) AccessChain 49(data) 234 60
|
||||
245: 43(ivec4) Load 244
|
||||
246: 43(ivec4) VectorShuffle 245 243 4 5 6 3
|
||||
Store 244 246
|
||||
247: 6(int) Load 8(invocation)
|
||||
248: 134(ptr) AccessChain 49(data) 60 60
|
||||
249: 43(ivec4) Load 248
|
||||
251: 83(bvec4) SLessThan 249 250
|
||||
252: 83(bvec4) GroupNonUniformBroadcast 38 251 64
|
||||
254: 43(ivec4) Select 252 253 250
|
||||
255: 134(ptr) AccessChain 49(data) 247 60
|
||||
Store 255 254
|
||||
181: 88(ptr) AccessChain 49(data) 51 51
|
||||
182: 17(ivec4) Load 181
|
||||
183: 180(ivec3) VectorShuffle 182 182 0 1 2
|
||||
184: 180(ivec3) GroupNonUniformBroadcast 38 183 64
|
||||
185: 55(ptr) AccessChain 49(data) 179 51 54
|
||||
186: 6(int) CompositeExtract 184 0
|
||||
Store 185 186
|
||||
187: 55(ptr) AccessChain 49(data) 179 51 64
|
||||
188: 6(int) CompositeExtract 184 1
|
||||
Store 187 188
|
||||
189: 55(ptr) AccessChain 49(data) 179 51 72
|
||||
190: 6(int) CompositeExtract 184 2
|
||||
Store 189 190
|
||||
191: 6(int) Load 8(invocation)
|
||||
192: 88(ptr) AccessChain 49(data) 125 51
|
||||
193: 17(ivec4) Load 192
|
||||
194: 17(ivec4) GroupNonUniformBroadcast 38 193 64
|
||||
195: 88(ptr) AccessChain 49(data) 191 51
|
||||
Store 195 194
|
||||
196: 6(int) Load 8(invocation)
|
||||
198: 197(ptr) AccessChain 49(data) 61 125 54
|
||||
199:44(float64_t) Load 198
|
||||
200:44(float64_t) GroupNonUniformBroadcast 38 199 54
|
||||
201: 197(ptr) AccessChain 49(data) 196 125 54
|
||||
Store 201 200
|
||||
202: 6(int) Load 8(invocation)
|
||||
205: 204(ptr) AccessChain 49(data) 60 125
|
||||
206: 45(f64vec4) Load 205
|
||||
207:203(f64vec2) VectorShuffle 206 206 0 1
|
||||
208:203(f64vec2) GroupNonUniformBroadcast 38 207 54
|
||||
209: 197(ptr) AccessChain 49(data) 202 125 54
|
||||
210:44(float64_t) CompositeExtract 208 0
|
||||
Store 209 210
|
||||
211: 197(ptr) AccessChain 49(data) 202 125 64
|
||||
212:44(float64_t) CompositeExtract 208 1
|
||||
Store 211 212
|
||||
213: 6(int) Load 8(invocation)
|
||||
215: 204(ptr) AccessChain 49(data) 51 125
|
||||
216: 45(f64vec4) Load 215
|
||||
217:214(f64vec3) VectorShuffle 216 216 0 1 2
|
||||
218:214(f64vec3) GroupNonUniformBroadcast 38 217 54
|
||||
219: 197(ptr) AccessChain 49(data) 213 125 54
|
||||
220:44(float64_t) CompositeExtract 218 0
|
||||
Store 219 220
|
||||
221: 197(ptr) AccessChain 49(data) 213 125 64
|
||||
222:44(float64_t) CompositeExtract 218 1
|
||||
Store 221 222
|
||||
223: 197(ptr) AccessChain 49(data) 213 125 72
|
||||
224:44(float64_t) CompositeExtract 218 2
|
||||
Store 223 224
|
||||
225: 6(int) Load 8(invocation)
|
||||
226: 204(ptr) AccessChain 49(data) 125 125
|
||||
227: 45(f64vec4) Load 226
|
||||
228: 45(f64vec4) GroupNonUniformBroadcast 38 227 54
|
||||
229: 204(ptr) AccessChain 49(data) 225 125
|
||||
Store 229 228
|
||||
230: 6(int) Load 8(invocation)
|
||||
231: 131(ptr) AccessChain 49(data) 61 60 54
|
||||
232: 42(int) Load 231
|
||||
233: 36(bool) SLessThan 232 61
|
||||
234: 36(bool) GroupNonUniformBroadcast 38 233 64
|
||||
235: 42(int) Select 234 60 61
|
||||
236: 131(ptr) AccessChain 49(data) 230 60 54
|
||||
Store 236 235
|
||||
237: 6(int) Load 8(invocation)
|
||||
238: 138(ptr) AccessChain 49(data) 60 60
|
||||
239: 43(ivec4) Load 238
|
||||
240: 137(ivec2) VectorShuffle 239 239 0 1
|
||||
243: 242(bvec2) SLessThan 240 241
|
||||
244: 242(bvec2) GroupNonUniformBroadcast 38 243 64
|
||||
246: 137(ivec2) Select 244 245 241
|
||||
247: 131(ptr) AccessChain 49(data) 237 60 54
|
||||
248: 42(int) CompositeExtract 246 0
|
||||
Store 247 248
|
||||
249: 131(ptr) AccessChain 49(data) 237 60 64
|
||||
250: 42(int) CompositeExtract 246 1
|
||||
Store 249 250
|
||||
251: 6(int) Load 8(invocation)
|
||||
252: 138(ptr) AccessChain 49(data) 60 60
|
||||
253: 43(ivec4) Load 252
|
||||
254: 148(ivec3) VectorShuffle 253 253 0 1 2
|
||||
257: 256(bvec3) SLessThan 254 255
|
||||
258: 256(bvec3) GroupNonUniformBroadcast 38 257 64
|
||||
260: 148(ivec3) Select 258 259 255
|
||||
261: 131(ptr) AccessChain 49(data) 251 60 54
|
||||
262: 42(int) CompositeExtract 260 0
|
||||
Store 261 262
|
||||
263: 131(ptr) AccessChain 49(data) 251 60 64
|
||||
264: 42(int) CompositeExtract 260 1
|
||||
Store 263 264
|
||||
265: 131(ptr) AccessChain 49(data) 251 60 72
|
||||
266: 42(int) CompositeExtract 260 2
|
||||
Store 265 266
|
||||
267: 6(int) Load 8(invocation)
|
||||
268: 138(ptr) AccessChain 49(data) 60 60
|
||||
269: 43(ivec4) Load 268
|
||||
271: 83(bvec4) SLessThan 269 270
|
||||
272: 83(bvec4) GroupNonUniformBroadcast 38 271 64
|
||||
274: 43(ivec4) Select 272 273 270
|
||||
275: 138(ptr) AccessChain 49(data) 267 60
|
||||
Store 275 274
|
||||
Branch 94
|
||||
256: Label
|
||||
257: 6(int) Load 8(invocation)
|
||||
258: 96(ptr) AccessChain 49(data) 61 61 54
|
||||
259: 40(float) Load 258
|
||||
260: 40(float) GroupNonUniformBroadcastFirst 38 259
|
||||
261: 96(ptr) AccessChain 49(data) 257 61 54
|
||||
Store 261 260
|
||||
262: 6(int) Load 8(invocation)
|
||||
263: 103(ptr) AccessChain 49(data) 60 61
|
||||
264: 41(fvec4) Load 263
|
||||
265: 102(fvec2) VectorShuffle 264 264 0 1
|
||||
266: 102(fvec2) GroupNonUniformBroadcastFirst 38 265
|
||||
267: 103(ptr) AccessChain 49(data) 262 61
|
||||
268: 41(fvec4) Load 267
|
||||
269: 41(fvec4) VectorShuffle 268 266 4 5 2 3
|
||||
Store 267 269
|
||||
270: 6(int) Load 8(invocation)
|
||||
271: 103(ptr) AccessChain 49(data) 51 61
|
||||
272: 41(fvec4) Load 271
|
||||
273: 112(fvec3) VectorShuffle 272 272 0 1 2
|
||||
274: 112(fvec3) GroupNonUniformBroadcastFirst 38 273
|
||||
275: 103(ptr) AccessChain 49(data) 270 61
|
||||
276: 41(fvec4) Load 275
|
||||
277: 41(fvec4) VectorShuffle 276 274 4 5 6 3
|
||||
Store 275 277
|
||||
278: 6(int) Load 8(invocation)
|
||||
279: 103(ptr) AccessChain 49(data) 121 61
|
||||
280: 41(fvec4) Load 279
|
||||
281: 41(fvec4) GroupNonUniformBroadcastFirst 38 280
|
||||
282: 103(ptr) AccessChain 49(data) 278 61
|
||||
Store 282 281
|
||||
283: 6(int) Load 8(invocation)
|
||||
284: 127(ptr) AccessChain 49(data) 61 60 54
|
||||
285: 42(int) Load 284
|
||||
286: 42(int) GroupNonUniformBroadcastFirst 38 285
|
||||
287: 127(ptr) AccessChain 49(data) 283 60 54
|
||||
Store 287 286
|
||||
288: 6(int) Load 8(invocation)
|
||||
289: 134(ptr) AccessChain 49(data) 60 60
|
||||
290: 43(ivec4) Load 289
|
||||
291: 133(ivec2) VectorShuffle 290 290 0 1
|
||||
292: 133(ivec2) GroupNonUniformBroadcastFirst 38 291
|
||||
293: 134(ptr) AccessChain 49(data) 288 60
|
||||
294: 43(ivec4) Load 293
|
||||
295: 43(ivec4) VectorShuffle 294 292 4 5 2 3
|
||||
Store 293 295
|
||||
296: 6(int) Load 8(invocation)
|
||||
297: 134(ptr) AccessChain 49(data) 51 60
|
||||
298: 43(ivec4) Load 297
|
||||
299: 143(ivec3) VectorShuffle 298 298 0 1 2
|
||||
300: 143(ivec3) GroupNonUniformBroadcastFirst 38 299
|
||||
301: 134(ptr) AccessChain 49(data) 296 60
|
||||
302: 43(ivec4) Load 301
|
||||
303: 43(ivec4) VectorShuffle 302 300 4 5 6 3
|
||||
Store 301 303
|
||||
304: 6(int) Load 8(invocation)
|
||||
305: 134(ptr) AccessChain 49(data) 121 60
|
||||
306: 43(ivec4) Load 305
|
||||
307: 43(ivec4) GroupNonUniformBroadcastFirst 38 306
|
||||
308: 134(ptr) AccessChain 49(data) 304 60
|
||||
Store 308 307
|
||||
309: 6(int) Load 8(invocation)
|
||||
310: 55(ptr) AccessChain 49(data) 61 51 54
|
||||
311: 6(int) Load 310
|
||||
312: 6(int) GroupNonUniformBroadcastFirst 38 311
|
||||
313: 55(ptr) AccessChain 49(data) 309 51 54
|
||||
Store 313 312
|
||||
314: 6(int) Load 8(invocation)
|
||||
315: 88(ptr) AccessChain 49(data) 60 51
|
||||
316: 17(ivec4) Load 315
|
||||
317: 162(ivec2) VectorShuffle 316 316 0 1
|
||||
318: 162(ivec2) GroupNonUniformBroadcastFirst 38 317
|
||||
319: 88(ptr) AccessChain 49(data) 314 51
|
||||
320: 17(ivec4) Load 319
|
||||
321: 17(ivec4) VectorShuffle 320 318 4 5 2 3
|
||||
Store 319 321
|
||||
322: 6(int) Load 8(invocation)
|
||||
323: 88(ptr) AccessChain 49(data) 51 51
|
||||
324: 17(ivec4) Load 323
|
||||
325: 171(ivec3) VectorShuffle 324 324 0 1 2
|
||||
326: 171(ivec3) GroupNonUniformBroadcastFirst 38 325
|
||||
327: 88(ptr) AccessChain 49(data) 322 51
|
||||
328: 17(ivec4) Load 327
|
||||
329: 17(ivec4) VectorShuffle 328 326 4 5 6 3
|
||||
Store 327 329
|
||||
330: 6(int) Load 8(invocation)
|
||||
331: 88(ptr) AccessChain 49(data) 121 51
|
||||
332: 17(ivec4) Load 331
|
||||
333: 17(ivec4) GroupNonUniformBroadcastFirst 38 332
|
||||
334: 88(ptr) AccessChain 49(data) 330 51
|
||||
Store 334 333
|
||||
335: 6(int) Load 8(invocation)
|
||||
336: 185(ptr) AccessChain 49(data) 61 121 54
|
||||
337:44(float64_t) Load 336
|
||||
338:44(float64_t) GroupNonUniformBroadcastFirst 38 337
|
||||
339: 185(ptr) AccessChain 49(data) 335 121 54
|
||||
Store 339 338
|
||||
340: 6(int) Load 8(invocation)
|
||||
341: 192(ptr) AccessChain 49(data) 60 121
|
||||
342: 45(f64vec4) Load 341
|
||||
343:191(f64vec2) VectorShuffle 342 342 0 1
|
||||
344:191(f64vec2) GroupNonUniformBroadcastFirst 38 343
|
||||
345: 192(ptr) AccessChain 49(data) 340 121
|
||||
346: 45(f64vec4) Load 345
|
||||
347: 45(f64vec4) VectorShuffle 346 344 4 5 2 3
|
||||
Store 345 347
|
||||
348: 6(int) Load 8(invocation)
|
||||
349: 192(ptr) AccessChain 49(data) 51 121
|
||||
350: 45(f64vec4) Load 349
|
||||
351:201(f64vec3) VectorShuffle 350 350 0 1 2
|
||||
352:201(f64vec3) GroupNonUniformBroadcastFirst 38 351
|
||||
353: 192(ptr) AccessChain 49(data) 348 121
|
||||
354: 45(f64vec4) Load 353
|
||||
355: 45(f64vec4) VectorShuffle 354 352 4 5 6 3
|
||||
Store 353 355
|
||||
356: 6(int) Load 8(invocation)
|
||||
357: 192(ptr) AccessChain 49(data) 121 121
|
||||
358: 45(f64vec4) Load 357
|
||||
359: 45(f64vec4) GroupNonUniformBroadcastFirst 38 358
|
||||
360: 192(ptr) AccessChain 49(data) 356 121
|
||||
Store 360 359
|
||||
361: 6(int) Load 8(invocation)
|
||||
362: 127(ptr) AccessChain 49(data) 61 60 54
|
||||
363: 42(int) Load 362
|
||||
364: 36(bool) SLessThan 363 61
|
||||
365: 36(bool) GroupNonUniformBroadcastFirst 38 364
|
||||
366: 42(int) Select 365 60 61
|
||||
367: 127(ptr) AccessChain 49(data) 361 60 54
|
||||
Store 367 366
|
||||
368: 6(int) Load 8(invocation)
|
||||
369: 134(ptr) AccessChain 49(data) 60 60
|
||||
370: 43(ivec4) Load 369
|
||||
371: 133(ivec2) VectorShuffle 370 370 0 1
|
||||
372: 226(bvec2) SLessThan 371 225
|
||||
373: 226(bvec2) GroupNonUniformBroadcastFirst 38 372
|
||||
374: 133(ivec2) Select 373 229 225
|
||||
375: 134(ptr) AccessChain 49(data) 368 60
|
||||
376: 43(ivec4) Load 375
|
||||
377: 43(ivec4) VectorShuffle 376 374 4 5 2 3
|
||||
Store 375 377
|
||||
378: 6(int) Load 8(invocation)
|
||||
379: 134(ptr) AccessChain 49(data) 60 60
|
||||
380: 43(ivec4) Load 379
|
||||
381: 143(ivec3) VectorShuffle 380 380 0 1 2
|
||||
382: 239(bvec3) SLessThan 381 238
|
||||
383: 239(bvec3) GroupNonUniformBroadcastFirst 38 382
|
||||
384: 143(ivec3) Select 383 242 238
|
||||
385: 134(ptr) AccessChain 49(data) 378 60
|
||||
386: 43(ivec4) Load 385
|
||||
387: 43(ivec4) VectorShuffle 386 384 4 5 6 3
|
||||
Store 385 387
|
||||
388: 6(int) Load 8(invocation)
|
||||
389: 134(ptr) AccessChain 49(data) 60 60
|
||||
390: 43(ivec4) Load 389
|
||||
391: 83(bvec4) SLessThan 390 250
|
||||
392: 83(bvec4) GroupNonUniformBroadcastFirst 38 391
|
||||
393: 43(ivec4) Select 392 253 250
|
||||
394: 134(ptr) AccessChain 49(data) 388 60
|
||||
Store 394 393
|
||||
276: Label
|
||||
277: 6(int) Load 8(invocation)
|
||||
278: 96(ptr) AccessChain 49(data) 61 61 54
|
||||
279: 40(float) Load 278
|
||||
280: 40(float) GroupNonUniformBroadcastFirst 38 279
|
||||
281: 96(ptr) AccessChain 49(data) 277 61 54
|
||||
Store 281 280
|
||||
282: 6(int) Load 8(invocation)
|
||||
283: 103(ptr) AccessChain 49(data) 60 61
|
||||
284: 41(fvec4) Load 283
|
||||
285: 102(fvec2) VectorShuffle 284 284 0 1
|
||||
286: 102(fvec2) GroupNonUniformBroadcastFirst 38 285
|
||||
287: 96(ptr) AccessChain 49(data) 282 61 54
|
||||
288: 40(float) CompositeExtract 286 0
|
||||
Store 287 288
|
||||
289: 96(ptr) AccessChain 49(data) 282 61 64
|
||||
290: 40(float) CompositeExtract 286 1
|
||||
Store 289 290
|
||||
291: 6(int) Load 8(invocation)
|
||||
292: 103(ptr) AccessChain 49(data) 51 61
|
||||
293: 41(fvec4) Load 292
|
||||
294: 113(fvec3) VectorShuffle 293 293 0 1 2
|
||||
295: 113(fvec3) GroupNonUniformBroadcastFirst 38 294
|
||||
296: 96(ptr) AccessChain 49(data) 291 61 54
|
||||
297: 40(float) CompositeExtract 295 0
|
||||
Store 296 297
|
||||
298: 96(ptr) AccessChain 49(data) 291 61 64
|
||||
299: 40(float) CompositeExtract 295 1
|
||||
Store 298 299
|
||||
300: 96(ptr) AccessChain 49(data) 291 61 72
|
||||
301: 40(float) CompositeExtract 295 2
|
||||
Store 300 301
|
||||
302: 6(int) Load 8(invocation)
|
||||
303: 103(ptr) AccessChain 49(data) 125 61
|
||||
304: 41(fvec4) Load 303
|
||||
305: 41(fvec4) GroupNonUniformBroadcastFirst 38 304
|
||||
306: 103(ptr) AccessChain 49(data) 302 61
|
||||
Store 306 305
|
||||
307: 6(int) Load 8(invocation)
|
||||
308: 131(ptr) AccessChain 49(data) 61 60 54
|
||||
309: 42(int) Load 308
|
||||
310: 42(int) GroupNonUniformBroadcastFirst 38 309
|
||||
311: 131(ptr) AccessChain 49(data) 307 60 54
|
||||
Store 311 310
|
||||
312: 6(int) Load 8(invocation)
|
||||
313: 138(ptr) AccessChain 49(data) 60 60
|
||||
314: 43(ivec4) Load 313
|
||||
315: 137(ivec2) VectorShuffle 314 314 0 1
|
||||
316: 137(ivec2) GroupNonUniformBroadcastFirst 38 315
|
||||
317: 131(ptr) AccessChain 49(data) 312 60 54
|
||||
318: 42(int) CompositeExtract 316 0
|
||||
Store 317 318
|
||||
319: 131(ptr) AccessChain 49(data) 312 60 64
|
||||
320: 42(int) CompositeExtract 316 1
|
||||
Store 319 320
|
||||
321: 6(int) Load 8(invocation)
|
||||
322: 138(ptr) AccessChain 49(data) 51 60
|
||||
323: 43(ivec4) Load 322
|
||||
324: 148(ivec3) VectorShuffle 323 323 0 1 2
|
||||
325: 148(ivec3) GroupNonUniformBroadcastFirst 38 324
|
||||
326: 131(ptr) AccessChain 49(data) 321 60 54
|
||||
327: 42(int) CompositeExtract 325 0
|
||||
Store 326 327
|
||||
328: 131(ptr) AccessChain 49(data) 321 60 64
|
||||
329: 42(int) CompositeExtract 325 1
|
||||
Store 328 329
|
||||
330: 131(ptr) AccessChain 49(data) 321 60 72
|
||||
331: 42(int) CompositeExtract 325 2
|
||||
Store 330 331
|
||||
332: 6(int) Load 8(invocation)
|
||||
333: 138(ptr) AccessChain 49(data) 125 60
|
||||
334: 43(ivec4) Load 333
|
||||
335: 43(ivec4) GroupNonUniformBroadcastFirst 38 334
|
||||
336: 138(ptr) AccessChain 49(data) 332 60
|
||||
Store 336 335
|
||||
337: 6(int) Load 8(invocation)
|
||||
338: 55(ptr) AccessChain 49(data) 61 51 54
|
||||
339: 6(int) Load 338
|
||||
340: 6(int) GroupNonUniformBroadcastFirst 38 339
|
||||
341: 55(ptr) AccessChain 49(data) 337 51 54
|
||||
Store 341 340
|
||||
342: 6(int) Load 8(invocation)
|
||||
343: 88(ptr) AccessChain 49(data) 60 51
|
||||
344: 17(ivec4) Load 343
|
||||
345: 170(ivec2) VectorShuffle 344 344 0 1
|
||||
346: 170(ivec2) GroupNonUniformBroadcastFirst 38 345
|
||||
347: 55(ptr) AccessChain 49(data) 342 51 54
|
||||
348: 6(int) CompositeExtract 346 0
|
||||
Store 347 348
|
||||
349: 55(ptr) AccessChain 49(data) 342 51 64
|
||||
350: 6(int) CompositeExtract 346 1
|
||||
Store 349 350
|
||||
351: 6(int) Load 8(invocation)
|
||||
352: 88(ptr) AccessChain 49(data) 51 51
|
||||
353: 17(ivec4) Load 352
|
||||
354: 180(ivec3) VectorShuffle 353 353 0 1 2
|
||||
355: 180(ivec3) GroupNonUniformBroadcastFirst 38 354
|
||||
356: 55(ptr) AccessChain 49(data) 351 51 54
|
||||
357: 6(int) CompositeExtract 355 0
|
||||
Store 356 357
|
||||
358: 55(ptr) AccessChain 49(data) 351 51 64
|
||||
359: 6(int) CompositeExtract 355 1
|
||||
Store 358 359
|
||||
360: 55(ptr) AccessChain 49(data) 351 51 72
|
||||
361: 6(int) CompositeExtract 355 2
|
||||
Store 360 361
|
||||
362: 6(int) Load 8(invocation)
|
||||
363: 88(ptr) AccessChain 49(data) 125 51
|
||||
364: 17(ivec4) Load 363
|
||||
365: 17(ivec4) GroupNonUniformBroadcastFirst 38 364
|
||||
366: 88(ptr) AccessChain 49(data) 362 51
|
||||
Store 366 365
|
||||
367: 6(int) Load 8(invocation)
|
||||
368: 197(ptr) AccessChain 49(data) 61 125 54
|
||||
369:44(float64_t) Load 368
|
||||
370:44(float64_t) GroupNonUniformBroadcastFirst 38 369
|
||||
371: 197(ptr) AccessChain 49(data) 367 125 54
|
||||
Store 371 370
|
||||
372: 6(int) Load 8(invocation)
|
||||
373: 204(ptr) AccessChain 49(data) 60 125
|
||||
374: 45(f64vec4) Load 373
|
||||
375:203(f64vec2) VectorShuffle 374 374 0 1
|
||||
376:203(f64vec2) GroupNonUniformBroadcastFirst 38 375
|
||||
377: 197(ptr) AccessChain 49(data) 372 125 54
|
||||
378:44(float64_t) CompositeExtract 376 0
|
||||
Store 377 378
|
||||
379: 197(ptr) AccessChain 49(data) 372 125 64
|
||||
380:44(float64_t) CompositeExtract 376 1
|
||||
Store 379 380
|
||||
381: 6(int) Load 8(invocation)
|
||||
382: 204(ptr) AccessChain 49(data) 51 125
|
||||
383: 45(f64vec4) Load 382
|
||||
384:214(f64vec3) VectorShuffle 383 383 0 1 2
|
||||
385:214(f64vec3) GroupNonUniformBroadcastFirst 38 384
|
||||
386: 197(ptr) AccessChain 49(data) 381 125 54
|
||||
387:44(float64_t) CompositeExtract 385 0
|
||||
Store 386 387
|
||||
388: 197(ptr) AccessChain 49(data) 381 125 64
|
||||
389:44(float64_t) CompositeExtract 385 1
|
||||
Store 388 389
|
||||
390: 197(ptr) AccessChain 49(data) 381 125 72
|
||||
391:44(float64_t) CompositeExtract 385 2
|
||||
Store 390 391
|
||||
392: 6(int) Load 8(invocation)
|
||||
393: 204(ptr) AccessChain 49(data) 125 125
|
||||
394: 45(f64vec4) Load 393
|
||||
395: 45(f64vec4) GroupNonUniformBroadcastFirst 38 394
|
||||
396: 204(ptr) AccessChain 49(data) 392 125
|
||||
Store 396 395
|
||||
397: 6(int) Load 8(invocation)
|
||||
398: 131(ptr) AccessChain 49(data) 61 60 54
|
||||
399: 42(int) Load 398
|
||||
400: 36(bool) SLessThan 399 61
|
||||
401: 36(bool) GroupNonUniformBroadcastFirst 38 400
|
||||
402: 42(int) Select 401 60 61
|
||||
403: 131(ptr) AccessChain 49(data) 397 60 54
|
||||
Store 403 402
|
||||
404: 6(int) Load 8(invocation)
|
||||
405: 138(ptr) AccessChain 49(data) 60 60
|
||||
406: 43(ivec4) Load 405
|
||||
407: 137(ivec2) VectorShuffle 406 406 0 1
|
||||
408: 242(bvec2) SLessThan 407 241
|
||||
409: 242(bvec2) GroupNonUniformBroadcastFirst 38 408
|
||||
410: 137(ivec2) Select 409 245 241
|
||||
411: 131(ptr) AccessChain 49(data) 404 60 54
|
||||
412: 42(int) CompositeExtract 410 0
|
||||
Store 411 412
|
||||
413: 131(ptr) AccessChain 49(data) 404 60 64
|
||||
414: 42(int) CompositeExtract 410 1
|
||||
Store 413 414
|
||||
415: 6(int) Load 8(invocation)
|
||||
416: 138(ptr) AccessChain 49(data) 60 60
|
||||
417: 43(ivec4) Load 416
|
||||
418: 148(ivec3) VectorShuffle 417 417 0 1 2
|
||||
419: 256(bvec3) SLessThan 418 255
|
||||
420: 256(bvec3) GroupNonUniformBroadcastFirst 38 419
|
||||
421: 148(ivec3) Select 420 259 255
|
||||
422: 131(ptr) AccessChain 49(data) 415 60 54
|
||||
423: 42(int) CompositeExtract 421 0
|
||||
Store 422 423
|
||||
424: 131(ptr) AccessChain 49(data) 415 60 64
|
||||
425: 42(int) CompositeExtract 421 1
|
||||
Store 424 425
|
||||
426: 131(ptr) AccessChain 49(data) 415 60 72
|
||||
427: 42(int) CompositeExtract 421 2
|
||||
Store 426 427
|
||||
428: 6(int) Load 8(invocation)
|
||||
429: 138(ptr) AccessChain 49(data) 60 60
|
||||
430: 43(ivec4) Load 429
|
||||
431: 83(bvec4) SLessThan 430 270
|
||||
432: 83(bvec4) GroupNonUniformBroadcastFirst 38 431
|
||||
433: 43(ivec4) Select 432 273 270
|
||||
434: 138(ptr) AccessChain 49(data) 428 60
|
||||
Store 434 433
|
||||
Branch 94
|
||||
94: Label
|
||||
Return
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue