[PATCH] D53027: [LoopInterchange] Remove support for inner-only reductions.

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 31 10:37:29 PDT 2018


fhahn updated this revision to Diff 171958.
fhahn retitled this revision from "[LoopInterchange] Fix inner loop reduction handling." to "[LoopInterchange] Remove support for inner-only reductions.".
fhahn edited the summary of this revision.
fhahn added a comment.

In https://reviews.llvm.org/D53027#1277836, @efriedma wrote:

> If you aren't finding real loops where this matters, simply rejecting loops with a reduction like this seems fine.


I've updated the patch to remove support for inner-loop only reductions and updated the description with some numbers across the test-suite, SPEC2k and SPEC2k6. Given the simplification and the minor practical impact, I think it would make sense to just remove it. What do you think? I've also added a comment referring back to the discussion and patches here, in case we want to add the analysis described here later on.

It also simplifies the code to support reductions across inner & outer loops.


https://reviews.llvm.org/D53027

Files:
  lib/Transforms/Scalar/LoopInterchange.cpp
  test/Transforms/LoopInterchange/inner-only-reductions.ll
  test/Transforms/LoopInterchange/lcssa.ll
  test/Transforms/LoopInterchange/phi-ordering.ll
  test/Transforms/LoopInterchange/reductions.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D53027.171958.patch
Type: text/x-patch
Size: 31286 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20181031/48cf7f29/attachment.bin>


More information about the llvm-commits mailing list