[llvm] c887700 - [SCEV] Remove zext/sext from BuildConstantForSCEV
Nikita Popov via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 28 06:24:08 PDT 2023
Author: Nikita Popov
Date: 2023-09-28T15:23:58+02:00
New Revision: c887700f3b9df959a15fd56e7062329b14a1b786
URL: https://github.com/llvm/llvm-project/commit/c887700f3b9df959a15fd56e7062329b14a1b786
DIFF: https://github.com/llvm/llvm-project/commit/c887700f3b9df959a15fd56e7062329b14a1b786.diff
LOG: [SCEV] Remove zext/sext from BuildConstantForSCEV
In preparation for removing these constant expressions.
Added:
Modified:
llvm/lib/Analysis/ScalarEvolution.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Analysis/ScalarEvolution.cpp b/llvm/lib/Analysis/ScalarEvolution.cpp
index 9ffffcc018cb577..5a994ae2ea4f458 100644
--- a/llvm/lib/Analysis/ScalarEvolution.cpp
+++ b/llvm/lib/Analysis/ScalarEvolution.cpp
@@ -9666,18 +9666,6 @@ static Constant *BuildConstantFromSCEV(const SCEV *V) {
return cast<SCEVConstant>(V)->getValue();
case scUnknown:
return dyn_cast<Constant>(cast<SCEVUnknown>(V)->getValue());
- case scSignExtend: {
- const SCEVSignExtendExpr *SS = cast<SCEVSignExtendExpr>(V);
- if (Constant *CastOp = BuildConstantFromSCEV(SS->getOperand()))
- return ConstantExpr::getSExt(CastOp, SS->getType());
- return nullptr;
- }
- case scZeroExtend: {
- const SCEVZeroExtendExpr *SZ = cast<SCEVZeroExtendExpr>(V);
- if (Constant *CastOp = BuildConstantFromSCEV(SZ->getOperand()))
- return ConstantExpr::getZExt(CastOp, SZ->getType());
- return nullptr;
- }
case scPtrToInt: {
const SCEVPtrToIntExpr *P2I = cast<SCEVPtrToIntExpr>(V);
if (Constant *CastOp = BuildConstantFromSCEV(P2I->getOperand()))
@@ -9727,13 +9715,15 @@ static Constant *BuildConstantFromSCEV(const SCEV *V) {
}
return C;
}
+ case scSignExtend:
+ case scZeroExtend:
case scUDivExpr:
case scSMaxExpr:
case scUMaxExpr:
case scSMinExpr:
case scUMinExpr:
case scSequentialUMinExpr:
- return nullptr; // TODO: smax, umax, smin, umax, umin_seq.
+ return nullptr;
}
llvm_unreachable("Unknown SCEV kind!");
}
More information about the llvm-commits
mailing list