[Mlir-commits] [mlir] [mlir][vector] Hoist transfer pairs when the source is AssumeAlignmentOp (PR #144809)
Andrzej WarzyĆski
llvmlistbot at llvm.org
Thu Jun 19 12:26:45 PDT 2025
banach-space wrote:
> After the op has a result, the hoisting is not working if transfer ops operate on AssumeAlignmentOp.
Isn't the new behaviour correct? I might be mistaken, but to me this creates an alias:
```mlir
%assume_align = memref.assume_alignment %memref0, 64 : memref<?x?xf32>
```
Without proper alias-analysis, the logic updated in this PR should behave conservatively, i.e. block hoisting. When `memref.assume_alignment` didn't return a value, there was no alias and hoisting was safe. But that's no longer the case.
To me the lack of hoisting feels like quite an unfortunate side-effect of https://github.com/llvm/llvm-project/commit/ffb9bbfd0745dc22e1fd6edd7b62f72b91f4f6de.
WDYT?
https://github.com/llvm/llvm-project/pull/144809
More information about the Mlir-commits
mailing list