diff options
| author | Duncan Sands <baldrick@free.fr> | 2010-11-22 09:41:24 +0000 |
|---|---|---|
| committer | Duncan Sands <baldrick@free.fr> | 2010-11-22 09:41:24 +0000 |
| commit | c6648eb4c33fd4a97436be4a899ae9ebf9dcd24a (patch) | |
| tree | 95ad9776f470c4235718460a0a875e58507bc855 /llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp | |
| parent | 5cadccc4ea94383b0655c0a82ecf70a4cf0b190e (diff) | |
| download | bcm5719-llvm-c6648eb4c33fd4a97436be4a899ae9ebf9dcd24a.tar.gz bcm5719-llvm-c6648eb4c33fd4a97436be4a899ae9ebf9dcd24a.zip | |
Don't keep track of inserted phis in PromoteMemoryToRegister: the information
is never used. Patch by Cameron Zwarich.
llvm-svn: 119963
Diffstat (limited to 'llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp')
| -rw-r--r-- | llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp b/llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp index 092cfbbcab0..b8acb44c956 100644 --- a/llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp +++ b/llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp @@ -265,8 +265,7 @@ namespace { void RenamePass(BasicBlock *BB, BasicBlock *Pred, RenamePassData::ValVector &IncVals, std::vector<RenamePassData> &Worklist); - bool QueuePhiNode(BasicBlock *BB, unsigned AllocaIdx, unsigned &Version, - SmallPtrSet<PHINode*, 16> &InsertedPHINodes); + bool QueuePhiNode(BasicBlock *BB, unsigned AllocaIdx, unsigned &Version); }; struct AllocaInfo { @@ -677,7 +676,6 @@ void PromoteMem2Reg::DetermineInsertionPoint(AllocaInst *AI, unsigned AllocaNum, // Compute the locations where PhiNodes need to be inserted. Look at the // dominance frontier of EACH basic-block we have a write in. unsigned CurrentVersion = 0; - SmallPtrSet<PHINode*, 16> InsertedPHINodes; std::vector<std::pair<unsigned, BasicBlock*> > DFBlocks; while (!Info.DefiningBlocks.empty()) { BasicBlock *BB = Info.DefiningBlocks.back(); @@ -710,7 +708,7 @@ void PromoteMem2Reg::DetermineInsertionPoint(AllocaInst *AI, unsigned AllocaNum, for (unsigned i = 0, e = DFBlocks.size(); i != e; ++i) { BasicBlock *BB = DFBlocks[i].second; - if (QueuePhiNode(BB, AllocaNum, CurrentVersion, InsertedPHINodes)) + if (QueuePhiNode(BB, AllocaNum, CurrentVersion)) Info.DefiningBlocks.push_back(BB); } DFBlocks.clear(); @@ -901,8 +899,7 @@ void PromoteMem2Reg::ConvertDebugDeclareToDebugValue(DbgDeclareInst *DDI, // Alloca returns true if there wasn't already a phi-node for that variable // bool PromoteMem2Reg::QueuePhiNode(BasicBlock *BB, unsigned AllocaNo, - unsigned &Version, - SmallPtrSet<PHINode*, 16> &InsertedPHINodes) { + unsigned &Version) { // Look up the basic-block in question. PHINode *&PN = NewPhiNodes[std::make_pair(BB, AllocaNo)]; @@ -917,8 +914,6 @@ bool PromoteMem2Reg::QueuePhiNode(BasicBlock *BB, unsigned AllocaNo, ++NumPHIInsert; PhiToAllocaMap[PN] = AllocaNo; PN->reserveOperandSpace(getNumPreds(BB)); - - InsertedPHINodes.insert(PN); if (AST && PN->getType()->isPointerTy()) AST->copyValue(PointerAllocaValues[AllocaNo], PN); |

