[llvm] [DA] batch delinearization (PR #170519)

Ryotaro Kasuga via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 12 06:54:52 PST 2025


================
@@ -335,8 +336,9 @@ class LLVM_ABI FullDependence final : public Dependence {
 /// DependenceInfo - This class is the main dependence-analysis driver.
 class DependenceInfo {
 public:
-  DependenceInfo(Function *F, AAResults *AA, ScalarEvolution *SE, LoopInfo *LI)
-      : AA(AA), SE(SE), LI(LI), F(F) {}
+  DependenceInfo(Function *F, AAResults *AA, ScalarEvolution *SE, LoopInfo *LI,
+                 BatchDelinearization *BD = nullptr)
----------------
kasuga-fj wrote:

It would be better to pass a bool value like `UseBatchDelinearization` than passing a pointer. I also think this object should be managed by DependenceInfo itself. Consider using `unique_ptr`.
In addition, I think the computation (calling `populate`) should be delayed until it's actually needed (the first call to `depends`).

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


More information about the llvm-commits mailing list