Commit ed866d9
authored
[X86][Combine] Ensure single use chain in extract-load combine (llvm#136520)
The problem is that `SrcBC = peekThroughBitcasts(Src)` doesn't ensure
single use chain. It results in the situation when a cast may have
multiple users and instead of replacing a load we introduce a new one.
The situation is worsened by the fact that we've replaced the token from
the original load and its correct memory order now is not guaranteed.1 parent e3eee9e commit ed866d9
File tree
2 files changed
+8
-4
lines changed- llvm
- lib/Target/X86
- test/CodeGen/X86
2 files changed
+8
-4
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
46268 | 46268 | | |
46269 | 46269 | | |
46270 | 46270 | | |
46271 | | - | |
| 46271 | + | |
| 46272 | + | |
46272 | 46273 | | |
46273 | 46274 | | |
46274 | 46275 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
573 | 573 | | |
574 | 574 | | |
575 | 575 | | |
| 576 | + | |
576 | 577 | | |
577 | | - | |
578 | | - | |
| 578 | + | |
| 579 | + | |
| 580 | + | |
579 | 581 | | |
580 | 582 | | |
581 | 583 | | |
582 | | - | |
| 584 | + | |
583 | 585 | | |
| 586 | + | |
584 | 587 | | |
585 | 588 | | |
586 | 589 | | |
| |||
0 commit comments