[PATCH] D102747: [ARM] Allow findLoopPreheader to return headers with multiple loop successors
Dave Green via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed May 19 00:38:35 PDT 2021
dmgreen created this revision.
dmgreen added reviewers: samtebbs, SjoerdMeijer, ostannard, simon_tatham.
Herald added subscribers: danielkiss, hiraditya, kristof.beyls.
dmgreen requested review of this revision.
Herald added a project: LLVM.
The findLoopPreheader function will currently not find a preheader if it branches to multiple different loop headers. This patch adds an option to relax that, allowing ARMLowOverheadLoops to process more loops successfully. This helps with WhileLoopStart setup instructions that can branch/fallthrough to the low overhead loop and to branch to a separate loop from the same preheader (but I don't believe it is possible for both loops to be low overhead loops).
https://reviews.llvm.org/D102747
Files:
llvm/include/llvm/CodeGen/MachineLoopInfo.h
llvm/lib/CodeGen/MachineLoopInfo.cpp
llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
llvm/test/CodeGen/Thumb2/mve-memtp-loop.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D102747.346203.patch
Type: text/x-patch
Size: 5618 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210519/e895c424/attachment.bin>
More information about the llvm-commits
mailing list