[PATCH] D65501: [Loop Peeling] Introduce peeling levels

Serguei Katkov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 31 01:16:18 PDT 2019


skatkov created this revision.
skatkov added reviewers: reames, fhahn.
Herald added subscribers: zzheng, hiraditya.
Herald added a project: LLVM.

The patch introduces three peeling levels:

1. No peeling
2. Peeling basing on heuristic without profile information
3. All peeling heuristics

The patch mostly is NFC except it changes the ways the peeling enabling
is specified.  Before the patch it was a bool flag and now it is a enum value,

The idea comes from review of https://reviews.llvm.org/D64972.


https://reviews.llvm.org/D65501

Files:
  llvm/include/llvm/Analysis/TargetTransformInfo.h
  llvm/include/llvm/Transforms/Scalar/LoopUnrollPass.h
  llvm/include/llvm/Transforms/Utils/UnrollLoop.h
  llvm/lib/Passes/PassBuilder.cpp
  llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
  llvm/lib/Transforms/Utils/LoopUnrollPeel.cpp
  llvm/test/Transforms/LoopUnroll/peel-loop-not-forced.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D65501.212520.patch
Type: text/x-patch
Size: 12186 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190731/a5817dbd/attachment-0001.bin>


More information about the llvm-commits mailing list