[PATCH] D54847: [MachineScheduler] Add support for clustering mem ops with FI base operands
Nirav Dave via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Nov 27 07:33:16 PST 2018
niravd added inline comments.
================
Comment at: lib/Target/AArch64/AArch64InstrInfo.cpp:1159
+ (BaseOpA->isFI() && BaseOpB->isFI() &&
+ BaseOpA->getIndex() == BaseOpB->getIndex())) {
int LowOffset = OffsetA < OffsetB ? OffsetA : OffsetB;
----------------
thegameg wrote:
> niravd wrote:
> > You need to do slightly more checking here as there may be operations that cross Frame index boundaries. SelectionDAGAddressAnalysis has a relevant example.
> Please correct me if I'm wrong, but from what I see in `SelectionDAGAddressAnalysis`, it tries to match **non-equal** FIs. Are you suggesting that we should also support this here? Or that comparing the FIs is not enough?
Right. Comparing FIs is not enough because for accesses based on fixed object frames indices may operate on with memory in another fixed object frame index.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D54847/new/
https://reviews.llvm.org/D54847
More information about the llvm-commits
mailing list