2012-05-08 16:50:35 +00:00
|
|
|
tblgen - Target Description To C++ Code Generator
|
|
|
|
=================================================
|
|
|
|
|
|
|
|
SYNOPSIS
|
|
|
|
--------
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
:program:`tblgen` [*options*] [*filename*]
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
DESCRIPTION
|
|
|
|
-----------
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
:program:`tblgen` translates from target description (``.td``) files into C++
|
|
|
|
code that can be included in the definition of an LLVM target library. Most
|
|
|
|
users of LLVM will not need to use this program. It is only for assisting with
|
|
|
|
writing an LLVM target backend.
|
2012-05-08 16:50:35 +00:00
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
The input and output of :program:`tblgen` is beyond the scope of this short
|
2014-04-07 22:46:40 +00:00
|
|
|
introduction; please see the :doc:`introduction to TableGen
|
|
|
|
<../TableGen/index>`.
|
2012-05-08 16:50:35 +00:00
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
The *filename* argument specifies the name of a Target Description (``.td``)
|
|
|
|
file to read as input.
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
OPTIONS
|
|
|
|
-------
|
|
|
|
|
2013-04-27 16:34:24 +00:00
|
|
|
.. program:: tblgen
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -help
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Print a summary of command line options.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -o filename
|
2012-05-08 16:50:35 +00:00
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
Specify the output file name. If ``filename`` is ``-``, then
|
|
|
|
:program:`tblgen` sends its output to standard output.
|
2012-05-08 16:50:35 +00:00
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -I directory
|
2012-05-08 16:50:35 +00:00
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
Specify where to find other target description files for inclusion. The
|
|
|
|
``directory`` value should be a full or partial path to a directory that
|
|
|
|
contains target description files.
|
2012-05-08 16:50:35 +00:00
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -asmparsernum N
|
2012-05-08 16:50:35 +00:00
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
Make -gen-asm-parser emit assembly writer number ``N``.
|
2012-05-08 16:50:35 +00:00
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -asmwriternum N
|
2012-05-08 16:50:35 +00:00
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
Make -gen-asm-writer emit assembly writer number ``N``.
|
2012-05-08 16:50:35 +00:00
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -class className
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Print the enumeration list for this class.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -print-records
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Print all records to standard output (default).
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -print-enums
|
2012-05-08 16:50:35 +00:00
|
|
|
|
2013-04-27 16:34:24 +00:00
|
|
|
Print enumeration values for a class.
|
2012-05-08 16:50:35 +00:00
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -print-sets
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Print expanded sets for testing DAG exprs.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -gen-emitter
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Generate machine code emitter.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -gen-register-info
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Generate registers and register classes info.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -gen-instr-info
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Generate instruction descriptions.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -gen-asm-writer
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Generate the assembly writer.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -gen-disassembler
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Generate disassembler.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -gen-pseudo-lowering
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Generate pseudo instruction lowering.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -gen-dag-isel
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Generate a DAG (Directed Acycle Graph) instruction selector.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -gen-asm-matcher
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Generate assembly instruction matcher.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -gen-dfa-packetizer
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Generate DFA Packetizer for VLIW targets.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -gen-fast-isel
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Generate a "fast" instruction selector.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -gen-subtarget
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Generate subtarget enumerations.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -gen-intrinsic
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Generate intrinsic information.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -gen-tgt-intrinsic
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Generate target intrinsic information.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -gen-enhanced-disassembly-info
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Generate enhanced disassembly info.
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
.. option:: -version
|
2012-05-08 16:50:35 +00:00
|
|
|
|
|
|
|
Show the version number of this program.
|
|
|
|
|
|
|
|
EXIT STATUS
|
|
|
|
-----------
|
|
|
|
|
2012-11-29 17:41:05 +00:00
|
|
|
If :program:`tblgen` succeeds, it will exit with 0. Otherwise, if an error
|
2012-05-08 16:50:35 +00:00
|
|
|
occurs, it will exit with a non-zero value.
|