Files
clang-p2996/mlir/test/Integration/Dialect/Tensor/dim-runtime-verification.mlir
Matthias Springer e4c8ff94e7 [mlir][tensor] Add runtime verification for cast/dim/extract/insert/extract_slice (#141332)
Add `RuntimeVerifiableOpInterface` implementations for the following
ops. These were mostly copied from the respective memref
implementations. Only the part that deals with offsets and strides was
removed.
* `tensor.cast`: `memref.cast`
* `tensor.dim`: `memref.dim`
* `tensor.extract`: `memref.load`
* `tensor.insert`: `memref.store`
* `tensor.extract_slice`: `memref.subview`
2025-06-05 12:06:47 +09:00

22 lines
700 B
MLIR

// RUN: mlir-opt %s -generate-runtime-verification \
// RUN: -one-shot-bufferize \
// RUN: -buffer-deallocation-pipeline \
// RUN: -test-cf-assert \
// RUN: -convert-to-llvm | \
// RUN: mlir-runner -e main -entry-point-result=void \
// RUN: -shared-libs=%mlir_runner_utils 2>&1 | \
// RUN: FileCheck %s
func.func @main() {
%c4 = arith.constant 4 : index
%tensor = tensor.empty() : tensor<1xf32>
// CHECK: ERROR: Runtime op verification failed
// CHECK-NEXT: "tensor.dim"(%{{.*}}, %{{.*}}) : (tensor<1xf32>, index) -> index
// CHECK-NEXT: ^ index is out of bounds
// CHECK-NEXT: Location: loc({{.*}})
%dim = tensor.dim %tensor, %c4 : tensor<1xf32>
return
}