diff options
author | Jay Foad <jay.foad@amd.com> | 2019-12-11 10:29:23 +0000 |
---|---|---|
committer | Jay Foad <jay.foad@amd.com> | 2019-12-18 09:46:11 +0000 |
commit | 97ca7c2cc9083ebde681b0e11f7a8ccae1966d64 (patch) | |
tree | b619d6f8413aa57e27a897b7d0650836f1d0133c /llvm/lib/CodeGen/MachineScheduler.cpp | |
parent | 862a60241687a2f718d2c4f554afd9d520da8952 (diff) | |
download | bcm5719-llvm-97ca7c2cc9083ebde681b0e11f7a8ccae1966d64.tar.gz bcm5719-llvm-97ca7c2cc9083ebde681b0e11f7a8ccae1966d64.zip |
[AArch64] Enable clustering memory accesses to fixed stack objects
Summary:
r347747 added support for clustering mem ops with FI base operands
including support for fixed stack objects in shouldClusterFI, but
apparently this was never tested.
This patch fixes shouldClusterFI to work with scaled as well as
unscaled load/store instructions, and fixes the ordering of memory ops
in MemOpInfo::operator< to ensure that memory addresses always
increase, regardless of which direction the stack grows.
Subscribers: MatzeB, kristof.beyls, hiraditya, javed.absar, arphaman, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D71334
Diffstat (limited to 'llvm/lib/CodeGen/MachineScheduler.cpp')
-rw-r--r-- | llvm/lib/CodeGen/MachineScheduler.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/MachineScheduler.cpp b/llvm/lib/CodeGen/MachineScheduler.cpp index 92dbc48ae2a..a10096606b6 100644 --- a/llvm/lib/CodeGen/MachineScheduler.cpp +++ b/llvm/lib/CodeGen/MachineScheduler.cpp @@ -1498,7 +1498,7 @@ class BaseMemOpClusterMutation : public ScheduleDAGMutation { : BaseOp->getIndex() < RHS.BaseOp->getIndex(); if (Offset != RHS.Offset) - return StackGrowsDown ? Offset > RHS.Offset : Offset < RHS.Offset; + return Offset < RHS.Offset; return SU->NodeNum < RHS.SU->NodeNum; } |