Add an assertion to catch indirectbr in SplitBlockPredecessors. This
authorDan Gohman <gohman@apple.com>
Thu, 5 Nov 2009 18:25:44 +0000 (18:25 +0000)
committerDan Gohman <gohman@apple.com>
Thu, 5 Nov 2009 18:25:44 +0000 (18:25 +0000)
commitb8eb17c80793c33368e3c3af6de4bd8c1b09ba5b
tree6c48eb9ad6fa85825bbe37dc3804a75d4cd4773a
parent6c9fab7404c556c23864cc552572985c3180f4c4
Add an assertion to catch indirectbr in SplitBlockPredecessors. This
makes several optimization passes abort in cases where they're currently
silently miscompiling code.

Remove the indirectbr assertion from SplitEdge. Indirectbr is only
a problem for critical edges, and SplitEdge defers to SplitCriticalEdge
to handle those, and SplitCriticalEdge has its own assertion for
indirectbr.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86147 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Utils/BasicBlockUtils.cpp