[PATCH] D108108: [LoopPeel] Allow peeling with multiple unreachable-terminated exit blocks.
Roman Lebedev via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Aug 16 14:24:14 PDT 2021
lebedev.ri added inline comments.
================
Comment at: llvm/lib/Transforms/Utils/LoopPeel.cpp:103-109
+ L->getUniqueNonLatchExitBlocks(Exits);
+ // The latch must either be the only exiting block or all non-latch exit
+ // blocks are either have an deopt or unreachable terminator.
+ return all_of(Exits, [](const BasicBlock *BB) {
+ return BB->getTerminatingDeoptimizeCall() ||
+ isa<UnreachableInst>(BB->getTerminator());
+ });
----------------
(As per brief disscussion in IRC) since this is about loop reentry, how about something like this then?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D108108/new/
https://reviews.llvm.org/D108108
More information about the llvm-commits
mailing list