[PATCH] D83953: [HWLoops] Stop converting to a while loop when it would be unsafe to

Sam Tebbs via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 16 08:08:27 PDT 2020


samtebbs created this revision.
samtebbs added reviewers: samparker, SjoerdMeijer, dmgreen, t.p.northover, simon_tatham, olista01.
Herald added subscribers: llvm-commits, javed.absar, hiraditya.
Herald added a project: LLVM.

There are cases where a do-while loop would be converted to a while loop before finding out that it would be unsafe to expand the SCEV in this situation and then bailing out of hardware loop conversion.

This patch checks if it would be unsafe to expand the SCEV and if so stops converting the do-while into a while, allowing conversion to a hardware loop.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D83953

Files:
  llvm/lib/CodeGen/HardwareLoops.cpp
  llvm/test/CodeGen/Thumb2/LowOverheadLoops/exitcount.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D83953.278482.patch
Type: text/x-patch
Size: 6068 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200716/2b97f3ec/attachment.bin>


More information about the llvm-commits mailing list