Lines Matching +full:github +full:- +full:automation
19 domain-specific information. Because there may be a large number of these
26 hands the result off to a domain-specific `backend`_ for processing. See
27 the :doc:`TableGen Programmer's Reference <./ProgRef>` for an in-depth
28 description of TableGen. See :doc:`tblgen - Description to C++ Code
29 <../CommandGuide/tblgen>` for details on the ``*-tblgen`` commands
32 The current major users of TableGen are :doc:`The LLVM Target-Independent
34 <https://clang.llvm.org/docs/UsersManual.html#controlling-errors-and-warnings>`_.
47 TableGen files are interpreted by the TableGen program: `llvm-tblgen` available
52 ----------------
55 specifies the file to read. If a filename is not specified, ``llvm-tblgen``
59 selectable on the command line (type '``llvm-tblgen -help``' for a list). For
62 ``-print-enums`` option:
64 .. code-block:: bash
66 $ llvm-tblgen X86.td -print-enums -class=Register
76 $ llvm-tblgen X86.td -print-enums -class=Instruction
85 the `-dump-json` option.
93 -------
95 With no other arguments, `llvm-tblgen` parses the specified file and prints out all
100 .. code-block:: text
150 This definition corresponds to the 32-bit register-register ``add`` instruction
156 the code generator, that it is a two-address instruction, has a particular
165 .. code-block:: text
168 isCommutable = 1, // X = ADD Y,Z --> X = ADD Z,Y
176 class ``X86Inst``), which is defined in the X86-specific TableGen file, to
178 feature of TableGen is that it allows the end-user to define the abstractions
184 TableGen has a syntax that is loosely based on C++ templates, with built-in
186 automation concepts like multiclass, foreach, let, etc.
189 --------------
204 .. code-block:: text
206 def FeatureFPARMv8 : SubtargetFeature<"fp-armv8", "HasFPARMv8", "true",
215 other records. These classes allow the end-user to build abstractions for
223 .. code-block:: text
230 arguments down as well as hard-coding NoItineraries.
235 sub-multiclass become part of the current multiclass, as if they were declared
238 .. code-block:: text
256 See the :doc:`TableGen Programmer's Reference <./ProgRef>` for an in-depth
267 when running ``*-tblgen`` is to print the information in a textual format, but
274 or be used in pre-processing via macros surrounding the include of the file.
278 Pre-processed output should be used if the same information needs to be used
280 a meta-information list that can be shaped into different compile-time formats.
291 `README <https://github.com/llvm/llvm-project/blob/main/llvm/utils/TableGen/README.md>`_.
303 the basic concepts via custom-made backends, which can pervert the original