[PATCH] D73129: [LoopUnrollAndJam] Correctly update LoopInfo when unroll and jam more than 2-levels loop nests.

Michael Kruse via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 27 15:29:04 PST 2020


Meinersbur added a comment.

I'd expect

  #pragma unrollandjam(2)
  for i
    for j
      for k
        A[i][j][k] = 0

to generate this:

  for i +=2
    for j
      for k
        A[i][j][k] = 0
        A[i+1][j][k] = 0

(as by the side-note by @Whitney)

That is, if the jam loop is not specified, to jam the innermost by default, which is should be what you want in most cases. For some reason I was assuming LoopUnrollAndJam was rejecting this case as not-yet-implemented. Would that be an option instead of fixing a behavior that probably is not the expected effect?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D73129





More information about the llvm-commits mailing list