WriteAdr describes scheduling for first operand of load:
$x0, $x1, $x2 = LDPXpost $x0, 2 # x0 is first
Paths
| Differential D87557
[AArch64][MachineScheduler] Fix operand scheduling for pre/post-increment loads ClosedPublic Authored by evgeny777 on Sep 12 2020, 5:20 AM.
Details Summary WriteAdr describes scheduling for first operand of load: $x0, $x1, $x2 = LDPXpost $x0, 2 # x0 is first
Diff Detail Event TimelineComment Actions STRWpost should be $x0 = STRWpost $xzr, $x0. The concept of scheduling a store can be a little strange, but the address update should come as the first operand. I agree loads look backwards. evgeny777 retitled this revision from [AArch64][MachineScheduler] Fix operand scheduling for pre/post-increment loads and stores to [AArch64][MachineScheduler] Fix operand scheduling for pre/post-increment loads. Comment Actions@dmgreen Thx, I've updated the diff. This revision is now accepted and ready to land.Sep 12 2020, 6:16 AM Closed by commit rG2e61cd1295e0: [MachineScheduler] Fix operand scheduling for pre/post-increment loads (authored by evgeny777). · Explain WhySep 12 2020, 6:53 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 291386 llvm/lib/Target/AArch64/AArch64InstrFormats.td
llvm/test/tools/llvm-mca/AArch64/Exynos/load.s
|