From 94fc4bed1f125034930b6807f54d26fb773dd1c0 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 14 Oct 2013 16:05:55 +0000 Subject: Basic blocks typically have few predecessors. Use a SmallDenseMap to avoid a heap allocation when this is the case. llvm-svn: 192602 --- llvm/lib/Transforms/Utils/SSAUpdater.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'llvm/lib/Transforms/Utils/SSAUpdater.cpp') diff --git a/llvm/lib/Transforms/Utils/SSAUpdater.cpp b/llvm/lib/Transforms/Utils/SSAUpdater.cpp index fc85ef32076..30adbfac058 100644 --- a/llvm/lib/Transforms/Utils/SSAUpdater.cpp +++ b/llvm/lib/Transforms/Utils/SSAUpdater.cpp @@ -63,7 +63,7 @@ void SSAUpdater::AddAvailableValue(BasicBlock *BB, Value *V) { } static bool IsEquivalentPHI(PHINode *PHI, - DenseMap &ValueMapping) { + SmallDenseMap &ValueMapping) { unsigned PHINumValues = PHI->getNumIncomingValues(); if (PHINumValues != ValueMapping.size()) return false; @@ -136,8 +136,8 @@ Value *SSAUpdater::GetValueInMiddleOfBlock(BasicBlock *BB) { // Otherwise, we do need a PHI: check to see if we already have one available // in this block that produces the right value. if (isa(BB->begin())) { - DenseMap ValueMapping(PredValues.begin(), - PredValues.end()); + SmallDenseMap ValueMapping(PredValues.begin(), + PredValues.end()); PHINode *SomePHI; for (BasicBlock::iterator It = BB->begin(); (SomePHI = dyn_cast(It)); ++It) { -- cgit v1.2.3