diff options
author | Matthias Springer <me@m-sp.org> | 2025-03-25 11:25:11 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-03-25 11:25:11 +0100 |
commit | d4304d85f26984aa772fcddf1f34604e526a6683 (patch) | |
tree | 9f173d515df74007f638620f2e69b36e1e552560 /clang/lib/AST/ByteCode/Pointer.cpp | |
parent | 5e0e04f0875aa900ddf21682c6692c65fbcf8b81 (diff) | |
download | llvm-d4304d85f26984aa772fcddf1f34604e526a6683.zip llvm-d4304d85f26984aa772fcddf1f34604e526a6683.tar.gz llvm-d4304d85f26984aa772fcddf1f34604e526a6683.tar.bz2 |
[mlir][memref] Verify out-of-bounds access for `memref.subview` (#131876)
* Improve the verifier of `memref.subview` to detect out-of-bounds
extractions.
* Improve the documentation of `memref.subview` to make clear that
out-of-bounds extractions are not allowed. Rewrite examples to use the
new `strided<>` notation instead of `affine_map` layout maps. Also
remove all unrelated operations (`memref.alloc`) from the examples.
* Fix various test cases where `memref.subview` ops ran out-of-bounds.
* Update canonicalizations patterns to ensure that they do not fold IR
if it would generate IR that no longer verifies.
Related discussion on Discourse:
https://discourse.llvm.org/t/out-of-bounds-semantics-of-memref-subview/85293
Diffstat (limited to 'clang/lib/AST/ByteCode/Pointer.cpp')
0 files changed, 0 insertions, 0 deletions