[PATCH] D155520: [LV] Complete load groups and release store groups in presence of dependency

Anna Thomas via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 3 09:52:02 PDT 2023


anna added inline comments.


================
Comment at: llvm/test/Transforms/LoopVectorize/interleaved-accesses-use-after-free.ll:25
+
+; CHECK-NOT: Too many dependences, stopped recording
+; If too many dependences are recorded, LoopAccessAnalysis just conservatively
----------------
Ayal wrote:
> Ahh, but this test does exceed the threshold leading to no dependencies being recorded, which is needed to reproduce the bug?
> 
> Checking if GroupA!=GroupB above before calling canReorderMemAccessesForInterleavedGroups() fixes interleave group construction when this threshold is exceeded?
Actually, this test does lead to no dependences being recorded. The CHECK line is incorrect (we do have more than 100 dependences). 
And yes, even with too many dependences, guarding it with the check allows us to avoid incorrectly releasing a group (technically had no dependences within it). I will update check line and the comment.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D155520



More information about the llvm-commits mailing list