[PATCH] D30161: [LoopPeeling] Peel loops with invariant backedge Phi input

Max Kazantsev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 20 01:59:30 PST 2017


mkazantsev created this revision.
Herald added a subscriber: mzolotukhin.

If a loop contains a Phi node which has an invariant input from back
edge, it is profitable to peel such loops (rather than unroll them) to
use the advantage that this Phi is always invariant starting from 2nd
iteration. After the 1st iteration is peeled, other optimizations can
potentially simplify calculations with this invariant.


https://reviews.llvm.org/D30161

Files:
  lib/Transforms/Scalar/LoopUnrollPass.cpp
  lib/Transforms/Utils/LoopUnrollPeel.cpp
  test/Transforms/LoopUnroll/peel-loop-not-forced.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D30161.89091.patch
Type: text/x-patch
Size: 3568 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170220/336aae5d/attachment.bin>


More information about the llvm-commits mailing list