================
@@ -4582,6 +4583,123 @@ class ConstantMatrixType final : public MatrixType {
}
};
+/// Represents an opaque OpenCL cooperative matrix type.
+///
+/// Unlike MatrixType, a cooperative matrix is not an ordinary matrix value.
+/// It is an opaque, distributed object whose shape and role are part of its
+/// type identity.
+class CooperativeMatrixType final : public Type, public llvm::FoldingSetNode {
----------------
asudarsa-qti wrote:
@svenvh comment: Is inheriting from MatrixType the right (and safe) thing to
do? Cooperative matrices are opaque distributed objects, unlike ordinary
matrices, so CooperativeMatrixType might be inheriting MatrixType functionality
that isn't really appropriate for cooperative matrix types.
Reply: I have completely revamped the implementation to stop inheriting from
MatrixType. Thanks again for this feedback.
Attn: @MrSidims
https://github.com/llvm/llvm-project/pull/221328
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits