[PATCH] D106005: [Docs] Define matrix initialisation in MatrixTypes documentation
Saurabh Jha via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Jul 22 10:56:21 PDT 2021
SaurabhJha updated this revision to Diff 360886.
SaurabhJha added a comment.
Add documentation for matrix broadcast initialization
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D106005/new/
https://reviews.llvm.org/D106005
Files:
clang/docs/MatrixTypes.rst
Index: clang/docs/MatrixTypes.rst
===================================================================
--- clang/docs/MatrixTypes.rst
+++ clang/docs/MatrixTypes.rst
@@ -266,6 +266,25 @@
}
+Initialization Syntax
+---------------------
+A value of a matrix type M can be initialized with an initializer list:
+
+.. code-block:: c++
+
+ constexpr M m1 = {};
+ constexpr M m2 = {x};
+ constexpr M m2 = {{a, b, c}, {d, e, f}};
+
+If the initializer list is empty, all elements of the matrix are zero-initialized.
+
+If the initializer list has just one expression, all elements of the matrix will be initialized using that expression.
+
+Otherwise, the initializer list must consist of M::rows initializer lists, each of which must consist of
+M::columns expressions, each of which is used to initialize the corresponding element of the matrix. For example,
+m[i][j] is initialized by the jth expression of the ith initializer list in the initializer. Element designators are
+not allowed.
+
TODOs
-----
@@ -274,9 +293,6 @@
convenient. The alternative is using template deduction to extract this
information. Also add spelling for C.
-Future Work: Initialization syntax.
-
-
Decisions for the Implementation in Clang
=========================================
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D106005.360886.patch
Type: text/x-patch
Size: 1275 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20210722/003b7d94/attachment.bin>
More information about the cfe-commits
mailing list