From 571e7a9db78fc82fb04e348c9741519a3f373c8b Mon Sep 17 00:00:00 2001 From: Sanjoy Das Date: Thu, 9 Jun 2016 01:14:03 +0000 Subject: [PATCH] Minor clean up in loopHasNoAbnormalExits; NFC llvm-svn: 272238 --- lib/Analysis/ScalarEvolution.cpp | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/lib/Analysis/ScalarEvolution.cpp b/lib/Analysis/ScalarEvolution.cpp index 867b0515003..dac3a32dfc1 100644 --- a/lib/Analysis/ScalarEvolution.cpp +++ b/lib/Analysis/ScalarEvolution.cpp @@ -4912,15 +4912,14 @@ bool ScalarEvolution::isAddRecNeverPoison(const Instruction *I, const Loop *L) { bool ScalarEvolution::loopHasNoAbnormalExits(const Loop *L) { auto Itr = LoopHasNoAbnormalExits.find(L); if (Itr == LoopHasNoAbnormalExits.end()) { - bool HasAbnormalExit = false; - for (auto *BB : L->getBlocks()) { - HasAbnormalExit = any_of(*BB, [](Instruction &I) { - return !isGuaranteedToTransferExecutionToSuccessor(&I); + auto NoAbnormalExitInBB = [&](BasicBlock *BB) { + return all_of(*BB, [](Instruction &I) { + return isGuaranteedToTransferExecutionToSuccessor(&I); }); - if (HasAbnormalExit) - break; - } - auto InsertPair = LoopHasNoAbnormalExits.insert({L, !HasAbnormalExit}); + }; + + auto InsertPair = LoopHasNoAbnormalExits.insert( + {L, all_of(L->getBlocks(), NoAbnormalExitInBB)}); assert(InsertPair.second && "We just checked!"); Itr = InsertPair.first; }