[PATCH] D100331: [Dependence Analysis] Fix ExactSIV producing wrong analysis

Artem Radzikhovskyy via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 26 06:31:28 PDT 2021


artemrad marked 2 inline comments as not done.
artemrad added a comment.

Sorry @Meinersbur, I responded to the comments but forgot to submit them. I am a new to Phabricator. Here they are now.



================
Comment at: llvm/test/Analysis/DependenceAnalysis/Coupled.ll:253
 ; CHECK: da analyze - none!
-; CHECK: da analyze - flow [<]!
+; CHECK: da analyze - flow [=|<]!
 ; CHECK: da analyze - confused!
----------------
bmahjour wrote:
> this one was wrong before, and is still wrong but in a different way....same thing with couple14.
There is only one index in which we are accessing the same memory location `i=3`, so the `[=]` is correct. 

As for the `|<`, please see my response to your other comment. 


================
Comment at: llvm/test/Analysis/DependenceAnalysis/ExactSIV.ll:19
 ; CHECK: da analyze - none!
-; CHECK: da analyze - flow [>]!
+; CHECK: da analyze - flow [<=|<]!
 ; CHECK: da analyze - confused!
----------------
bmahjour wrote:
> The `<=` part is correct, but I'm not sure about the `|<` part. The dependence is loop carried for the most part (except when i = 9). I think this might be because we treat the existence of an `EQ` as signifying loop independent dependence, which should probably be reconsidered in a separate patch.
You are correct, that is exactly the reason for `|<`. I have another patch down the line to fix this confusing notation.  


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

https://reviews.llvm.org/D100331



More information about the llvm-commits mailing list