[PATCH] D22630: Loop rotation

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 24 10:44:22 PDT 2020


fhahn added a comment.

In D22630#1939540 <https://reviews.llvm.org/D22630#1939540>, @hiraditya wrote:

> An interesting case to explore: https://bugs.llvm.org/show_bug.cgi?id=27360
>  LLVM does not peel/unroll loops with multiple exits. With this loop rotation this should be possible.


LLVM supports unrolling multi-exit loops with runtime trip counts as in the bug, but it requires an option by default (-unroll-runtime -unroll-runtime-multi-exit). The example in PR27360 actually gets unrolled on master, due to the pragma forcing unrolling. Without the pragma, unrolling does not happen, but that is due to a TODO in the runtime loopunroller code.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D22630/new/

https://reviews.llvm.org/D22630





More information about the llvm-commits mailing list