From: Sanjay Patel Date: Tue, 8 Mar 2016 20:53:48 +0000 (+0000) Subject: use range-based for loop; NFCI X-Git-Tag: llvmorg-3.9.0-rc1~12235 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b8d071bc8a542680e56eb769313380ada12f1546;p=platform%2Fupstream%2Fllvm.git use range-based for loop; NFCI llvm-svn: 262956 --- diff --git a/llvm/lib/Analysis/CodeMetrics.cpp b/llvm/lib/Analysis/CodeMetrics.cpp index 035717a..ed83704 100644 --- a/llvm/lib/Analysis/CodeMetrics.cpp +++ b/llvm/lib/Analysis/CodeMetrics.cpp @@ -100,22 +100,21 @@ void CodeMetrics::collectEphemeralValues( completeEphemeralValues(WorkSet, EphValues); } -/// analyzeBasicBlock - Fill in the current structure with information gleaned -/// from the specified block. +/// Fill in the current structure with information gleaned from the specified +/// block. void CodeMetrics::analyzeBasicBlock(const BasicBlock *BB, const TargetTransformInfo &TTI, SmallPtrSetImpl &EphValues) { ++NumBlocks; unsigned NumInstsBeforeThisBB = NumInsts; - for (BasicBlock::const_iterator II = BB->begin(), E = BB->end(); - II != E; ++II) { + for (const Instruction &I : *BB) { // Skip ephemeral values. - if (EphValues.count(&*II)) + if (EphValues.count(&I)) continue; // Special handling for calls. - if (isa(II) || isa(II)) { - ImmutableCallSite CS(cast(II)); + if (isa(I) || isa(I)) { + ImmutableCallSite CS(&I); if (const Function *F = CS.getCalledFunction()) { // If a function is both internal and has a single use, then it is @@ -141,29 +140,29 @@ void CodeMetrics::analyzeBasicBlock(const BasicBlock *BB, } } - if (const AllocaInst *AI = dyn_cast(II)) { + if (const AllocaInst *AI = dyn_cast(&I)) { if (!AI->isStaticAlloca()) this->usesDynamicAlloca = true; } - if (isa(II) || II->getType()->isVectorTy()) + if (isa(I) || I.getType()->isVectorTy()) ++NumVectorInsts; - if (II->getType()->isTokenTy() && II->isUsedOutsideOfBlock(BB)) + if (I.getType()->isTokenTy() && I.isUsedOutsideOfBlock(BB)) notDuplicatable = true; - if (const CallInst *CI = dyn_cast(II)) { + if (const CallInst *CI = dyn_cast(&I)) { if (CI->cannotDuplicate()) notDuplicatable = true; if (CI->isConvergent()) convergent = true; } - if (const InvokeInst *InvI = dyn_cast(II)) + if (const InvokeInst *InvI = dyn_cast(&I)) if (InvI->cannotDuplicate()) notDuplicatable = true; - NumInsts += TTI.getUserCost(&*II); + NumInsts += TTI.getUserCost(&I); } if (isa(BB->getTerminator()))