[Mlir-commits] [mlir] [mlir][memref] Allow out-of-bounds semantics for memref.subview (PR #152164)
Renato Golin
llvmlistbot at llvm.org
Wed Aug 6 02:06:39 PDT 2025
rengolin wrote:
The previous PR adds this to the doc:
> Subviews that cannot be confirmed to be in-bounds or out-of-bounds based on compile-time information are valid.
So the point below is confusing:
> The op has ir that verifies, but will not verify after canonicalization
Do you mean constant propagation, instead?
Regardless, I believe this is in line with the intention of the comment above: "confirmed at compile-time".
My question is what do we mean by "compile-time"? Is it at any point in the pipeline (and therefore the behaviour recently added is "ok")? Or at egress (and then terms like canonicalization make more sense)?
The former creates the problem @Groverkss refers to. The latter needs a point in time to do that kind of verification, and we don't have a _trigger_ that does that _on exit_ (whatever that means).
Operation verification doesn't intentionally walk the producers, but if the values are constant attributes, it can verify bounds.
What would be the case we'd want to have an out-of-bounds _all constant_ indexing into a static shape to be valid?
https://github.com/llvm/llvm-project/pull/152164
More information about the Mlir-commits
mailing list