[llvm] [LoopInterchange] Remove 'S' Scalar Dependencies (PR #119345)
Sjoerd Meijer via llvm-commits
llvm-commits at lists.llvm.org
Tue Jan 14 03:22:20 PST 2025
================
@@ -18,7 +18,7 @@
; CHECK: --- !Missed
; CHECK-NEXT: Pass: loop-interchange
-; CHECK-NEXT: Name: UnsupportedPHI
+; CHECK-NEXT: Name: Dependence
----------------
sjoerdmeijer wrote:
Can you elaborate why it is important?
Very simplified, the structure and the order of the checks is as follows:
canInterchangeLoops() {
isLegalToInterChangeLoops();
currentLimitations();
}
where `currentLimitations()` is responsible for rejecting the `UnsupportedPHI`, and `isLegalToInterChangeLoops()` when dependencies are getting in the way.
Because we reject S dependencies and because of this order of checks, this case and the one below will now first be rejected for dependencies reasons. I might be missing something, but I don't see how it matters.
https://github.com/llvm/llvm-project/pull/119345
More information about the llvm-commits
mailing list