[PATCH] D136277: [LoopInterchange] Simplify DepMatrix to a dependency vector.

Congzhe Cao via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 1 18:05:16 PDT 2022


congzhe added inline comments.


================
Comment at: llvm/lib/Transforms/Scalar/LoopInterchange.cpp:179
+    DepFlags Lvl = DepMatrix[i];
+    if (Lvl & LT || Lvl & GT)
       return false;
----------------
Meinersbur wrote:
> congzhe wrote:
> > Please correct me if I'm wrong - IIUC `Scalar` is considered a type of dependence that prevents interchange?
> The original code explicitly ignores scalar types (`DepMatrix[Row][i] != 'S'`)
Right, but I remember earlier this year when discussing a few related bugs we reached to a conclusion that it is not correct to ignore scalar types (in other words the current code is wrong)? Anyways I'm rewriting the whole `validDepInterchange()` so it may not be too big of a concern for now.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D136277



More information about the llvm-commits mailing list