[llvm] [DXIL][Doc] Update specification of to use TableGen list instead of dag (PR #99055)

Justin Bogner via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 16 10:25:25 PDT 2024


================
@@ -93,25 +93,30 @@ attributes are specified as fields of the ``DXILOp`` class as described below.
         class DXILOpClass;
 
    Concrete operation records, such as ``unary`` are defined by inheriting from ``DXILOpClass``.
-6. Return and argument types of the operation are represented as ``dag``s using the
-   special markers ``out`` and ``ins``. An overload type, if supported by the operation, is
+6. A non-``void`` return type of the operation is represented as a list with one ``LLVMType``. 
+   A ``void`` return is represented as a null-list, ``[]``.
+7. Non-zero count of operation arguments are represented as a list of ``LLVMType`` with each type
+   corresponding to the argument position. An overload type, if supported by the operation, is
    denoted as the positional type ``dxil_overload_ty`` in the argument or in the result, where
    ``dxil_overload_ty`` is defined to be synonymous to ``llvm_any_ty``.
 
    .. code-block::
 
       defvar dxil_overload_ty = llvm_any_ty
 
+   Use of TableGen class ``LLVMMatchType`` is supported to match type of another argument.
----------------
bogner wrote:

We don't support any operations with more than one overloaded type, so this can only ever match the `dxil_overload_ty` argument or a fixed type. Should we just use `dxil_overload_ty` here to keep things simple?

https://github.com/llvm/llvm-project/pull/99055


More information about the llvm-commits mailing list