[PATCH] D108371: [LAA] Add Memory dependence and unknown bounds remarks.

David Sherwood via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 3 02:04:51 PDT 2021


david-arm added a comment.

In D108371#2976665 <https://reviews.llvm.org/D108371#2976665>, @malharJ wrote:

> @fhahn , but these remarks are specific to vectorization (ie. scenarios where loop does not get vectorized) ...
>  are there any passes (other than LV) which would require this information ?

Hi @malharJ, lots of passes actually use LoopAccessAnalysis, not just LoopVectorize.cpp, i.e. LoopLoadElimination.cpp, LoopVersioningLICM.cpp, etc. I agree they aren't strictly concerned about vectorisation, but they will execute the same code paths, i.e. LoopAccessInfo::analyzeLoop -> MemoryDepChecker::areDepsSafe. Maybe it does make for elaborateMemoryReport to live in LoopAccessAnalysis.cpp, especially since all the data used to generate the report actually lives in LoopAccessInfo anyway?



================
Comment at: llvm/lib/Analysis/LoopAccessAnalysis.cpp:589
+  //
+  // Used when emitting no_vec_unknown_array_bounds insight.
+  SmallPtrSet<Value *, 4> UncomputablePtrs;
----------------
Remark instead of 'insight'?


================
Comment at: llvm/lib/Analysis/LoopAccessAnalysis.cpp:1725
+              // TODO: Add minDistanc, actual distance, minIter and type size
+              //       for unsafe dependences to generate better insight
+              UnsafeDependences.push_back(Dependence(A.second, B.second, Type));
----------------
Remark instead of 'insight'?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D108371



More information about the llvm-commits mailing list