[LoopUnroll] Support loops with exiting block that is neither header nor
authorWhitney Tsang <whitneyt@ca.ibm.com>
Thu, 28 May 2020 18:23:56 +0000 (18:23 +0000)
committerWhitney Tsang <whitneyt@ca.ibm.com>
Thu, 28 May 2020 18:27:09 +0000 (18:27 +0000)
commit281058226587d8c70172ff0fb1e55d58876da229
treeb4fefab520a11de046508b7d6f383c75b3f40235
parent97f3f0bab0982f84745c7ac5ce8fb6b0918ff718
[LoopUnroll] Support loops with exiting block that is neither header nor
latch.

Summary: Remove the limitation in LoopUnrollPass that exiting block must
be either header or latch.
Reviewer: dmgreen, jdoerfert, Meinersbur, kbarton, bmahjour, etiotto,
fhahn, efriedma
Reviewed By: etiotto, fhahn, efriedma
Subscribers: efriedma, lkail, xbolva00, hiraditya, zzheng, llvm-commits
Tag: LLVM
Differential Revision: https://reviews.llvm.org/D80477
llvm/lib/Transforms/Utils/LoopUnroll.cpp
llvm/test/Transforms/LoopUnroll/nonlatchcondbr.ll [new file with mode: 0644]