[PATCH] D63923: [Loop Peeling] Enable peeling for loops with multiple exits

Philip Reames via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 9 10:31:51 PDT 2019


reames accepted this revision.
reames added a comment.
This revision is now accepted and ready to land.

LGTM w/two requested changes before or after commit, no further review needed.

1. allNonLatchExitsDeopt should be separated into a utility file and reused to implement the same (existing) check in the LoopUnroll code to ensure there's no accidental divergence.

2. getEstimatedTripCount should return a answer for all loops it knows how to.  After this change sequence, that will be single exit loops, and multiple exit loops where all non-latch exits are deopt calls.  Existing callers should be updated to either a) add the single exit check or b) call a new shim function (getETCForSingleExitLoop) which contains the check.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D63923/new/

https://reviews.llvm.org/D63923





More information about the llvm-commits mailing list