summaryrefslogtreecommitdiff
path: root/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2007-02-05 23:11:37 +0000
committerChris Lattner <sabre@nondot.org>2007-02-05 23:11:37 +0000
commit6a1a28dedde99b2d939c8290d1268cb4938c8183 (patch)
treeb65bec12ef83538a5e3154099eee55a92c69dbea /lib/Transforms/Utils/PromoteMemoryToRegister.cpp
parent7ef856dfad10615cac37eb0eb7932cd1fbdcf9e8 (diff)
downloadllvm-6a1a28dedde99b2d939c8290d1268cb4938c8183.tar.gz
llvm-6a1a28dedde99b2d939c8290d1268cb4938c8183.tar.bz2
llvm-6a1a28dedde99b2d939c8290d1268cb4938c8183.tar.xz
Switch InsertedPHINodes back to SmallPtrSet now that the SmallPtrSet::erase
bug is fixed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33932 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Utils/PromoteMemoryToRegister.cpp')
-rw-r--r--lib/Transforms/Utils/PromoteMemoryToRegister.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/lib/Transforms/Utils/PromoteMemoryToRegister.cpp b/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
index 98d5b998b9..39a4c897cf 100644
--- a/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
+++ b/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
@@ -115,7 +115,7 @@ namespace {
private:
void MarkDominatingPHILive(BasicBlock *BB, unsigned AllocaNum,
- std::set<PHINode*> &DeadPHINodes);
+ SmallPtrSet<PHINode*, 16> &DeadPHINodes);
bool PromoteLocallyUsedAlloca(BasicBlock *BB, AllocaInst *AI);
void PromoteLocallyUsedAllocas(BasicBlock *BB,
const std::vector<AllocaInst*> &AIs);
@@ -123,7 +123,7 @@ namespace {
void RenamePass(BasicBlock *BB, BasicBlock *Pred,
std::vector<Value*> &IncVals);
bool QueuePhiNode(BasicBlock *BB, unsigned AllocaIdx, unsigned &Version,
- std::set<PHINode*> &InsertedPHINodes);
+ SmallPtrSet<PHINode*, 16> &InsertedPHINodes);
};
} // end of anonymous namespace
@@ -271,7 +271,7 @@ void PromoteMem2Reg::run() {
// dominance frontier of EACH basic-block we have a write in.
//
unsigned CurrentVersion = 0;
- std::set<PHINode*> InsertedPHINodes;
+ SmallPtrSet<PHINode*, 16> InsertedPHINodes;
std::vector<unsigned> DFBlocks;
while (!DefiningBlocks.empty()) {
BasicBlock *BB = DefiningBlocks.back();
@@ -315,7 +315,7 @@ void PromoteMem2Reg::run() {
UsingBlocks.clear();
// If there are any PHI nodes which are now known to be dead, remove them!
- for (std::set<PHINode*>::iterator I = InsertedPHINodes.begin(),
+ for (SmallPtrSet<PHINode*, 16>::iterator I = InsertedPHINodes.begin(),
E = InsertedPHINodes.end(); I != E; ++I) {
PHINode *PN = *I;
std::vector<PHINode*> &BBPNs = NewPhiNodes[PN->getParent()];
@@ -489,7 +489,7 @@ void PromoteMem2Reg::run() {
// DeadPHINodes set are removed.
//
void PromoteMem2Reg::MarkDominatingPHILive(BasicBlock *BB, unsigned AllocaNum,
- std::set<PHINode*> &DeadPHINodes) {
+ SmallPtrSet<PHINode*, 16> &DeadPHINodes) {
// Scan the immediate dominators of this block looking for a block which has a
// PHI node for Alloca num. If we find it, mark the PHI node as being alive!
for (DominatorTree::Node *N = DT[BB]; N; N = N->getIDom()) {
@@ -630,7 +630,7 @@ PromoteLocallyUsedAllocas(BasicBlock *BB, const std::vector<AllocaInst*> &AIs) {
//
bool PromoteMem2Reg::QueuePhiNode(BasicBlock *BB, unsigned AllocaNo,
unsigned &Version,
- std::set<PHINode*> &InsertedPHINodes) {
+ SmallPtrSet<PHINode*, 16> &InsertedPHINodes) {
// Look up the basic-block in question.
std::vector<PHINode*> &BBPNs = NewPhiNodes[BB];
if (BBPNs.empty()) BBPNs.resize(Allocas.size());