diff --git a/mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td b/mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td --- a/mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td +++ b/mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td @@ -1246,6 +1246,24 @@ strides: [%stride0, %stride1] : memref<*xf32> to memref> ``` + + This operation creates a new memref descriptor using the base of the + source and applying the input arguments to the other metadata. + In other words: + ```mlir + %dst = memref.reinterpret_cast %src to + offset: [%offset], + sizes: [%sizes], + strides: [%strides] + ``` + means that `%dst`'s descriptor will be: + ```mlir + %dst.base = %src.base + %dst.aligned = %src.aligned + %dst.offset = %offset + %dst.sizes = %sizes + %dst.strides = %strides + ``` }]; let arguments = (ins Arg:$source,