[llvm] b35d345 - [AArch64] Add an option for sve-prefer-fixed-over-scalable-if-equal. NFC
David Green via llvm-commits
llvm-commits at lists.llvm.org
Tue Dec 31 03:07:47 PST 2024
Author: David Green
Date: 2024-12-31T11:07:42Z
New Revision: b35d3453ddf14e9564a6b65bd325051f4492311c
URL: https://github.com/llvm/llvm-project/commit/b35d3453ddf14e9564a6b65bd325051f4492311c
DIFF: https://github.com/llvm/llvm-project/commit/b35d3453ddf14e9564a6b65bd325051f4492311c.diff
LOG: [AArch64] Add an option for sve-prefer-fixed-over-scalable-if-equal. NFC
Add a new option to control preferFixedOverScalableIfEqualCost, useful for
testing.
Added:
Modified:
llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
Removed:
################################################################################
diff --git a/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp b/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
index 0566a875900127..515764c915bf4a 100644
--- a/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
+++ b/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
@@ -35,6 +35,9 @@ using namespace llvm::PatternMatch;
static cl::opt<bool> EnableFalkorHWPFUnrollFix("enable-falkor-hwpf-unroll-fix",
cl::init(true), cl::Hidden);
+static cl::opt<bool> SVEPreferFixedOverScalableIfEqualCost(
+ "sve-prefer-fixed-over-scalable-if-equal", cl::Hidden);
+
static cl::opt<unsigned> SVEGatherOverhead("sve-gather-overhead", cl::init(10),
cl::Hidden);
@@ -4919,6 +4922,12 @@ static bool containsDecreasingPointers(Loop *TheLoop,
return false;
}
+bool AArch64TTIImpl::preferFixedOverScalableIfEqualCost() const {
+ if (SVEPreferFixedOverScalableIfEqualCost.getNumOccurrences())
+ return SVEPreferFixedOverScalableIfEqualCost;
+ return ST->useFixedOverScalableIfEqualCost();
+}
+
unsigned AArch64TTIImpl::getEpilogueVectorizationMinVF() const {
return ST->getEpilogueVectorizationMinVF();
}
diff --git a/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h b/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
index 83b86e31565e49..214fb4e352eeb2 100644
--- a/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
+++ b/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
@@ -387,9 +387,7 @@ class AArch64TTIImpl : public BasicTTIImplBase<AArch64TTIImpl> {
return TailFoldingStyle::DataWithoutLaneMask;
}
- bool preferFixedOverScalableIfEqualCost() const {
- return ST->useFixedOverScalableIfEqualCost();
- }
+ bool preferFixedOverScalableIfEqualCost() const;
unsigned getEpilogueVectorizationMinVF() const;
More information about the llvm-commits
mailing list