forked from OSchip/llvm-project
7769a0854e
The splitIndirectCriticalEdges function generates and invalid CFG when the 'Target' basic block is a loop to itself. When this occurs, the code that updates the predecessor terminator needs to update the terminator in the split basic block. This occurs when there is an edge from block D back to D. Since D is split in to D0 and D1, the code needs to update the terminator in D1. But D1 is not in the OtherPreds vector, so it was not getting updated. Differential Revision: https://reviews.llvm.org/D32126 llvm-svn: 300480 |
||
---|---|---|
.. | ||
AArch64 | ||
AMDGPU | ||
ARM | ||
NVPTX | ||
X86 | ||
2008-11-24-RAUW-Self.ll | ||
basic.ll | ||
bitreverse-hang.ll | ||
builtin-condition.ll | ||
dom-tree.ll | ||
invariant.group.ll | ||
overflow-intrinsics.ll | ||
section.ll | ||
skip-merging-case-block.ll | ||
split-indirect-loop.ll | ||
statepoint-relocate.ll |