[Mlir-commits] [mlir] [mlir][affine] Handle generic memory ops in loop fusion dependence analysis (PR #224657)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Mon Sep 28 01:19:40 PDT 2026
================
----------------
lipracer wrote:
The inner any_of over dstMemOps no longer depends on srcOp after this refactor — it's now loop-invariant. It can be hoisted out of the outer any_of:
```cpp
return llvm::any_of(srcMemOps, & (Operation *srcOp) { return mayAccessMemRef(srcOp, memref); }) &&
llvm::any_of(dstMemOps, & (Operation *dstOp) { return mayAccessMemRef(dstOp, memref); });
```
This also avoids re-scanning dstMemOps for every accessing srcOp (O(n·m) → O(n+m)), and reads more directly as "some source and some dest access memref".
https://github.com/llvm/llvm-project/pull/224657
More information about the Mlir-commits
mailing list