[PATCH] D90350: [MachineBlockPlacement] Do not move block to the end of a loop if it's branch is unanalyzable

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 28 15:54:48 PDT 2020


dmgreen created this revision.
dmgreen added reviewers: uweigand, Carrot, davidxl, Holman.
Herald added subscribers: hiraditya, kristof.beyls.
Herald added a project: LLVM.
dmgreen requested review of this revision.

If a blocks branches are not analyzable then moving the block to the top of a loop may well not create any new fallthrough edges. In those cases just leave the loop in a more standard order.

Some SystemZ atomix tests have changed. They look smaller to me, but may or may not be better.

On ARM this helps to slightly more reliably lower low overhead loops.


https://reviews.llvm.org/D90350

Files:
  llvm/lib/CodeGen/MachineBlockPlacement.cpp
  llvm/test/CodeGen/SystemZ/atomicrmw-minmax-03.ll
  llvm/test/CodeGen/SystemZ/atomicrmw-minmax-04.ll
  llvm/test/CodeGen/Thumb2/LowOverheadLoops/fast-fp-loops.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D90350.301447.patch
Type: text/x-patch
Size: 29457 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201028/5f02de70/attachment.bin>


More information about the llvm-commits mailing list