================
@@ -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

Reply via email to