[PATCH] D132055: [LoopInterchange][PR57148] Ensure LCSSA form after loop interchnange

Mikael Holmén via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 19 04:17:03 PDT 2022


uabelho added a comment.

I have no idea if this is the right fix, but I've verified that it solves the problem that I reported in pr 57148.
Thanks!

However, that was a reduced version of the problem, and if I try the original non-reduced version (unfortunately for an out-of-tree target) I get another failure with this patch.
So it might be a step in the right direction, but there are more problems lurking.

A reduced version of the new problem is

  opt -passes="loop-interchange" bbi-72571_2.ll -o /dev/null

which results in

  Instruction does not dominate all uses!
    %i.166.lcssa = phi i16 [ %3, %vector.body85.split ]
    %arrayidx60 = getelementptr inbounds [2 x [4 x i32]], ptr @c, i16 0, i16 %i.166.lcssa, i16 %j.165
  LLVM ERROR: Broken module found, compilation aborted!

F24200925: bbi-72571_2.ll <https://reviews.llvm.org/F24200925>


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D132055



More information about the llvm-commits mailing list