Commit 3bd2d07
committed
[llvm] Optimize MachineMemOperand::getAlign with KnownBits information
When using the `align_value` attribute, the original getAlign calculation
(BaseAlign + Offset) cannot capture more precise alignment information
after the load/store legalization phases (specifically after
`expandUnalignedLoad`/`expandUnalignedStore` generate new load/store
instructions).
Fixes#1432151 parent 97ac648 commit 3bd2d07
File tree
3 files changed
+38
-1
lines changed- llvm
- lib/CodeGen
- SelectionDAG
- test/CodeGen/RISCV
3 files changed
+38
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
| 17 | + | |
17 | 18 | | |
18 | 19 | | |
19 | 20 | | |
| |||
1136 | 1137 | | |
1137 | 1138 | | |
1138 | 1139 | | |
1139 | | - | |
| 1140 | + | |
| 1141 | + | |
| 1142 | + | |
| 1143 | + | |
| 1144 | + | |
| 1145 | + | |
| 1146 | + | |
| 1147 | + | |
| 1148 | + | |
| 1149 | + | |
| 1150 | + | |
| 1151 | + | |
| 1152 | + | |
| 1153 | + | |
1140 | 1154 | | |
1141 | 1155 | | |
1142 | 1156 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11848 | 11848 | | |
11849 | 11849 | | |
11850 | 11850 | | |
| 11851 | + | |
| 11852 | + | |
| 11853 | + | |
| 11854 | + | |
11851 | 11855 | | |
11852 | 11856 | | |
11853 | 11857 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
578 | 578 | | |
579 | 579 | | |
580 | 580 | | |
| 581 | + | |
| 582 | + | |
| 583 | + | |
| 584 | + | |
| 585 | + | |
| 586 | + | |
| 587 | + | |
| 588 | + | |
| 589 | + | |
| 590 | + | |
| 591 | + | |
| 592 | + | |
| 593 | + | |
| 594 | + | |
| 595 | + | |
| 596 | + | |
| 597 | + | |
| 598 | + | |
| 599 | + | |
581 | 600 | | |
582 | 601 | | |
0 commit comments