================
@@ -790,5 +790,60 @@ fwidth(__detail::HLSL_FIXED_VECTOR<float, N> input) {
   return __detail::fwidth_impl(input);
 }
 
+//===----------------------------------------------------------------------===//
+// mul builtins
+//===----------------------------------------------------------------------===//
+
+/// \fn R mul(X x, Y y)
+/// \brief Multiplies x and y using matrix math.
+/// \param x [in] The first input value. If x is a vector, it is treated as a
+///   row vector.
+/// \param y [in] The second input value. If y is a vector, it is treated as a
+///   column vector.
+///
+/// The inner dimension x-columns and y-rows must be equal. The result has the
+/// dimension x-rows x y-columns. When both x and y are vectors, the result is
+/// a dot product (scalar). Scalar operands are multiplied element-wise.
+///
+/// This function supports 9 overloaded forms:
----------------
Icohedron wrote:

Even without numbers you could still be wondering where the implementations for 
the overloaded forms are.
I didn't want to change the doc string to say where the other implementations 
are located because it's a documentation of what the function does and not 
about its implementation details.

https://github.com/llvm/llvm-project/pull/184882
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to