[llvm] r272238 - Minor clean up in loopHasNoAbnormalExits; NFC
Sanjoy Das via llvm-commits
llvm-commits at lists.llvm.org
Wed Jun 8 18:14:03 PDT 2016
Author: sanjoy
Date: Wed Jun 8 20:14:03 2016
New Revision: 272238
URL: http://llvm.org/viewvc/llvm-project?rev=272238&view=rev
Log:
Minor clean up in loopHasNoAbnormalExits; NFC
Modified:
llvm/trunk/lib/Analysis/ScalarEvolution.cpp
Modified: llvm/trunk/lib/Analysis/ScalarEvolution.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/ScalarEvolution.cpp?rev=272238&r1=272237&r2=272238&view=diff
==============================================================================
--- llvm/trunk/lib/Analysis/ScalarEvolution.cpp (original)
+++ llvm/trunk/lib/Analysis/ScalarEvolution.cpp Wed Jun 8 20:14:03 2016
@@ -4912,15 +4912,14 @@ bool ScalarEvolution::isAddRecNeverPoiso
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;
}
More information about the llvm-commits
mailing list