[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