[PATCH] D137461: [LoopInterchange] Refactor and rewrite validDepInterchange()

Michael Kruse via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 11 14:39:31 PST 2022


Meinersbur accepted this revision.
Meinersbur added a comment.

This involves a deep copy of the entire DepMatrix. I still find that acceptable to gain a much more logical dependency checking.



================
Comment at: llvm/lib/Transforms/Scalar/LoopInterchange.cpp:207-210
     char InnerDep = DepMatrix[Row][InnerLoopId];
     char OuterDep = DepMatrix[Row][OuterLoopId];
     if (InnerDep == '*' || OuterDep == '*')
       return false;
----------------
I think this logic here is also superseded by the new logic.


================
Comment at: llvm/lib/Transforms/Scalar/LoopInterchange.cpp:212
+
+    // Create temporary DepVector and swap OutterLoop vs InnerLoop
+    std::vector<char> Cur = DepMatrix[Row];
----------------
[typo]


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D137461



More information about the llvm-commits mailing list