When identifying exit nodes for the reverse-CFG reverse-post-order
authorDan Gohman <gohman@apple.com>
Fri, 9 Mar 2012 18:50:52 +0000 (18:50 +0000)
committerDan Gohman <gohman@apple.com>
Fri, 9 Mar 2012 18:50:52 +0000 (18:50 +0000)
commit5992f67e683b665392f45b167fe5c9abd91455c9
tree9a03ff43849e50ea3b5d53a2712cdbf93617ef86
parentfaf72ffda3bf83b08769428129ee4755787ee6cf
When identifying exit nodes for the reverse-CFG reverse-post-order
traversal, consider nodes for which the only successors are backedges
which the traversal is ignoring to be exit nodes. This fixes a problem
where the bottom-up traversal was failing to visit split blocks along
split loop backedges. This fixes rdar://10989035.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152421 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Scalar/ObjCARC.cpp
test/Transforms/ObjCARC/basic.ll
test/Transforms/ObjCARC/nested.ll