![]() When the bounds check attribute is true, the raw buffer load, store, and atomic operations have well-defined behavior (returning 0 for loads and ignoring stores) when the buffer access exceeds the bounds of the memory being accessed. Because of how LLVM currently implements these buffer operations (as opaque intrinsics), the backend cannot optimize out this known behavior and eliminate the memory operations. Therefore, use MLIR's canonicalization system to eliminate these operations. Reviewed By: nirvedhmeshram Differential Revision: https://reviews.llvm.org/D138146 |
||
---|---|---|
.. | ||
canonicalize.mlir | ||
invalid.mlir | ||
ops.mlir |