From 043722f7e7860c8f5cb6c5c332f4dcb1efce472a Mon Sep 17 00:00:00 2001 From: Benjamin Kramer Date: Sun, 21 Jul 2013 11:03:40 +0000 Subject: [PATCH] mem2reg: Minor STL usage cleanup. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186790 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../Utils/PromoteMemoryToRegister.cpp | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/lib/Transforms/Utils/PromoteMemoryToRegister.cpp b/lib/Transforms/Utils/PromoteMemoryToRegister.cpp index b4ee4cb87fd..1b51255251a 100644 --- a/lib/Transforms/Utils/PromoteMemoryToRegister.cpp +++ b/lib/Transforms/Utils/PromoteMemoryToRegister.cpp @@ -29,7 +29,6 @@ #include "llvm/Transforms/Utils/PromoteMemToReg.h" #include "llvm/ADT/ArrayRef.h" #include "llvm/ADT/DenseMap.h" -#include "llvm/ADT/Hashing.h" #include "llvm/ADT/STLExtras.h" #include "llvm/ADT/SmallPtrSet.h" #include "llvm/ADT/SmallVector.h" @@ -473,7 +472,8 @@ static void promoteSingleBlockAlloca(AllocaInst *AI, const AllocaInfo &Info, // Sort the stores by their index, making it efficient to do a lookup with a // binary search. - std::sort(StoresByIndex.begin(), StoresByIndex.end()); + std::sort(StoresByIndex.begin(), StoresByIndex.end(), + StoreIndexSearchPredicate()); // Walk all of the loads from this alloca, replacing them with the nearest // store above them, if any. @@ -484,11 +484,11 @@ static void promoteSingleBlockAlloca(AllocaInst *AI, const AllocaInfo &Info, unsigned LoadIdx = LBI.getInstructionIndex(LI); - // Find the nearest store that has a lower than this load. - StoresByIndexTy::iterator I = std::lower_bound( - StoresByIndex.begin(), StoresByIndex.end(), - std::pair(LoadIdx, static_cast(0)), - StoreIndexSearchPredicate()); + // Find the nearest store that has a lower index than this load. + StoresByIndexTy::iterator I = + std::lower_bound(StoresByIndex.begin(), StoresByIndex.end(), + std::make_pair(LoadIdx, static_cast(0)), + StoreIndexSearchPredicate()); if (I == StoresByIndex.begin()) // If there is no store before this load, the load takes the undef value. @@ -996,10 +996,7 @@ NextIteration: // operands so far. Remember this count. unsigned NewPHINumOperands = APN->getNumOperands(); - unsigned NumEdges = 0; - for (succ_iterator I = succ_begin(Pred), E = succ_end(Pred); I != E; ++I) - if (*I == BB) - ++NumEdges; + unsigned NumEdges = std::count(succ_begin(Pred), succ_end(Pred), BB); assert(NumEdges && "Must be at least one edge from Pred to BB!"); // Add entries for all the phis.