[llvm] [Matrix] Don't update Changed based on Visit* return value (NFC). (PR #142417)
via llvm-commits
llvm-commits at lists.llvm.org
Mon Jun 2 08:46:23 PDT 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-llvm-transforms
Author: Florian Hahn (fhahn)
<details>
<summary>Changes</summary>
Visit* are always modifying the IR, remove the boolean result.
Depends on https://github.com/llvm/llvm-project/pull/142416.
---
Full diff: https://github.com/llvm/llvm-project/pull/142417.diff
1 Files Affected:
- (modified) llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp (+19-22)
``````````diff
diff --git a/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp b/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
index 787e107464c0a..e6e8c30b9260a 100644
--- a/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
+++ b/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
@@ -1062,13 +1062,16 @@ class LowerMatrixIntrinsics {
Value *Op1;
Value *Op2;
if (auto *BinOp = dyn_cast<BinaryOperator>(Inst))
- Changed |= VisitBinaryOperator(BinOp);
+ VisitBinaryOperator(BinOp);
if (auto *UnOp = dyn_cast<UnaryOperator>(Inst))
- Changed |= VisitUnaryOperator(UnOp);
+ VisitUnaryOperator(UnOp);
if (match(Inst, m_Load(m_Value(Op1))))
- Changed |= VisitLoad(cast<LoadInst>(Inst), Op1, Builder);
+ VisitLoad(cast<LoadInst>(Inst), Op1, Builder);
else if (match(Inst, m_Store(m_Value(Op1), m_Value(Op2))))
- Changed |= VisitStore(cast<StoreInst>(Inst), Op1, Op2, Builder);
+ VisitStore(cast<StoreInst>(Inst), Op1, Op2, Builder);
+ else
+ continue;
+ Changed = true;
}
if (ORE) {
@@ -2105,34 +2108,30 @@ class LowerMatrixIntrinsics {
}
/// Lower load instructions, if shape information is available.
- bool VisitLoad(LoadInst *Inst, Value *Ptr, IRBuilder<> &Builder) {
+ void VisitLoad(LoadInst *Inst, Value *Ptr, IRBuilder<> &Builder) {
auto I = ShapeMap.find(Inst);
- if (I == ShapeMap.end())
- return false;
-
+ assert(I != ShapeMap.end() &&
+ "must only visit instructions with shape info");
LowerLoad(Inst, Ptr, Inst->getAlign(),
Builder.getInt64(I->second.getStride()), Inst->isVolatile(),
I->second);
- return true;
}
- bool VisitStore(StoreInst *Inst, Value *StoredVal, Value *Ptr,
+ void VisitStore(StoreInst *Inst, Value *StoredVal, Value *Ptr,
IRBuilder<> &Builder) {
auto I = ShapeMap.find(StoredVal);
- if (I == ShapeMap.end())
- return false;
-
+ assert(I != ShapeMap.end() &&
+ "must only visit instructions with shape info");
LowerStore(Inst, StoredVal, Ptr, Inst->getAlign(),
Builder.getInt64(I->second.getStride()), Inst->isVolatile(),
I->second);
- return true;
}
/// Lower binary operators, if shape information is available.
- bool VisitBinaryOperator(BinaryOperator *Inst) {
+ void VisitBinaryOperator(BinaryOperator *Inst) {
auto I = ShapeMap.find(Inst);
- if (I == ShapeMap.end())
- return false;
+ assert(I != ShapeMap.end() &&
+ "must only visit instructions with shape info");
Value *Lhs = Inst->getOperand(0);
Value *Rhs = Inst->getOperand(1);
@@ -2157,14 +2156,13 @@ class LowerMatrixIntrinsics {
Result.addNumComputeOps(getNumOps(Result.getVectorTy()) *
Result.getNumVectors()),
Builder);
- return true;
}
/// Lower unary operators, if shape information is available.
- bool VisitUnaryOperator(UnaryOperator *Inst) {
+ void VisitUnaryOperator(UnaryOperator *Inst) {
auto I = ShapeMap.find(Inst);
- if (I == ShapeMap.end())
- return false;
+ assert(I != ShapeMap.end() &&
+ "must only visit instructions with shape info");
Value *Op = Inst->getOperand(0);
@@ -2193,7 +2191,6 @@ class LowerMatrixIntrinsics {
Result.addNumComputeOps(getNumOps(Result.getVectorTy()) *
Result.getNumVectors()),
Builder);
- return true;
}
/// Helper to linearize a matrix expression tree into a string. Currently
``````````
</details>
https://github.com/llvm/llvm-project/pull/142417
More information about the llvm-commits
mailing list