Commit 804e768
authored
[DAG] Recognise AVGFLOOR (((A >> 1) + (B >> 1)) + (A & B & 1)) patterns (#169644)
Recognise 'LSB' style AVGFLOOR patterns.
Alive2:
[https://alive2.llvm.org/ce/z/nfSSk_](https://alive2.llvm.org/ce/z/nfSSk_)
Fixes #536481 parent a108881 commit 804e768
File tree
3 files changed
+81
-130
lines changed- llvm
- lib/CodeGen/SelectionDAG
- test/CodeGen/X86
3 files changed
+81
-130
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3160 | 3160 | | |
3161 | 3161 | | |
3162 | 3162 | | |
| 3163 | + | |
3163 | 3164 | | |
3164 | 3165 | | |
3165 | 3166 | | |
3166 | 3167 | | |
3167 | 3168 | | |
3168 | 3169 | | |
3169 | | - | |
3170 | | - | |
| 3170 | + | |
| 3171 | + | |
| 3172 | + | |
| 3173 | + | |
| 3174 | + | |
| 3175 | + | |
| 3176 | + | |
3171 | 3177 | | |
3172 | 3178 | | |
3173 | 3179 | | |
3174 | | - | |
3175 | | - | |
| 3180 | + | |
| 3181 | + | |
| 3182 | + | |
| 3183 | + | |
| 3184 | + | |
| 3185 | + | |
| 3186 | + | |
3176 | 3187 | | |
3177 | 3188 | | |
3178 | 3189 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
50 | 46 | | |
51 | 47 | | |
52 | 48 | | |
53 | 49 | | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | | - | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
61 | 55 | | |
62 | 56 | | |
63 | 57 | | |
| |||
124 | 118 | | |
125 | 119 | | |
126 | 120 | | |
127 | | - | |
128 | | - | |
129 | | - | |
130 | | - | |
131 | | - | |
132 | | - | |
133 | 121 | | |
| 122 | + | |
134 | 123 | | |
135 | 124 | | |
136 | 125 | | |
137 | 126 | | |
138 | 127 | | |
139 | | - | |
140 | | - | |
141 | | - | |
142 | | - | |
| 128 | + | |
| 129 | + | |
143 | 130 | | |
144 | | - | |
145 | | - | |
146 | | - | |
| 131 | + | |
147 | 132 | | |
148 | 133 | | |
149 | 134 | | |
| |||
214 | 199 | | |
215 | 200 | | |
216 | 201 | | |
217 | | - | |
218 | | - | |
219 | | - | |
220 | | - | |
221 | | - | |
222 | | - | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
223 | 206 | | |
224 | 207 | | |
225 | 208 | | |
226 | 209 | | |
227 | | - | |
228 | | - | |
229 | | - | |
230 | | - | |
231 | | - | |
232 | | - | |
233 | | - | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
234 | 215 | | |
235 | 216 | | |
236 | 217 | | |
| |||
316 | 297 | | |
317 | 298 | | |
318 | 299 | | |
319 | | - | |
320 | | - | |
321 | 300 | | |
322 | | - | |
323 | | - | |
324 | | - | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
325 | 305 | | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
326 | 309 | | |
327 | | - | |
328 | | - | |
329 | | - | |
330 | 310 | | |
331 | | - | |
332 | | - | |
333 | | - | |
| 311 | + | |
| 312 | + | |
334 | 313 | | |
335 | 314 | | |
336 | 315 | | |
337 | 316 | | |
338 | 317 | | |
339 | 318 | | |
340 | 319 | | |
341 | | - | |
342 | | - | |
343 | | - | |
344 | 320 | | |
345 | | - | |
346 | | - | |
347 | | - | |
348 | | - | |
| 321 | + | |
| 322 | + | |
| 323 | + | |
| 324 | + | |
349 | 325 | | |
350 | 326 | | |
351 | 327 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
40 | 40 | | |
41 | 41 | | |
42 | 42 | | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
50 | 46 | | |
51 | 47 | | |
52 | 48 | | |
53 | 49 | | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | | - | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
61 | 55 | | |
62 | 56 | | |
63 | 57 | | |
| |||
124 | 118 | | |
125 | 119 | | |
126 | 120 | | |
127 | | - | |
128 | | - | |
129 | | - | |
130 | | - | |
131 | | - | |
132 | | - | |
133 | 121 | | |
| 122 | + | |
134 | 123 | | |
135 | 124 | | |
136 | 125 | | |
137 | 126 | | |
138 | 127 | | |
139 | | - | |
140 | | - | |
141 | | - | |
142 | | - | |
| 128 | + | |
| 129 | + | |
143 | 130 | | |
144 | | - | |
145 | | - | |
146 | | - | |
| 131 | + | |
147 | 132 | | |
148 | 133 | | |
149 | 134 | | |
| |||
214 | 199 | | |
215 | 200 | | |
216 | 201 | | |
217 | | - | |
218 | | - | |
219 | | - | |
220 | | - | |
221 | | - | |
222 | | - | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
223 | 206 | | |
224 | 207 | | |
225 | 208 | | |
226 | 209 | | |
| 210 | + | |
227 | 211 | | |
228 | | - | |
229 | | - | |
230 | | - | |
231 | | - | |
232 | | - | |
233 | | - | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
234 | 215 | | |
235 | 216 | | |
236 | 217 | | |
| |||
300 | 281 | | |
301 | 282 | | |
302 | 283 | | |
303 | | - | |
304 | | - | |
305 | | - | |
306 | | - | |
307 | 284 | | |
308 | 285 | | |
309 | | - | |
310 | | - | |
311 | | - | |
312 | | - | |
313 | | - | |
314 | | - | |
315 | | - | |
316 | | - | |
317 | | - | |
318 | | - | |
319 | | - | |
320 | | - | |
321 | | - | |
322 | | - | |
323 | | - | |
324 | | - | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
325 | 292 | | |
326 | 293 | | |
327 | 294 | | |
328 | 295 | | |
329 | | - | |
330 | | - | |
331 | | - | |
332 | 296 | | |
333 | | - | |
334 | | - | |
335 | | - | |
336 | | - | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
337 | 301 | | |
338 | 302 | | |
339 | 303 | | |
| |||
0 commit comments