[llvm] Replace m_SpecificInt(1) with m_One() (NFC) (PR #102173)
Rose Silicon via llvm-commits
llvm-commits at lists.llvm.org
Fri Aug 9 08:54:50 PDT 2024
https://github.com/RSilicon updated https://github.com/llvm/llvm-project/pull/102173
>From a5884f056a409cc47144f2563a080de2a88785e4 Mon Sep 17 00:00:00 2001
From: Rose <gfunni234 at gmail.com>
Date: Tue, 6 Aug 2024 12:02:27 -0400
Subject: [PATCH] [InstCombine] Replace m_SpecificInt(1) with m_One()
---
llvm/include/llvm/IR/PatternMatch.h | 2 +-
llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp | 10 +++++-----
.../AggressiveInstCombine/AggressiveInstCombine.cpp | 2 +-
.../lib/Transforms/InstCombine/InstCombineAndOrXor.cpp | 4 ++--
llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp | 2 +-
5 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/llvm/include/llvm/IR/PatternMatch.h b/llvm/include/llvm/IR/PatternMatch.h
index 9c70a60bf50c77..530cc708daa4f7 100644
--- a/llvm/include/llvm/IR/PatternMatch.h
+++ b/llvm/include/llvm/IR/PatternMatch.h
@@ -2927,7 +2927,7 @@ struct VScaleVal_match {
if (GEP->getNumIndices() == 1 && DerefTy &&
DerefTy->getElementType()->isIntegerTy(8) &&
m_Zero().match(GEP->getPointerOperand()) &&
- m_SpecificInt(1).match(GEP->idx_begin()->get()))
+ m_One().match(GEP->idx_begin()->get()))
return true;
}
}
diff --git a/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp b/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
index e85fd73996dd1a..1d378b8cb3241a 100644
--- a/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
+++ b/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
@@ -1882,8 +1882,8 @@ instCombineLD1GatherIndex(InstCombiner &IC, IntrinsicInst &II) {
// (sve.ld1.gather.index Mask BasePtr (sve.index IndexBase 1))
// => (masked.load (gep BasePtr IndexBase) Align Mask zeroinitializer)
Value *IndexBase;
- if (match(Index, m_Intrinsic<Intrinsic::aarch64_sve_index>(
- m_Value(IndexBase), m_SpecificInt(1)))) {
+ if (match(Index, m_Intrinsic<Intrinsic::aarch64_sve_index>(m_Value(IndexBase),
+ m_One()))) {
Align Alignment =
BasePtr->getPointerAlignment(II.getDataLayout());
@@ -1912,8 +1912,8 @@ instCombineST1ScatterIndex(InstCombiner &IC, IntrinsicInst &II) {
// (sve.st1.scatter.index Value Mask BasePtr (sve.index IndexBase 1))
// => (masked.store Value (gep BasePtr IndexBase) Align Mask)
Value *IndexBase;
- if (match(Index, m_Intrinsic<Intrinsic::aarch64_sve_index>(
- m_Value(IndexBase), m_SpecificInt(1)))) {
+ if (match(Index, m_Intrinsic<Intrinsic::aarch64_sve_index>(m_Value(IndexBase),
+ m_One()))) {
Align Alignment =
BasePtr->getPointerAlignment(II.getDataLayout());
@@ -2508,7 +2508,7 @@ bool AArch64TTIImpl::isExtPartOfAvgExpr(const Instruction *ExtUser, Type *Dst,
// m_ZExtOrSExt matched.
Instruction *Ex1, *Ex2;
if (!(match(Add, m_c_Add(m_Instruction(Ex1),
- m_c_Add(m_Instruction(Ex2), m_SpecificInt(1))))))
+ m_c_Add(m_Instruction(Ex2), m_One())))))
return false;
// Ensure both extends are of the same type
diff --git a/llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp b/llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
index 09ffc2d184f18b..bc4dfc1114147f 100644
--- a/llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
+++ b/llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
@@ -327,7 +327,7 @@ static bool tryToRecognizePopCount(Instruction &I) {
Value *Root, *SubOp1;
// Matching "i - ((i >> 1) & 0x55555555...)".
if (match(AndOp0, m_Sub(m_Value(Root), m_Value(SubOp1))) &&
- match(SubOp1, m_And(m_LShr(m_Specific(Root), m_SpecificInt(1)),
+ match(SubOp1, m_And(m_LShr(m_Specific(Root), m_One()),
m_SpecificInt(Mask55)))) {
LLVM_DEBUG(dbgs() << "Recognized popcount intrinsic\n");
IRBuilder<> Builder(&I);
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
index 2db05c669145b9..7fbc6d9bc7acf6 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
@@ -930,7 +930,7 @@ static Value *foldIsPowerOf2OrZero(ICmpInst *Cmp0, ICmpInst *Cmp1, bool IsAnd,
CmpInst::Predicate Pred0, Pred1;
Value *X;
if (!match(Cmp0, m_ICmp(Pred0, m_Intrinsic<Intrinsic::ctpop>(m_Value(X)),
- m_SpecificInt(1))) ||
+ m_One())) ||
!match(Cmp1, m_ICmp(Pred1, m_Specific(X), m_ZeroInt())))
return nullptr;
@@ -968,7 +968,7 @@ static Value *foldIsPowerOf2(ICmpInst *Cmp0, ICmpInst *Cmp1, bool JoinedByAnd,
match(Cmp0, m_SpecificICmp(ICmpInst::ICMP_EQ, m_Value(X), m_ZeroInt())) &&
match(Cmp1, m_SpecificICmp(ICmpInst::ICMP_UGT,
m_Intrinsic<Intrinsic::ctpop>(m_Specific(X)),
- m_SpecificInt(1)))) {
+ m_One()))) {
Value *CtPop = Cmp1->getOperand(0);
return Builder.CreateICmpNE(CtPop, ConstantInt::get(CtPop->getType(), 1));
}
diff --git a/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp b/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
index d0a83a8242ddc0..534ccbee400dd0 100644
--- a/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
+++ b/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
@@ -1359,7 +1359,7 @@ class LowerMatrixIntrinsics {
m_Load(m_Value()),
m_CombineOr(m_Intrinsic<Intrinsic::matrix_transpose>(),
m_Intrinsic<Intrinsic::matrix_column_major_load>(
- m_Value(), m_SpecificInt(1))))));
+ m_Value(), m_One())))));
};
// Returns the cost benefit of using \p Op with the dot product lowering. If
// the returned cost is < 0, the argument is cheaper to use in the
More information about the llvm-commits
mailing list