[PATCH] D18670: LoopUnroll: some small fixes/tweaks to make it more useful for partial unrolling

Evgeny Stupachenko via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 1 12:44:37 PDT 2016


evstupac added a comment.

In http://reviews.llvm.org/D18670#389705, @escha wrote:

> In this case, we'll go try partial unrolling, and we'll also be above the partial threshold (since a partial threshold higher than Threshold doesn't make sense), and it'll take the path that makes the count modulo-correct.


Say we have loop with TripCount 9 and size 6, than fully unrolled size is ~9 * (6 - 2) + 2 = 38 (it could be less but not dramatically).
If we unroll the loop by 3, than unrolled size is 3 * (6 - 2) = 12. With Threshold = PartialThreshold = 20 we are able to do partial unrolling and will fail with full.


Repository:
  rL LLVM

http://reviews.llvm.org/D18670





More information about the llvm-commits mailing list