[PATCH] D115261: [LV] Disable runtime unrolling for vectorized loops.

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 10 09:19:33 PST 2021


fhahn added a comment.

In D115261#3185784 <https://reviews.llvm.org/D115261#3185784>, @reames wrote:

> @fhahn Can you point to a couple other cases where this is needed for profitability?  I took a look at PR40961, and that really looks more like a problem us figuring out small trip counts and restricting transforms appropriately.  (i.e. the unroller should never be unrolling longer than the total loop trip count)  That's "easily" fixable, and we should do so.

Yeah some of the issues are related to SCEV missing trip counts and a couple of those have been fixed. That was one of the original motivations for the `applyLoopGuards` logic in SCEV. Unfortunately I am not able to find the other issue in the bug tracker I was thinking about just now.

But one different example is https://godbolt.org/z/7cE9soTa9 with a dependency on the accumulator registers


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D115261



More information about the llvm-commits mailing list