[llvm] 515660d - [Support] Make getMaxValue and getMinValue constexpr variables (NFC) (#161480)
via llvm-commits
llvm-commits at lists.llvm.org
Wed Oct 1 08:59:54 PDT 2025
Author: Kazu Hirata
Date: 2025-10-01T08:59:49-07:00
New Revision: 515660d843b04d62eed816e9fb191f31af805e4b
URL: https://github.com/llvm/llvm-project/commit/515660d843b04d62eed816e9fb191f31af805e4b
DIFF: https://github.com/llvm/llvm-project/commit/515660d843b04d62eed816e9fb191f31af805e4b.diff
LOG: [Support] Make getMaxValue and getMinValue constexpr variables (NFC) (#161480)
This patch makes getMaxValue and getMinValue constexpr variables and
"inlines" the calls to getMaxValue and getMinValue.
We could probably make InstructionCost constexpr also, but that's left
for another day.
Added:
Modified:
llvm/include/llvm/Support/InstructionCost.h
Removed:
################################################################################
diff --git a/llvm/include/llvm/Support/InstructionCost.h b/llvm/include/llvm/Support/InstructionCost.h
index ab1c8ebc8c95e..507c16666b958 100644
--- a/llvm/include/llvm/Support/InstructionCost.h
+++ b/llvm/include/llvm/Support/InstructionCost.h
@@ -59,8 +59,8 @@ class InstructionCost {
State = Invalid;
}
- static CostType getMaxValue() { return std::numeric_limits<CostType>::max(); }
- static CostType getMinValue() { return std::numeric_limits<CostType>::min(); }
+ static constexpr CostType MaxValue = std::numeric_limits<CostType>::max();
+ static constexpr CostType MinValue = std::numeric_limits<CostType>::min();
public:
// A default constructed InstructionCost is a valid zero cost
@@ -69,8 +69,8 @@ class InstructionCost {
InstructionCost(CostState) = delete;
InstructionCost(CostType Val) : Value(Val), State(Valid) {}
- static InstructionCost getMax() { return getMaxValue(); }
- static InstructionCost getMin() { return getMinValue(); }
+ static InstructionCost getMax() { return MaxValue; }
+ static InstructionCost getMin() { return MinValue; }
static InstructionCost getInvalid(CostType Val = 0) {
InstructionCost Tmp(Val);
Tmp.setInvalid();
@@ -102,7 +102,7 @@ class InstructionCost {
// Saturating addition.
InstructionCost::CostType Result;
if (AddOverflow(Value, RHS.Value, Result))
- Result = RHS.Value > 0 ? getMaxValue() : getMinValue();
+ Result = RHS.Value > 0 ? MaxValue : MinValue;
Value = Result;
return *this;
@@ -120,7 +120,7 @@ class InstructionCost {
// Saturating subtract.
InstructionCost::CostType Result;
if (SubOverflow(Value, RHS.Value, Result))
- Result = RHS.Value > 0 ? getMinValue() : getMaxValue();
+ Result = RHS.Value > 0 ? MinValue : MaxValue;
Value = Result;
return *this;
}
@@ -138,9 +138,9 @@ class InstructionCost {
InstructionCost::CostType Result;
if (MulOverflow(Value, RHS.Value, Result)) {
if ((Value > 0 && RHS.Value > 0) || (Value < 0 && RHS.Value < 0))
- Result = getMaxValue();
+ Result = MaxValue;
else
- Result = getMinValue();
+ Result = MinValue;
}
Value = Result;
More information about the llvm-commits
mailing list