[llvm] r300244 - [LCSSA] Assert that we always have a valid loop.
Davide Italiano via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 13 13:05:37 PDT 2017
Author: davide
Date: Thu Apr 13 15:05:37 2017
New Revision: 300244
URL: http://llvm.org/viewvc/llvm-project?rev=300244&view=rev
Log:
[LCSSA] Assert that we always have a valid loop.
We could otherwise add BBs not belonging to a loop in `formLCSSA`
and later crash when trying to iterate the loop blocks.
Modified:
llvm/trunk/lib/Transforms/Utils/LCSSA.cpp
Modified: llvm/trunk/lib/Transforms/Utils/LCSSA.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Utils/LCSSA.cpp?rev=300244&r1=300243&r2=300244&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Utils/LCSSA.cpp (original)
+++ llvm/trunk/lib/Transforms/Utils/LCSSA.cpp Thu Apr 13 15:05:37 2017
@@ -87,6 +87,7 @@ bool llvm::formLCSSAForInstructions(Smal
Instruction *I = Worklist.pop_back_val();
BasicBlock *InstBB = I->getParent();
Loop *L = LI.getLoopFor(InstBB);
+ assert(L && "Instruction belongs to a BB that's not part of a loop");
if (!LoopExitBlocks.count(L))
L->getExitBlocks(LoopExitBlocks[L]);
assert(LoopExitBlocks.count(L));
More information about the llvm-commits
mailing list