-
Notifications
You must be signed in to change notification settings - Fork 12.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[mlir][linalg] Update docs for linalg.generic
(NFC)
#127178
Conversation
The mixed tensor/buffer semantics has been disallowed in llvm#80660.
linalg.generic
linalg.generic
(NFC)
@llvm/pr-subscribers-mlir Author: Longsheng Mou (CoTinker) ChangesThe mixed tensor/buffer semantics has been disallowed in #80660. Closed #124090. Full diff: https://github.com/llvm/llvm-project/pull/127178.diff 1 Files Affected:
diff --git a/mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td b/mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
index 29cb8035b583b..6a439bfb09078 100644
--- a/mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
+++ b/mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
@@ -138,19 +138,6 @@ def GenericOp : LinalgStructuredBase_Op<"generic", [
}
}
```
-
- To allow progressive lowering from the value world (a.k.a tensor values) to
- the buffer world (a.k.a memref values), a `linalg.generic` op allows mixing
- tensors and buffers operands and tensor results.
-
- ```mlir
- %C = linalg.generic #trait_attribute
- ins(%A, %B : tensor<?x?xf32>, memref<?x?xf32, stride_specification>)
- outs(%C : tensor<?x?xf32>)
- {other-optional-attributes}
- {region}
- -> (tensor<?x?xf32>)
- ```
}];
let arguments = (ins Variadic<AnyType>:$inputs,
|
@llvm/pr-subscribers-mlir-linalg Author: Longsheng Mou (CoTinker) ChangesThe mixed tensor/buffer semantics has been disallowed in #80660. Closed #124090. Full diff: https://github.com/llvm/llvm-project/pull/127178.diff 1 Files Affected:
diff --git a/mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td b/mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
index 29cb8035b583b..6a439bfb09078 100644
--- a/mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
+++ b/mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
@@ -138,19 +138,6 @@ def GenericOp : LinalgStructuredBase_Op<"generic", [
}
}
```
-
- To allow progressive lowering from the value world (a.k.a tensor values) to
- the buffer world (a.k.a memref values), a `linalg.generic` op allows mixing
- tensors and buffers operands and tensor results.
-
- ```mlir
- %C = linalg.generic #trait_attribute
- ins(%A, %B : tensor<?x?xf32>, memref<?x?xf32, stride_specification>)
- outs(%C : tensor<?x?xf32>)
- {other-optional-attributes}
- {region}
- -> (tensor<?x?xf32>)
- ```
}];
let arguments = (ins Variadic<AnyType>:$inputs,
|
I'm uncertain whether we should delete the following code: llvm-project/mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp Lines 1296 to 1298 in d8b2e43
|
I thought that Maybe somebody who's been working more closely with Linalg can chime in on mixed tensor/memref support. @nicolasvasilache @MaheshRavishankar @rengolin |
We have been working on it for the past two years with single semantics: bufferization needs to convert all operands in one go. If there are places still allowing the old semantics, I'd fix them in situ. |
Okay, thanks. |
The mixed tensor/buffer semantics has been disallowed in llvm#80660. Closes llvm#124090.
The mixed tensor/buffer semantics has been disallowed in #80660. Closes #124090.