[llvm] [LV] Autovectorization for the all-in-one histogram intrinsic (PR #91458)

Paschalis Mpeis via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 25 04:51:32 PDT 2024


================
@@ -1966,6 +1987,15 @@ getDependenceDistanceStrideAndSize(
       BPtr->getType()->getPointerAddressSpace())
     return MemoryDepChecker::Dependence::Unknown;
 
+  // Ignore Histogram count updates as they are handled by the Intrinsic. This
+  // happens when the same pointer is first used to read from and then is used
+  // to write to.
+  if (!AIsWrite && BIsWrite && APtr == BPtr && HistogramPtrs.contains(APtr)) {
+    LLVM_DEBUG(dbgs() << "LAA: Histogram: Update is safely ignored. Pointer: "
----------------
paschalis-mpeis wrote:

> removed most of the debug printing  ...
> added a histogram dependency type so that we can test the analysis part independently of any transformation.

Good idea, thanks.

https://github.com/llvm/llvm-project/pull/91458


More information about the llvm-commits mailing list