validation fixes
[oota-llvm.git] / docs / CommandGuide / tblgen.pod
1
2 =pod
3
4 =head1 NAME
5
6 tblgen - Target Description To C++ Code Generator
7
8 =head1 SYNOPSIS
9
10 B<tblgen> [I<options>] [I<filename>]
11
12 =head1 DESCRIPTION
13
14 B<tblgen> translates from target description (.td) files into C++ code that can
15 be included in the definition of an LLVM target library. Most users of LLVM will
16 not need to use this program. It is only for assisting with writing an LLVM
17 target backend.
18
19 The input and output of B<tblgen> is beyond the scope of this short
20 introduction. Please see the I<CodeGeneration> page in the LLVM documentation.
21
22 The F<filename> argument specifies the name of a Target Description (.td) file
23 to read as input.
24
25 =head1 OPTIONS
26
27 =over
28
29 =item B<--help>
30
31 Print a summary of command line options.
32
33 =item B<-o> F<filename>
34
35 Specify the output file name.  If F<filename> is C<->, then B<tblgen>
36 sends its output to standard output.
37
38 =item B<-I> F<directory>
39
40 Specify where to find other target description files for inclusion. The
41 F<directory> value should be a full or partial path to a directory that contains
42 target description files.
43
44 =item B<-asmwriternum> F<N>
45
46 Make -gen-asm-writer emit assembly writer number F<N>.
47
48 =item B<-class> F<class Name>
49
50 Print the enumeration list for this class.
51
52 =item B<-print-records>
53
54 Print all records to standard output (default).
55
56 =item B<-print-enums>
57
58 Print enumeration values for a class
59
60 =item B<-gen-emitter>
61
62 Generate machine code emitter.
63
64 =item B<-gen-register-enums>
65
66 Generate the enumeration values for all registers.
67
68 =item B<-gen-register-desc>
69
70 Generate a register info description for each register.
71
72 =item B<-gen-register-desc-header>
73
74 Generate a register info description header for each register.
75
76 =item B<-gen-instr-enums>
77
78 Generate enumeration values for instructions.
79
80 =item B<-gen-instr-desc>
81
82 Generate instruction descriptions.
83
84 =item B<-gen-asm-writer>
85
86 Generate the assembly writer.
87
88 =item B<-gen-dag-isel>
89
90 Generate a DAG (Directed Acycle Graph) instruction selector.
91
92 =item B<-gen-subtarget>
93
94 Generate subtarget enumerations.
95
96 =item B<-gen-intrinsic>
97
98 Generate intrinsic information.
99
100 =item B<-version>
101
102 Show the version number of this program.
103
104 =back
105
106 =head1 EXIT STATUS
107
108 If B<tblgen> succeeds, it will exit with 0.  Otherwise, if an error
109 occurs, it will exit with a non-zero value.
110
111 =head1 AUTHORS
112
113 Maintained by The LLVM Team (L<http://llvm.org>).
114
115 =cut