Make SCEVExpander::addInsertedValue able to accept Values, not just

Instructions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70552 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman 2009-05-01 16:58:31 +00:00
parent 3d81e31724
commit 99a1302ae4

View File

@ -30,7 +30,7 @@ namespace llvm {
ScalarEvolution &SE;
LoopInfo &LI;
std::map<SCEVHandle, Value*> InsertedExpressions;
std::set<Instruction*> InsertedInstructions;
std::set<Value*> InsertedValues;
BasicBlock::iterator InsertPt;
@ -50,7 +50,7 @@ namespace llvm {
/// inserted by the code rewriter. If so, the client should not modify the
/// instruction.
bool isInsertedInstruction(Instruction *I) const {
return InsertedInstructions.count(I);
return InsertedValues.count(I);
}
/// getOrInsertCanonicalInductionVariable - This method returns the
@ -66,9 +66,9 @@ namespace llvm {
/// addInsertedValue - Remember the specified instruction as being the
/// canonical form for the specified SCEV.
void addInsertedValue(Instruction *I, const SCEV *S) {
InsertedExpressions[S] = (Value*)I;
InsertedInstructions.insert(I);
void addInsertedValue(Value *V, const SCEV *S) {
InsertedExpressions[S] = V;
InsertedValues.insert(V);
}
void setInsertionPoint(BasicBlock::iterator NewIP) { InsertPt = NewIP; }