[llvm] [RISCV] Enable load clustering by default (PR #73789)
Zi Xuan Wu via llvm-commits
llvm-commits at lists.llvm.org
Thu Dec 7 22:18:13 PST 2023
================
@@ -1496,12 +1496,18 @@ class TargetInstrInfo : public MCInstrInfo {
/// to TargetPassConfig::createMachineScheduler() to have an effect.
///
/// \p BaseOps1 and \p BaseOps2 are memory operands of two memory operations.
+ /// \p Offset1 and \p Offset2 are the byte offsets for the memory
+ /// operations.
+ /// \p OffsetIsScalable1 and \p OffsetIsScalable2 indicate if the offset is
+ /// scaled by a runtime quantity.
/// \p ClusterSize is the number of operations in the resulting load/store
/// cluster if this hook returns true.
/// \p NumBytes is the number of bytes that will be loaded from all the
/// clustered loads if this hook returns true.
virtual bool shouldClusterMemOps(ArrayRef<const MachineOperand *> BaseOps1,
+ int64_t Offset1, bool OffsetIsScalable1,
----------------
zixuan-wu wrote:
Beside offset, do we need add memory width too?
https://github.com/llvm/llvm-project/pull/73789
More information about the llvm-commits
mailing list