[PATCH] D36258: Disable loop peeling during full unrolling pass.

Philip Reames via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 22 12:32:46 PDT 2017


reames added a comment.

In https://reviews.llvm.org/D36258#878511, @hfinkel wrote:

> That's clearly interesting. This change, however, seems like it should be more-or-less a nop. If you're going to fully unroll, why would peeling help? Do you end up with a shorter critical path through the branches if we "peel" first?


In our pass pipeline, we'd end up with loop-unrolling being quite a bit earlier than upstream.  This wasn't so much an intentional choice as an accident of history that we really hadn't evaluated up until now.  My best guess is that the peeling was accidentally exposing information to other transformations and that the actual unrolling was incidental to the performance swing.  Someone on my team is investigating that a bit further to see what actually happened; what I just said was just an educated guess.


Repository:
  rL LLVM

https://reviews.llvm.org/D36258





More information about the llvm-commits mailing list