[PATCH] D46706: [PM/LoopUnswitch] Support partial trivial unswitching.

Chandler Carruth via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat May 26 16:55:05 PDT 2018


chandlerc updated this revision to Diff 148741.
chandlerc edited the summary of this revision.
chandlerc removed subscribers: hfinkel, brzycki, junbuml, sanjoy, asbirlea.
chandlerc added a dependency: D47408: [PM/LoopUnswitch] When using the new SimpleLoopUnswitch pass, schedule loop-cleanup passes at the beginning of the loop pass pipeline, and re-enqueue loops after even trivial unswitching..
chandlerc added a comment.

Update to rebase on the patch that adds loop-instsimplify and loop-simplifycfg
to the loop pass pipeline as cleanup passes to minimize the cleanup necessary
in the unswitch pass itself.

Also includes a bugfix found when testing this on the llvm test-suite, and new
test cases to cover this area of code.


Repository:
  rL LLVM

https://reviews.llvm.org/D46706

Files:
  llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
  llvm/test/Transforms/SimpleLoopUnswitch/LIV-loop-condtion.ll
  llvm/test/Transforms/SimpleLoopUnswitch/trivial-unswitch.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D46706.148741.patch
Type: text/x-patch
Size: 22148 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180526/9c05b979/attachment.bin>


More information about the llvm-commits mailing list