OSDN Git Service

Codegen: Don't tail-duplicate blocks with un-analyzable fallthrough.
authorKyle Butt <kyle+llvm@iteratee.net>
Wed, 10 Aug 2016 21:03:27 +0000 (21:03 +0000)
committerKyle Butt <kyle+llvm@iteratee.net>
Wed, 10 Aug 2016 21:03:27 +0000 (21:03 +0000)
commit0d1c7a1bea10845170a062419430c8c40a3ba579
tree8a6d3daa03c2e6dea8569872bbfeda234c66b621
parent3da1bfb213c9c064a98094a43a337c13d82b8a08
Codegen: Don't tail-duplicate blocks with un-analyzable fallthrough.

If AnalyzeBranch can't analyze a block and it is possible to
fallthrough, then duplicating the block doesn't make sense, as only one
block can be the layout predecessor for the un-analyzable fallthrough.

Submitted wit a test case, but NOTE: the test case doesn't currently
fail. However, the test case fails with D20505 and would have saved me
some time debugging.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278288 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/TailDuplicator.cpp
test/CodeGen/PowerPC/tail-dup-analyzable-fallthrough.ll [new file with mode: 0644]