[PATCH] D104203: [LoopUnroll] Fold all exits based on known trip count/multiple

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Jun 13 12:25:36 PDT 2021


nikic created this revision.
nikic added a reviewer: reames.
Herald added subscribers: javed.absar, zzheng, hiraditya.
nikic requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

Fold all exits based on known trip count/multiple information from SCEV. Previously only the latch exit or the single exit were folded.

This doesn't yet eliminate ULO.TripCount and ULO.TripMultiple entirely: They're still used to a) decide whether runtime unrolling should be performed and b) for ORE remarks. However, the core unrolling logic is independent of them now.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D104203

Files:
  llvm/lib/Transforms/Utils/LoopUnroll.cpp
  llvm/test/Transforms/LoopUnroll/multiple-exits.ll
  llvm/test/Transforms/LoopUnroll/nonlatchcondbr.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D104203.351735.patch
Type: text/x-patch
Size: 13121 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210613/2bf870be/attachment.bin>


More information about the llvm-commits mailing list