diff options
author | Chris Lattner <sabre@nondot.org> | 2010-01-05 22:30:42 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-01-05 22:30:42 +0000 |
commit | 94aab49339ee1158b6aa7735ff1de9041ef2d334 (patch) | |
tree | 3e2142952b87b7adb25321a67e62172fd3fe29f9 | |
parent | 7c3ecb6838ef7a2ca306c0f3cd68022f0855ae71 (diff) | |
download | external_llvm-94aab49339ee1158b6aa7735ff1de9041ef2d334.zip external_llvm-94aab49339ee1158b6aa7735ff1de9041ef2d334.tar.gz external_llvm-94aab49339ee1158b6aa7735ff1de9041ef2d334.tar.bz2 |
make this a static function instead of a method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92795 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Transforms/InstCombine/InstCombine.h | 2 | ||||
-rw-r--r-- | lib/Transforms/InstCombine/InstCombineCasts.cpp | 9 |
2 files changed, 5 insertions, 6 deletions
diff --git a/lib/Transforms/InstCombine/InstCombine.h b/lib/Transforms/InstCombine/InstCombine.h index e6ad1c7..136bb88 100644 --- a/lib/Transforms/InstCombine/InstCombine.h +++ b/lib/Transforms/InstCombine/InstCombine.h @@ -338,8 +338,6 @@ private: Value *EvaluateInDifferentType(Value *V, const Type *Ty, bool isSigned); - bool CanEvaluateInDifferentType(Value *V, const Type *Ty, - unsigned CastOpc, int &NumCastsRemoved); unsigned GetOrEnforceKnownAlignment(Value *V, unsigned PrefAlign = 0); diff --git a/lib/Transforms/InstCombine/InstCombineCasts.cpp b/lib/Transforms/InstCombine/InstCombineCasts.cpp index 52c36dd..c5ddec8 100644 --- a/lib/Transforms/InstCombine/InstCombineCasts.cpp +++ b/lib/Transforms/InstCombine/InstCombineCasts.cpp @@ -165,9 +165,8 @@ Instruction *InstCombiner::PromoteCastOfAllocation(BitCastInst &CI, /// If CastOpc is a sext or zext, we are asking if the low bits of the value can /// bit computed in a larger type, which is then and'd or sext_in_reg'd to get /// the final result. -bool InstCombiner::CanEvaluateInDifferentType(Value *V, const Type *Ty, - unsigned CastOpc, - int &NumCastsRemoved){ +static bool CanEvaluateInDifferentType(Value *V, const Type *Ty, + unsigned CastOpc, int &NumCastsRemoved) { // We can always evaluate constants in another type. if (isa<Constant>(V)) return true; @@ -274,7 +273,9 @@ bool InstCombiner::CanEvaluateInDifferentType(Value *V, const Type *Ty, NumCastsRemoved); } case Instruction::PHI: { - // We can change a phi if we can change all operands. + // We can change a phi if we can change all operands. Note that we never + // get into trouble with cyclic PHIs here because we only consider + // instructions with a single use. PHINode *PN = cast<PHINode>(I); for (unsigned i = 0, e = PN->getNumIncomingValues(); i != e; ++i) if (!CanEvaluateInDifferentType(PN->getIncomingValue(i), Ty, CastOpc, |