llvm.org GIT mirror llvm / release_20
2.0 Release docs git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_20@37312 91177308-0d34-0410-b5e6-96231b3b80d8 Tanya Lattner 12 years ago
23 changed file(s) with 5531 addition(s) and 0 deletion(s). Raw diff Collapse all Expand all
0 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
1 .\"
2 .\" Standard preamble:
3 .\" ========================================================================
4 .de Sh \" Subsection heading
5 .br
6 .if t .Sp
7 .ne 5
8 .PP
9 \fB\\$1\fR
10 .PP
11 ..
12 .de Sp \" Vertical space (when we can't use .PP)
13 .if t .sp .5v
14 .if n .sp
15 ..
16 .de Vb \" Begin verbatim text
17 .ft CW
18 .nf
19 .ne \\$1
20 ..
21 .de Ve \" End verbatim text
22 .ft R
23 .fi
24 ..
25 .\" Set up some character translations and predefined strings. \*(-- will
26 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
27 .\" double quote, and \*(R" will give a right double quote. | will give a
28 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
29 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
30 .\" expand to `' in nroff, nothing in troff, for use with C<>.
31 .tr \(*W-|\(bv\*(Tr
32 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
33 .ie n \{\
34 . ds -- \(*W-
35 . ds PI pi
36 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
37 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
38 . ds L" ""
39 . ds R" ""
40 . ds C` ""
41 . ds C' ""
42 'br\}
43 .el\{\
44 . ds -- \|\(em\|
45 . ds PI \(*p
46 . ds L" ``
47 . ds R" ''
48 'br\}
49 .\"
50 .\" If the F register is turned on, we'll generate index entries on stderr for
51 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
52 .\" entries marked with X<> in POD. Of course, you'll have to process the
53 .\" output yourself in some meaningful fashion.
54 .if \nF \{\
55 . de IX
56 . tm Index:\\$1\t\\n%\t"\\$2"
57 ..
58 . nr % 0
59 . rr F
60 .\}
61 .\"
62 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
63 .\" way too many mistakes in technical documents.
64 .hy 0
65 .if n .na
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear. Run. Save yourself. No user-serviceable parts.
69 . \" fudge factors for nroff and troff
70 .if n \{\
71 . ds #H 0
72 . ds #V .8m
73 . ds #F .3m
74 . ds #[ \f1
75 . ds #] \fP
76 .\}
77 .if t \{\
78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 . ds #V .6m
80 . ds #F 0
81 . ds #[ \&
82 . ds #] \&
83 .\}
84 . \" simple accents for nroff and troff
85 .if n \{\
86 . ds ' \&
87 . ds ` \&
88 . ds ^ \&
89 . ds , \&
90 . ds ~ ~
91 . ds /
92 .\}
93 .if t \{\
94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
99 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
100 .\}
101 . \" troff and (daisy-wheel) nroff accents
102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
109 .ds ae a\h'-(\w'a'u*4/10)'e
110 .ds Ae A\h'-(\w'A'u*4/10)'E
111 . \" corrections for vroff
112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
114 . \" for low resolution devices (crt and lpr)
115 .if \n(.H>23 .if \n(.V>19 \
116 \{\
117 . ds : e
118 . ds 8 ss
119 . ds o a
120 . ds d- d\h'-1'\(ga
121 . ds D- D\h'-1'\(hy
122 . ds th \o'bp'
123 . ds Th \o'LP'
124 . ds ae ae
125 . ds Ae AE
126 .\}
127 .rm #[ #] #H #V #F C
128 .\" ========================================================================
129 .\"
130 .IX Title "BUGPOINT 1"
131 .TH BUGPOINT 1 "2006-09-13" "CVS" "LLVM Command Guide"
132 .SH "NAME"
133 bugpoint \- automatic test case reduction tool
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 \&\fBbugpoint\fR [\fIoptions\fR] [\fIinput \s-1LLVM\s0 ll/bc files\fR] [\fI\s-1LLVM\s0 passes\fR] \fB\-\-args\fR
137 \&\fIprogram arguments\fR
138 .SH "DESCRIPTION"
139 .IX Header "DESCRIPTION"
140 \&\fBbugpoint\fR narrows down the source of problems in \s-1LLVM\s0 tools and passes. It
141 can be used to debug three types of failures: optimizer crashes, miscompilations
142 by optimizers, or bad native code generation (including problems in the static
143 and \s-1JIT\s0 compilers). It aims to reduce large test cases to small, useful ones.
144 For more information on the design and inner workings of \fBbugpoint\fR, as well as
145 advice for using bugpoint, see \fIllvm/docs/Bugpoint.html\fR in the \s-1LLVM\s0
146 distribution.
147 .SH "OPTIONS"
148 .IX Header "OPTIONS"
149 .IP "\fB\-\-additional\-so\fR \fIlibrary\fR" 4
150 .IX Item "--additional-so library"
151 Load the dynamic shared object \fIlibrary\fR into the test program whenever it is
152 run. This is useful if you are debugging programs which depend on non-LLVM
153 libraries (such as the X or curses libraries) to run.
154 .IP "\fB\-\-args\fR \fIprogram args\fR" 4
155 .IX Item "--args program args"
156 Pass all arguments specified after \-args to the test program whenever it runs.
157 Note that if any of the \fIprogram args\fR start with a '\-', you should use:
158 .Sp
159 .Vb 1
160 \& bugpoint [bugpoint args] --args -- [program args]
161 .Ve
162 .Sp
163 The \*(L"\-\-\*(R" right after the \fB\-\-args\fR option tells \fBbugpoint\fR to consider any
164 options starting with \f(CW\*(C`\-\*(C'\fR to be part of the \fB\-\-args\fR option, not as options to
165 \&\fBbugpoint\fR itself.
166 .IP "\fB\-\-tool\-args\fR \fItool args\fR" 4
167 .IX Item "--tool-args tool args"
168 Pass all arguments specified after \-\-tool\-args to the \s-1LLVM\s0 tool under test
169 (\fBllc\fR, \fBlli\fR, etc.) whenever it runs. You should use this option in the
170 following way:
171 .Sp
172 .Vb 1
173 \& bugpoint [bugpoint args] --tool-args -- [tool args]
174 .Ve
175 .Sp
176 The \*(L"\-\-\*(R" right after the \fB\-\-tool\-args\fR option tells \fBbugpoint\fR to consider any
177 options starting with \f(CW\*(C`\-\*(C'\fR to be part of the \fB\-\-tool\-args\fR option, not as
178 options to \fBbugpoint\fR itself. (See \fB\-\-args\fR, above.)
179 .IP "\fB\-\-check\-exit\-code\fR=\fI{true,false}\fR" 4
180 .IX Item "--check-exit-code={true,false}"
181 Assume a non-zero exit code or core dump from the test program is a failure.
182 Defaults to true.
183 .IP "\fB\-\-disable\-{dce,simplifycfg}\fR" 4
184 .IX Item "--disable-{dce,simplifycfg}"
185 Do not run the specified passes to clean up and reduce the size of the test
186 program. By default, \fBbugpoint\fR uses these passes internally when attempting to
187 reduce test programs. If you're trying to find a bug in one of these passes,
188 \&\fBbugpoint\fR may crash.
189 .IP "\fB\-find\-bugs\fR" 4
190 .IX Item "-find-bugs"
191 Continually randomize the specified passes and run them on the test program
192 until a bug is found or the user kills \fBbugpoint\fR.
193 .IP "\fB\-\-help\fR" 4
194 .IX Item "--help"
195 Print a summary of command line options.
196 .IP "\fB\-\-input\fR \fIfilename\fR" 4
197 .IX Item "--input filename"
198 Open \fIfilename\fR and redirect the standard input of the test program, whenever
199 it runs, to come from that file.
200 .IP "\fB\-\-load\fR \fIplugin\fR" 4
201 .IX Item "--load plugin"
202 Load the dynamic object \fIplugin\fR into \fBbugpoint\fR itself. This object should
203 register new optimization passes. Once loaded, the object will add new command
204 line options to enable various optimizations. To see the new complete list of
205 optimizations, use the \fB\-\-help\fR and \fB\-\-load\fR options together; for example:
206 .Sp
207 .Vb 1
208 \& bugpoint --load myNewPass.so --help
209 .Ve
210 .IP "\fB\-\-output\fR \fIfilename\fR" 4
211 .IX Item "--output filename"
212 Whenever the test program produces output on its standard output stream, it
213 should match the contents of \fIfilename\fR (the \*(L"reference output\*(R"). If you
214 do not use this option, \fBbugpoint\fR will attempt to generate a reference output
215 by compiling the program with the C backend and running it.
216 .IP "\fB\-\-profile\-info\-file\fR \fIfilename\fR" 4
217 .IX Item "--profile-info-file filename"
218 Profile file loaded by \fB\-\-profile\-loader\fR.
219 .IP "\fB\-\-run\-{int,jit,llc,cbe}\fR" 4
220 .IX Item "--run-{int,jit,llc,cbe}"
221 Whenever the test program is compiled, \fBbugpoint\fR should generate code for it
222 using the specified code generator. These options allow you to choose the
223 interpreter, the \s-1JIT\s0 compiler, the static native code compiler, or the C
224 backend, respectively.
225 .IP "\fB\-\-enable\-valgrind\fR" 4
226 .IX Item "--enable-valgrind"
227 Use valgrind to find faults in the optimization phase. This will allow
228 bugpoint to find otherwise asymptomatic problems caused by memory
229 mis\-management.
230 .SH "EXIT STATUS"
231 .IX Header "EXIT STATUS"
232 If \fBbugpoint\fR succeeds in finding a problem, it will exit with 0. Otherwise,
233 if an error occurs, it will exit with a non-zero value.
234 .SH "SEE ALSO"
235 .IX Header "SEE ALSO"
236 opt
237 .SH "AUTHOR"
238 .IX Header "AUTHOR"
239 Maintained by the \s-1LLVM\s0 Team ().
0 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
1 .\"
2 .\" Standard preamble:
3 .\" ========================================================================
4 .de Sh \" Subsection heading
5 .br
6 .if t .Sp
7 .ne 5
8 .PP
9 \fB\\$1\fR
10 .PP
11 ..
12 .de Sp \" Vertical space (when we can't use .PP)
13 .if t .sp .5v
14 .if n .sp
15 ..
16 .de Vb \" Begin verbatim text
17 .ft CW
18 .nf
19 .ne \\$1
20 ..
21 .de Ve \" End verbatim text
22 .ft R
23 .fi
24 ..
25 .\" Set up some character translations and predefined strings. \*(-- will
26 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
27 .\" double quote, and \*(R" will give a right double quote. | will give a
28 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
29 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
30 .\" expand to `' in nroff, nothing in troff, for use with C<>.
31 .tr \(*W-|\(bv\*(Tr
32 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
33 .ie n \{\
34 . ds -- \(*W-
35 . ds PI pi
36 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
37 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
38 . ds L" ""
39 . ds R" ""
40 . ds C` ""
41 . ds C' ""
42 'br\}
43 .el\{\
44 . ds -- \|\(em\|
45 . ds PI \(*p
46 . ds L" ``
47 . ds R" ''
48 'br\}
49 .\"
50 .\" If the F register is turned on, we'll generate index entries on stderr for
51 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
52 .\" entries marked with X<> in POD. Of course, you'll have to process the
53 .\" output yourself in some meaningful fashion.
54 .if \nF \{\
55 . de IX
56 . tm Index:\\$1\t\\n%\t"\\$2"
57 ..
58 . nr % 0
59 . rr F
60 .\}
61 .\"
62 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
63 .\" way too many mistakes in technical documents.
64 .hy 0
65 .if n .na
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear. Run. Save yourself. No user-serviceable parts.
69 . \" fudge factors for nroff and troff
70 .if n \{\
71 . ds #H 0
72 . ds #V .8m
73 . ds #F .3m
74 . ds #[ \f1
75 . ds #] \fP
76 .\}
77 .if t \{\
78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 . ds #V .6m
80 . ds #F 0
81 . ds #[ \&
82 . ds #] \&
83 .\}
84 . \" simple accents for nroff and troff
85 .if n \{\
86 . ds ' \&
87 . ds ` \&
88 . ds ^ \&
89 . ds , \&
90 . ds ~ ~
91 . ds /
92 .\}
93 .if t \{\
94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
99 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
100 .\}
101 . \" troff and (daisy-wheel) nroff accents
102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
109 .ds ae a\h'-(\w'a'u*4/10)'e
110 .ds Ae A\h'-(\w'A'u*4/10)'E
111 . \" corrections for vroff
112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
114 . \" for low resolution devices (crt and lpr)
115 .if \n(.H>23 .if \n(.V>19 \
116 \{\
117 . ds : e
118 . ds 8 ss
119 . ds o a
120 . ds d- d\h'-1'\(ga
121 . ds D- D\h'-1'\(hy
122 . ds th \o'bp'
123 . ds Th \o'LP'
124 . ds ae ae
125 . ds Ae AE
126 .\}
127 .rm #[ #] #H #V #F C
128 .\" ========================================================================
129 .\"
130 .IX Title "LLC 1"
131 .TH LLC 1 "2006-03-13" "CVS" "LLVM Command Guide"
132 .SH "NAME"
133 llc \- LLVM static compiler
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 \&\fBllc\fR [\fIoptions\fR] [\fIfilename\fR]
137 .SH "DESCRIPTION"
138 .IX Header "DESCRIPTION"
139 The \fBllc\fR command compiles \s-1LLVM\s0 bytecode into assembly language for a
140 specified architecture. The assembly language output can then be passed through
141 a native assembler and linker to generate a native executable.
142 .PP
143 The choice of architecture for the output assembly code is automatically
144 determined from the input bytecode file, unless the \fB\-march\fR option is used to
145 override the default.
146 .SH "OPTIONS"
147 .IX Header "OPTIONS"
148 If \fIfilename\fR is \- or omitted, \fBllc\fR reads \s-1LLVM\s0 bytecode from standard input.
149 Otherwise, it will read \s-1LLVM\s0 bytecode from \fIfilename\fR.
150 .PP
151 If the \fB\-o\fR option is omitted, then \fBllc\fR will send its output to standard
152 output if the input is from standard input. If the \fB\-o\fR option specifies \-,
153 then the output will also be sent to standard output.
154 .PP
155 If no \fB\-o\fR option is specified and an input file other than \- is specified,
156 then \fBllc\fR creates the output filename by taking the input filename,
157 removing any existing \fI.bc\fR extension, and adding a \fI.s\fR suffix.
158 .PP
159 Other \fBllc\fR options are as follows:
160 .Sh "End-user Options"
161 .IX Subsection "End-user Options"
162 .IP "\fB\-\-help\fR" 4
163 .IX Item "--help"
164 Print a summary of command line options.
165 .IP "\fB\-f\fR" 4
166 .IX Item "-f"
167 Overwrite output files. By default, \fBllc\fR will refuse to overwrite
168 an output file which already exists.
169 .IP "\fB\-mtriple\fR=\fItarget triple\fR" 4
170 .IX Item "-mtriple=target triple"
171 Override the target triple specified in the input bytecode file with the
172 specified string.
173 .IP "\fB\-march\fR=\fIarch\fR" 4
174 .IX Item "-march=arch"
175 Specify the architecture for which to generate assembly, overriding the target
176 encoded in the bytecode file. See the output of \fBllc \-\-help\fR for a list of
177 valid architectures. By default this is inferred from the target triple or
178 autodetected to the current architecture.
179 .IP "\fB\-mcpu\fR=\fIcpuname\fR" 4
180 .IX Item "-mcpu=cpuname"
181 Specify a specific chip in the current architecture to generate code for.
182 By default this is inferred from the target triple and autodetected to
183 the current architecture. For a list of available CPUs, use:
184 \&\fBllvm-as < /dev/null | llc \-march=xyz \-mcpu=help\fR
185 .IP "\fB\-mattr\fR=\fIa1,+a2,\-a3,...\fR" 4
186 .IX Item "-mattr=a1,+a2,-a3,..."
187 Override or control specific attributes of the target, such as whether \s-1SIMD\s0
188 operations are enabled or not. The default set of attributes is set by the
189 current \s-1CPU\s0. For a list of available attributes, use:
190 \&\fBllvm-as < /dev/null | llc \-march=xyz \-mattr=help\fR
191 .IP "\fB\-\-disable\-fp\-elim\fR" 4
192 .IX Item "--disable-fp-elim"
193 Disable frame pointer elimination optimization.
194 .IP "\fB\-\-disable\-excess\-fp\-precision\fR" 4
195 .IX Item "--disable-excess-fp-precision"
196 Disable optimizations that may produce excess precision for floating point.
197 Note that this option can dramatically slow down code on some systems
198 (e.g. X86).
199 .IP "\fB\-\-enable\-unsafe\-fp\-math\fR" 4
200 .IX Item "--enable-unsafe-fp-math"
201 Enable optimizations that make unsafe assumptions about \s-1IEEE\s0 math (e.g. that
202 addition is associative) or may not work for all input ranges. These
203 optimizations allow the code generator to make use of some instructions which
204 would otherwise not be usable (such as fsin on X86).
205 .IP "\fB\-\-enable\-correct\-eh\-support\fR" 4
206 .IX Item "--enable-correct-eh-support"
207 Instruct the \fBlowerinvoke\fR pass to insert code for correct exception handling
208 support. This is expensive and is by default omitted for efficiency.
209 .IP "\fB\-\-stats\fR" 4
210 .IX Item "--stats"
211 Print statistics recorded by code-generation passes.
212 .IP "\fB\-\-time\-passes\fR" 4
213 .IX Item "--time-passes"
214 Record the amount of time needed for each pass and print a report to standard
215 error.
216 .IP "\fB\-\-load\fR=\fIdso_path\fR" 4
217 .IX Item "--load=dso_path"
218 Dynamically load \fIdso_path\fR (a path to a dynamically shared object) that
219 implements an \s-1LLVM\s0 target. This will permit the target name to be used with the
220 \&\fB\-march\fR option so that code can be generated for that target.
221 .Sh "Tuning/Configuration Options"
222 .IX Subsection "Tuning/Configuration Options"
223 .IP "\fB\-\-print\-machineinstrs\fR" 4
224 .IX Item "--print-machineinstrs"
225 Print generated machine code between compilation phases (useful for debugging).
226 .IP "\fB\-\-regalloc\fR=\fIallocator\fR" 4
227 .IX Item "--regalloc=allocator"
228 Specify the register allocator to use. The default \fIallocator\fR is \fIlocal\fR.
229 Valid register allocators are:
230 .RS 4
231 .IP "\fIsimple\fR" 4
232 .IX Item "simple"
233 Very simple \*(L"always spill\*(R" register allocator
234 .IP "\fIlocal\fR" 4
235 .IX Item "local"
236 Local register allocator
237 .IP "\fIlinearscan\fR" 4
238 .IX Item "linearscan"
239 Linear scan global register allocator
240 .IP "\fIiterativescan\fR" 4
241 .IX Item "iterativescan"
242 Iterative scan global register allocator
243 .RE
244 .RS 4
245 .RE
246 .IP "\fB\-\-spiller\fR=\fIspiller\fR" 4
247 .IX Item "--spiller=spiller"
248 Specify the spiller to use for register allocators that support it. Currently
249 this option is used only by the linear scan register allocator. The default
250 \&\fIspiller\fR is \fIlocal\fR. Valid spillers are:
251 .RS 4
252 .IP "\fIsimple\fR" 4
253 .IX Item "simple"
254 Simple spiller
255 .IP "\fIlocal\fR" 4
256 .IX Item "local"
257 Local spiller
258 .RE
259 .RS 4
260 .RE
261 .Sh "Intel IA\-32\-specific Options"
262 .IX Subsection "Intel IA-32-specific Options"
263 .IP "\fB\-\-x86\-asm\-syntax=att|intel\fR" 4
264 .IX Item "--x86-asm-syntax=att|intel"
265 Specify whether to emit assembly code in \s-1AT&T\s0 syntax (the default) or intel
266 syntax.
267 .SH "EXIT STATUS"
268 .IX Header "EXIT STATUS"
269 If \fBllc\fR succeeds, it will exit with 0. Otherwise, if an error occurs,
270 it will exit with a non-zero value.
271 .SH "SEE ALSO"
272 .IX Header "SEE ALSO"
273 lli
274 .SH "AUTHORS"
275 .IX Header "AUTHORS"
276 Maintained by the \s-1LLVM\s0 Team ().
0 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
1 .\"
2 .\" Standard preamble:
3 .\" ========================================================================
4 .de Sh \" Subsection heading
5 .br
6 .if t .Sp
7 .ne 5
8 .PP
9 \fB\\$1\fR
10 .PP
11 ..
12 .de Sp \" Vertical space (when we can't use .PP)
13 .if t .sp .5v
14 .if n .sp
15 ..
16 .de Vb \" Begin verbatim text
17 .ft CW
18 .nf
19 .ne \\$1
20 ..
21 .de Ve \" End verbatim text
22 .ft R
23 .fi
24 ..
25 .\" Set up some character translations and predefined strings. \*(-- will
26 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
27 .\" double quote, and \*(R" will give a right double quote. | will give a
28 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
29 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
30 .\" expand to `' in nroff, nothing in troff, for use with C<>.
31 .tr \(*W-|\(bv\*(Tr
32 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
33 .ie n \{\
34 . ds -- \(*W-
35 . ds PI pi
36 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
37 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
38 . ds L" ""
39 . ds R" ""
40 . ds C` ""
41 . ds C' ""
42 'br\}
43 .el\{\
44 . ds -- \|\(em\|
45 . ds PI \(*p
46 . ds L" ``
47 . ds R" ''
48 'br\}
49 .\"
50 .\" If the F register is turned on, we'll generate index entries on stderr for
51 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
52 .\" entries marked with X<> in POD. Of course, you'll have to process the
53 .\" output yourself in some meaningful fashion.
54 .if \nF \{\
55 . de IX
56 . tm Index:\\$1\t\\n%\t"\\$2"
57 ..
58 . nr % 0
59 . rr F
60 .\}
61 .\"
62 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
63 .\" way too many mistakes in technical documents.
64 .hy 0
65 .if n .na
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear. Run. Save yourself. No user-serviceable parts.
69 . \" fudge factors for nroff and troff
70 .if n \{\
71 . ds #H 0
72 . ds #V .8m
73 . ds #F .3m
74 . ds #[ \f1
75 . ds #] \fP
76 .\}
77 .if t \{\
78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 . ds #V .6m
80 . ds #F 0
81 . ds #[ \&
82 . ds #] \&
83 .\}
84 . \" simple accents for nroff and troff
85 .if n \{\
86 . ds ' \&
87 . ds ` \&
88 . ds ^ \&
89 . ds , \&
90 . ds ~ ~
91 . ds /
92 .\}
93 .if t \{\
94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
99 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
100 .\}
101 . \" troff and (daisy-wheel) nroff accents
102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
109 .ds ae a\h'-(\w'a'u*4/10)'e
110 .ds Ae A\h'-(\w'A'u*4/10)'E
111 . \" corrections for vroff
112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
114 . \" for low resolution devices (crt and lpr)
115 .if \n(.H>23 .if \n(.V>19 \
116 \{\
117 . ds : e
118 . ds 8 ss
119 . ds o a
120 . ds d- d\h'-1'\(ga
121 . ds D- D\h'-1'\(hy
122 . ds th \o'bp'
123 . ds Th \o'LP'
124 . ds ae ae
125 . ds Ae AE
126 .\}
127 .rm #[ #] #H #V #F C
128 .\" ========================================================================
129 .\"
130 .IX Title "LLI 1"
131 .TH LLI 1 "2006-03-13" "CVS" "LLVM Command Guide"
132 .SH "NAME"
133 lli \- directly execute programs from LLVM bytecode
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 \&\fBlli\fR [\fIoptions\fR] [\fIfilename\fR] [\fIprogram args\fR]
137 .SH "DESCRIPTION"
138 .IX Header "DESCRIPTION"
139 \&\fBlli\fR directly executes programs in \s-1LLVM\s0 bytecode format. It takes a program
140 in \s-1LLVM\s0 bytecode format and executes it using a just-in-time compiler, if one is
141 available for the current architecture, or an interpreter. \fBlli\fR takes all of
142 the same code generator options as llc, but they are only effective when
143 \&\fBlli\fR is using the just-in-time compiler.
144 .PP
145 If \fIfilename\fR is not specified, then \fBlli\fR reads the \s-1LLVM\s0 bytecode for the
146 program from standard input.
147 .PP
148 The optional \fIargs\fR specified on the command line are passed to the program as
149 arguments.
150 .SH "OPTIONS"
151 .IX Header "OPTIONS"
152 .IP "\fB\-help\fR" 4
153 .IX Item "-help"
154 Print a summary of command line options.
155 .IP "\fB\-stats\fR" 4
156 .IX Item "-stats"
157 Print statistics from the code-generation passes. This is only meaningful for
158 the just-in-time compiler, at present.
159 .IP "\fB\-time\-passes\fR" 4
160 .IX Item "-time-passes"
161 Record the amount of time needed for each code-generation pass and print it to
162 standard error.
163 .IP "\fB\-mtriple\fR=\fItarget triple\fR" 4
164 .IX Item "-mtriple=target triple"
165 Override the target triple specified in the input bytecode file with the
166 specified string. This may result in a crash if you pick an
167 architecture which is not compatible with the current system.
168 .IP "\fB\-march\fR=\fIarch\fR" 4
169 .IX Item "-march=arch"
170 Specify the architecture for which to generate assembly, overriding the target
171 encoded in the bytecode file. See the output of \fBllc \-\-help\fR for a list of
172 valid architectures. By default this is inferred from the target triple or
173 autodetected to the current architecture.
174 .IP "\fB\-mcpu\fR=\fIcpuname\fR" 4
175 .IX Item "-mcpu=cpuname"
176 Specify a specific chip in the current architecture to generate code for.
177 By default this is inferred from the target triple and autodetected to
178 the current architecture. For a list of available CPUs, use:
179 \&\fBllvm-as < /dev/null | llc \-march=xyz \-mcpu=help\fR
180 .IP "\fB\-mattr\fR=\fIa1,+a2,\-a3,...\fR" 4
181 .IX Item "-mattr=a1,+a2,-a3,..."
182 Override or control specific attributes of the target, such as whether \s-1SIMD\s0
183 operations are enabled or not. The default set of attributes is set by the
184 current \s-1CPU\s0. For a list of available attributes, use:
185 \&\fBllvm-as < /dev/null | llc \-march=xyz \-mattr=help\fR
186 .IP "\fB\-force\-interpreter\fR=\fI{false,true}\fR" 4
187 .IX Item "-force-interpreter={false,true}"
188 If set to true, use the interpreter even if a just-in-time compiler is available
189 for this architecture. Defaults to false.
190 .IP "\fB\-f\fR=\fIname\fR" 4
191 .IX Item "-f=name"
192 Call the function named \fIname\fR to start the program. Note: The
193 function is assumed to have the C signature \f(CW\*(C`int\*(C'\fR \fIname\fR \f(CW\*(C`(int,
194 char **, char **)\*(C'\fR. If you try to use this option to call a function of
195 incompatible type, undefined behavior may result. Defaults to \f(CW\*(C`main\*(C'\fR.
196 .SH "EXIT STATUS"
197 .IX Header "EXIT STATUS"
198 If \fBlli\fR fails to load the program, it will exit with an exit code of 1.
199 Otherwise, it will return the exit code of the program it executes.
200 .SH "SEE ALSO"
201 .IX Header "SEE ALSO"
202 llc
203 .SH "AUTHOR"
204 .IX Header "AUTHOR"
205 Maintained by the \s-1LLVM\s0 Team ().
0 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
1 .\"
2 .\" Standard preamble:
3 .\" ========================================================================
4 .de Sh \" Subsection heading
5 .br
6 .if t .Sp
7 .ne 5
8 .PP
9 \fB\\$1\fR
10 .PP
11 ..
12 .de Sp \" Vertical space (when we can't use .PP)
13 .if t .sp .5v
14 .if n .sp
15 ..
16 .de Vb \" Begin verbatim text
17 .ft CW
18 .nf
19 .ne \\$1
20 ..
21 .de Ve \" End verbatim text
22 .ft R
23 .fi
24 ..
25 .\" Set up some character translations and predefined strings. \*(-- will
26 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
27 .\" double quote, and \*(R" will give a right double quote. | will give a
28 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
29 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
30 .\" expand to `' in nroff, nothing in troff, for use with C<>.
31 .tr \(*W-|\(bv\*(Tr
32 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
33 .ie n \{\
34 . ds -- \(*W-
35 . ds PI pi
36 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
37 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
38 . ds L" ""
39 . ds R" ""
40 . ds C` ""
41 . ds C' ""
42 'br\}
43 .el\{\
44 . ds -- \|\(em\|
45 . ds PI \(*p
46 . ds L" ``
47 . ds R" ''
48 'br\}
49 .\"
50 .\" If the F register is turned on, we'll generate index entries on stderr for
51 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
52 .\" entries marked with X<> in POD. Of course, you'll have to process the
53 .\" output yourself in some meaningful fashion.
54 .if \nF \{\
55 . de IX
56 . tm Index:\\$1\t\\n%\t"\\$2"
57 ..
58 . nr % 0
59 . rr F
60 .\}
61 .\"
62 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
63 .\" way too many mistakes in technical documents.
64 .hy 0
65 .if n .na
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear. Run. Save yourself. No user-serviceable parts.
69 . \" fudge factors for nroff and troff
70 .if n \{\
71 . ds #H 0
72 . ds #V .8m
73 . ds #F .3m
74 . ds #[ \f1
75 . ds #] \fP
76 .\}
77 .if t \{\
78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 . ds #V .6m
80 . ds #F 0
81 . ds #[ \&
82 . ds #] \&
83 .\}
84 . \" simple accents for nroff and troff
85 .if n \{\
86 . ds ' \&
87 . ds ` \&
88 . ds ^ \&
89 . ds , \&
90 . ds ~ ~
91 . ds /
92 .\}
93 .if t \{\
94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
99 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
100 .\}
101 . \" troff and (daisy-wheel) nroff accents
102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
109 .ds ae a\h'-(\w'a'u*4/10)'e
110 .ds Ae A\h'-(\w'A'u*4/10)'E
111 . \" corrections for vroff
112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
114 . \" for low resolution devices (crt and lpr)
115 .if \n(.H>23 .if \n(.V>19 \
116 \{\
117 . ds : e
118 . ds 8 ss
119 . ds o a
120 . ds d- d\h'-1'\(ga
121 . ds D- D\h'-1'\(hy
122 . ds th \o'bp'
123 . ds Th \o'LP'
124 . ds ae ae
125 . ds Ae AE
126 .\}
127 .rm #[ #] #H #V #F C
128 .\" ========================================================================
129 .\"
130 .IX Title "LLVM-AR 1"
131 .TH LLVM-AR 1 "2006-11-20" "CVS" "LLVM Command Guide"
132 .SH "NAME"
133 llvm\-ar \- LLVM archiver
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 \&\fBllvm-ar\fR [\-]{dmpqrtx}[Rabfikouz] [relpos] [count] [files...]
137 .SH "DESCRIPTION"
138 .IX Header "DESCRIPTION"
139 The \fBllvm-ar\fR command is similar to the common Unix utility, \f(CW\*(C`ar\*(C'\fR. It
140 archives several files together into a single file. The intent for this is
141 to produce archive libraries by \s-1LLVM\s0 bytecode that can be linked into an
142 \&\s-1LLVM\s0 program. However, the archive can contain any kind of file. By default,
143 \&\fBllvm-ar\fR generates a symbol table that makes linking faster because
144 only the symbol table needs to be consulted, not each individual file member
145 of the archive.
146 .PP
147 The \fBllvm-ar\fR command can be used to \fIread\fR both \s-1SVR4\s0 and \s-1BSD\s0 style archive
148 files. However, it cannot be used to write them. While the \fBllvm-ar\fR command
149 produces files that are \fIalmost\fR identical to the format used by other \f(CW\*(C`ar\*(C'\fR
150 implementations, it has two significant departures in order to make the
151 archive appropriate for \s-1LLVM\s0. The first departure is that \fBllvm-ar\fR only
152 uses \s-1BSD4\s0.4 style long path names (stored immediately after the header) and
153 never contains a string table for long names. The second departure is that the
154 symbol table is formated for efficient construction of an in-memory data
155 structure that permits rapid (red\-black tree) lookups. Consequently, archives
156 produced with \fBllvm-ar\fR usually won't be readable or editable with any
157 \&\f(CW\*(C`ar\*(C'\fR implementation or useful for linking. Using the \f(CW\*(C`f\*(C'\fR modifier to flatten
158 file names will make the archive readable by other \f(CW\*(C`ar\*(C'\fR implementations
159 but not for linking because the symbol table format for \s-1LLVM\s0 is unique. If an
160 \&\s-1SVR4\s0 or \s-1BSD\s0 style archive is used with the \f(CW\*(C`r\*(C'\fR (replace) or \f(CW\*(C`q\*(C'\fR (quick
161 update) operations, the archive will be reconstructed in \s-1LLVM\s0 format. This
162 means that the string table will be dropped (in deference to \s-1BSD\s0 4.4 long names)
163 and an \s-1LLVM\s0 symbol table will be added (by default). The system symbol table
164 will be retained.
165 .PP
166 Here's where \fBllvm-ar\fR departs from previous \f(CW\*(C`ar\*(C'\fR implementations:
167 .IP "\fISymbol Table\fR" 4
168 .IX Item "Symbol Table"
169 Since \fBllvm-ar\fR is intended to archive bytecode files, the symbol table
170 won't make much sense to anything but \s-1LLVM\s0. Consequently, the symbol table's
171 format has been simplified. It consists simply of a sequence of pairs
172 of a file member index number as an \s-1LSB\s0 4byte integer and a null-terminated
173 string.
174 .IP "\fILong Paths\fR" 4
175 .IX Item "Long Paths"
176 Some \f(CW\*(C`ar\*(C'\fR implementations (\s-1SVR4\s0) use a separate file member to record long
177 path names (> 15 characters). \fBllvm-ar\fR takes the \s-1BSD\s0 4.4 and Mac \s-1OS\s0 X
178 approach which is to simply store the full path name immediately preceding
179 the data for the file. The path name is null terminated and may contain the
180 slash (/) character.
181 .IP "\fICompression\fR" 4
182 .IX Item "Compression"
183 \&\fBllvm-ar\fR can compress the members of an archive to save space. The
184 compression used depends on what's available on the platform and what choices
185 the \s-1LLVM\s0 Compressor utility makes. It generally favors bzip2 but will select
186 between \*(L"no compression\*(R" or bzip2 depending on what makes sense for the
187 file's content.
188 .IP "\fIDirectory Recursion\fR" 4
189 .IX Item "Directory Recursion"
190 Most \f(CW\*(C`ar\*(C'\fR implementations do not recurse through directories but simply
191 ignore directories if they are presented to the program in the \fIfiles\fR
192 option. \fBllvm-ar\fR, however, can recurse through directory structures and
193 add all the files under a directory, if requested.
194 .IP "\fI\s-1TOC\s0 Verbose Output\fR" 4
195 .IX Item "TOC Verbose Output"
196 When \fBllvm-ar\fR prints out the verbose table of contents (\f(CW\*(C`tv\*(C'\fR option), it
197 precedes the usual output with a character indicating the basic kind of
198 content in the file. A blank means the file is a regular file. A 'Z' means
199 the file is compressed. A 'B' means the file is an \s-1LLVM\s0 bytecode file. An
200 \&'S' means the file is the symbol table.
201 .SH "OPTIONS"
202 .IX Header "OPTIONS"
203 The options to \fBllvm-ar\fR are compatible with other \f(CW\*(C`ar\*(C'\fR implementations.
204 However, there are a few modifiers (\fIzR\fR) that are not found in other
205 \&\f(CW\*(C`ar\*(C'\fRs. The options to \fBllvm-ar\fR specify a single basic operation to
206 perform on the archive, a variety of modifiers for that operation, the
207 name of the archive file, and an optional list of file names. These options
208 are used to determine how \fBllvm-ar\fR should process the archive file.
209 .PP
210 The Operations and Modifiers are explained in the sections below. The minimal
211 set of options is at least one operator and the name of the archive. Typically
212 archive files end with a \f(CW\*(C`.a\*(C'\fR suffix, but this is not required. Following
213 the \fIarchive-name\fR comes a list of \fIfiles\fR that indicate the specific members
214 of the archive to operate on. If the \fIfiles\fR option is not specified, it
215 generally means either \*(L"none\*(R" or \*(L"all\*(R" members, depending on the operation.
216 .Sh "Operations"
217 .IX Subsection "Operations"
218 .IP "d" 4
219 .IX Item "d"
220 Delete files from the archive. No modifiers are applicable to this operation.
221 The \fIfiles\fR options specify which members should be removed from the
222 archive. It is not an error if a specified file does not appear in the archive.
223 If no \fIfiles\fR are specified, the archive is not modified.
224 .IP "m[abi]" 4
225 .IX Item "m[abi]"
226 Move files from one location in the archive to another. The \fIa\fR, \fIb\fR, and
227 \&\fIi\fR modifiers apply to this operation. The \fIfiles\fR will all be moved
228 to the location given by the modifiers. If no modifiers are used, the files
229 will be moved to the end of the archive. If no \fIfiles\fR are specified, the
230 archive is not modified.
231 .IP "p[k]" 4
232 .IX Item "p[k]"
233 Print files to the standard output. The \fIk\fR modifier applies to this
234 operation. This operation simply prints the \fIfiles\fR indicated to the
235 standard output. If no \fIfiles\fR are specified, the entire archive is printed.
236 Printing bytecode files is ill-advised as they might confuse your terminal
237 settings. The \fIp\fR operation never modifies the archive.
238 .IP "q[Rfz]" 4
239 .IX Item "q[Rfz]"
240 Quickly append files to the end of the archive. The \fIR\fR, \fIf\fR, and \fIz\fR
241 modifiers apply to this operation. This operation quickly adds the
242 \&\fIfiles\fR to the archive without checking for duplicates that should be
243 removed first. If no \fIfiles\fR are specified, the archive is not modified.
244 Because of the way that \fBllvm-ar\fR constructs the archive file, its dubious
245 whether the \fIq\fR operation is any faster than the \fIr\fR operation.
246 .IP "r[Rabfuz]" 4
247 .IX Item "r[Rabfuz]"
248 Replace or insert file members. The \fIR\fR, \fIa\fR, \fIb\fR, \fIf\fR, \fIu\fR, and \fIz\fR
249 modifiers apply to this operation. This operation will replace existing
250 \&\fIfiles\fR or insert them at the end of the archive if they do not exist. If no
251 \&\fIfiles\fR are specified, the archive is not modified.
252 .IP "t[v]" 4
253 .IX Item "t[v]"
254 Print the table of contents. Without any modifiers, this operation just prints
255 the names of the members to the standard output. With the \fIv\fR modifier,
256 \&\fBllvm-ar\fR also prints out the file type (B=bytecode, Z=compressed, S=symbol
257 table, blank=regular file), the permission mode, the owner and group, the
258 size, and the date. If any \fIfiles\fR are specified, the listing is only for
259 those files. If no \fIfiles\fR are specified, the table of contents for the
260 whole archive is printed.
261 .IP "x[oP]" 4
262 .IX Item "x[oP]"
263 Extract archive members back to files. The \fIo\fR modifier applies to this
264 operation. This operation retrieves the indicated \fIfiles\fR from the archive
265 and writes them back to the operating system's file system. If no
266 \&\fIfiles\fR are specified, the entire archive is extract.
267 .Sh "Modifiers (operation specific)"
268 .IX Subsection "Modifiers (operation specific)"
269 The modifiers below are specific to certain operations. See the Operations
270 section (above) to determine which modifiers are applicable to which operations.
271 .IP "[a]" 4
272 .IX Item "[a]"
273 When inserting or moving member files, this option specifies the destination of
274 the new files as being \f(CW\*(C`a\*(C'\fRfter the \fIrelpos\fR member. If \fIrelpos\fR is not found,
275 the files are placed at the end of the archive.
276 .IP "[b]" 4
277 .IX Item "[b]"
278 When inserting or moving member files, this option specifies the destination of
279 the new files as being \f(CW\*(C`b\*(C'\fRefore the \fIrelpos\fR member. If \fIrelpos\fR is not
280 found, the files are placed at the end of the archive. This modifier is
281 identical to the the \fIi\fR modifier.
282 .IP "[f]" 4
283 .IX Item "[f]"
284 Normally, \fBllvm-ar\fR stores the full path name to a file as presented to it on
285 the command line. With this option, truncated (15 characters max) names are
286 used. This ensures name compatibility with older versions of \f(CW\*(C`ar\*(C'\fR but may also
287 thwart correct extraction of the files (duplicates may overwrite). If used with
288 the \fIR\fR option, the directory recursion will be performed but the file names
289 will all be \f(CW\*(C`f\*(C'\fRlattened to simple file names.
290 .IP "[i]" 4
291 .IX Item "[i]"
292 A synonym for the \fIb\fR option.
293 .IP "[k]" 4
294 .IX Item "[k]"
295 Normally, \fBllvm-ar\fR will not print the contents of bytecode files when the
296 \&\fIp\fR operation is used. This modifier defeats the default and allows the
297 bytecode members to be printed.
298 .IP "[N]" 4
299 .IX Item "[N]"
300 This option is ignored by \fBllvm-ar\fR but provided for compatibility.
301 .IP "[o]" 4
302 .IX Item "[o]"
303 When extracting files, this option will cause \fBllvm-ar\fR to preserve the
304 original modification times of the files it writes.
305 .IP "[P]" 4
306 .IX Item "[P]"
307 use full path names when matching
308 .IP "[R]" 4
309 .IX Item "[R]"
310 This modifier instructions the \fIr\fR option to recursively process directories.
311 Without \fIR\fR, directories are ignored and only those \fIfiles\fR that refer to
312 files will be added to the archive. When \fIR\fR is used, any directories specified
313 with \fIfiles\fR will be scanned (recursively) to find files to be added to the
314 archive. Any file whose name begins with a dot will not be added.
315 .IP "[u]" 4
316 .IX Item "[u]"
317 When replacing existing files in the archive, only replace those files that have
318 a time stamp than the time stamp of the member in the archive.
319 .IP "[z]" 4
320 .IX Item "[z]"
321 When inserting or replacing any file in the archive, compress the file first.
322 This
323 modifier is safe to use when (previously) compressed bytecode files are added to
324 the archive; the compressed bytecode files will not be doubly compressed.
325 .Sh "Modifiers (generic)"
326 .IX Subsection "Modifiers (generic)"
327 The modifiers below may be applied to any operation.
328 .IP "[c]" 4
329 .IX Item "[c]"
330 For all operations, \fBllvm-ar\fR will always create the archive if it doesn't
331 exist. Normally, \fBllvm-ar\fR will print a warning message indicating that the
332 archive is being created. Using this modifier turns off that warning.
333 .IP "[s]" 4
334 .IX Item "[s]"
335 This modifier requests that an archive index (or symbol table) be added to the
336 archive. This is the default mode of operation. The symbol table will contain
337 all the externally visible functions and global variables defined by all the
338 bytecode files in the archive. Using this modifier is more efficient that using
339 llvm-ranlib which also creates the symbol table.
340 .IP "[S]" 4
341 .IX Item "[S]"
342 This modifier is the opposite of the \fIs\fR modifier. It instructs \fBllvm-ar\fR to
343 not build the symbol table. If both \fIs\fR and \fIS\fR are used, the last modifier to
344 occur in the options will prevail.
345 .IP "[v]" 4
346 .IX Item "[v]"
347 This modifier instructs \fBllvm-ar\fR to be verbose about what it is doing. Each
348 editing operation taken against the archive will produce a line of output saying
349 what is being done.
350 .SH "STANDARDS"
351 .IX Header "STANDARDS"
352 The \fBllvm-ar\fR utility is intended to provide a superset of the \s-1IEEE\s0 Std 1003.2
353 (\s-1POSIX\s0.2) functionality for \f(CW\*(C`ar\*(C'\fR. \fBllvm-ar\fR can read both \s-1SVR4\s0 and \s-1BSD4\s0.4 (or
354 Mac \s-1OS\s0 X) archives. If the \f(CW\*(C`f\*(C'\fR modifier is given to the \f(CW\*(C`x\*(C'\fR or \f(CW\*(C`r\*(C'\fR operations
355 then \fBllvm-ar\fR will write \s-1SVR4\s0 compatible archives. Without this modifier,
356 \&\fBllvm-ar\fR will write \s-1BSD4\s0.4 compatible archives that have long names
357 immediately after the header and indicated using the \*(L"#1/ddd\*(R" notation for the
358 name in the header.
359 .SH "FILE FORMAT"
360 .IX Header "FILE FORMAT"
361 The file format for \s-1LLVM\s0 Archive files is similar to that of \s-1BSD\s0 4.4 or Mac \s-1OSX\s0
362 archive files. In fact, except for the symbol table, the \f(CW\*(C`ar\*(C'\fR commands on those
363 operating systems should be able to read \s-1LLVM\s0 archive files. The details of the
364 file format follow.
365 .PP
366 Each archive begins with the archive magic number which is the eight printable
367 characters \*(L"!\en\*(R" where \en represents the newline character (0x0A).
368 Following the magic number, the file is composed of even length members that
369 begin with an archive header and end with a \en padding character if necessary
370 (to make the length even). Each file member is composed of a header (defined
371 below), an optional newline-terminated \*(L"long file name\*(R" and the contents of
372 the file.
373 .PP
374 The fields of the header are described in the items below. All fields of the
375 header contain only \s-1ASCII\s0 characters, are left justified and are right padded
376 with space characters.
377 .IP "name \- char[16]" 4
378 .IX Item "name - char[16]"
379 This field of the header provides the name of the archive member. If the name is
380 longer than 15 characters or contains a slash (/) character, then this field
381 contains \f(CW\*(C`#1/nnn\*(C'\fR where \f(CW\*(C`nnn\*(C'\fR provides the length of the name and the \f(CW\*(C`#1/\*(C'\fR
382 is literal. In this case, the actual name of the file is provided in the \f(CW\*(C`nnn\*(C'\fR
383 bytes immediately following the header. If the name is 15 characters or less, it
384 is contained directly in this field and terminated with a slash (/) character.
385 .IP "date \- char[12]" 4
386 .IX Item "date - char[12]"
387 This field provides the date of modification of the file in the form of a
388 decimal encoded number that provides the number of seconds since the epoch
389 (since 00:00:00 Jan 1, 1970) per Posix specifications.
390 .IP "uid \- char[6]" 4
391 .IX Item "uid - char[6]"
392 This field provides the user id of the file encoded as a decimal \s-1ASCII\s0 string.
393 This field might not make much sense on non-Unix systems. On Unix, it is the
394 same value as the st_uid field of the stat structure returned by the \fIstat\fR\|(2)
395 operating system call.
396 .IP "gid \- char[6]" 4
397 .IX Item "gid - char[6]"
398 This field provides the group id of the file encoded as a decimal \s-1ASCII\s0 string.
399 This field might not make much sense on non-Unix systems. On Unix, it is the
400 same value as the st_gid field of the stat structure returned by the \fIstat\fR\|(2)
401 operating system call.
402 .IP "mode \- char[8]" 4
403 .IX Item "mode - char[8]"
404 This field provides the access mode of the file encoded as an octal \s-1ASCII\s0
405 string. This field might not make much sense on non-Unix systems. On Unix, it
406 is the same value as the st_mode field of the stat structure returned by the
407 \&\fIstat\fR\|(2) operating system call.
408 .IP "size \- char[10]" 4
409 .IX Item "size - char[10]"
410 This field provides the size of the file, in bytes, encoded as a decimal \s-1ASCII\s0
411 string. If the size field is negative (starts with a minus sign, 0x02D), then
412 the archive member is stored in compressed form. The first byte of the archive
413 member's data indicates the compression type used. A value of 0 (0x30) indicates
414 that no compression was used. A value of 2 (0x32) indicates that bzip2
415 compression was used.
416 .IP "fmag \- char[2]" 4
417 .IX Item "fmag - char[2]"
418 This field is the archive file member magic number. Its content is always the
419 two characters back tick (0x60) and newline (0x0A). This provides some measure
420 utility in identifying archive files that have been corrupted.
421 .PP
422 The \s-1LLVM\s0 symbol table has the special name \*(L"#_LLVM_SYM_TAB_#\*(R". It is presumed
423 that no regular archive member file will want this name. The \s-1LLVM\s0 symbol table
424 is simply composed of a sequence of triplets: byte offset, length of symbol,
425 and the symbol itself. Symbols are not null or newline terminated. Here are
426 the details on each of these items:
427 .IP "offset \- vbr encoded 32\-bit integer" 4
428 .IX Item "offset - vbr encoded 32-bit integer"
429 The offset item provides the offset into the archive file where the bytecode
430 member is stored that is associated with the symbol. The offset value is 0
431 based at the start of the first \*(L"normal\*(R" file member. To derive the actual
432 file offset of the member, you must add the number of bytes occupied by the file
433 signature (8 bytes) and the symbol tables. The value of this item is encoded
434 using variable bit rate encoding to reduce the size of the symbol table.
435 Variable bit rate encoding uses the high bit (0x80) of each byte to indicate
436 if there are more bytes to follow. The remaining 7 bits in each byte carry bits
437 from the value. The final byte does not have the high bit set.
438 .IP "length \- vbr encoded 32\-bit integer" 4
439 .IX Item "length - vbr encoded 32-bit integer"
440 The length item provides the length of the symbol that follows. Like this
441 \&\fIoffset\fR item, the length is variable bit rate encoded.
442 .IP "symbol \- character array" 4
443 .IX Item "symbol - character array"
444 The symbol item provides the text of the symbol that is associated with the
445 \&\fIoffset\fR. The symbol is not terminated by any character. Its length is provided
446 by the \fIlength\fR field. Note that is allowed (but unwise) to use non-printing
447 characters (even 0x00) in the symbol. This allows for multiple encodings of
448 symbol names.
449 .SH "EXIT STATUS"
450 .IX Header "EXIT STATUS"
451 If \fBllvm-ar\fR succeeds, it will exit with 0. A usage error, results
452 in an exit code of 1. A hard (file system typically) error results in an
453 exit code of 2. Miscellaneous or unknown errors result in an
454 exit code of 3.
455 .SH "SEE ALSO"
456 .IX Header "SEE ALSO"
457 llvm-ranlib, \fIar\fR\|(1)
458 .SH "AUTHORS"
459 .IX Header "AUTHORS"
460 Maintained by the \s-1LLVM\s0 Team ().
0 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
1 .\"
2 .\" Standard preamble:
3 .\" ========================================================================
4 .de Sh \" Subsection heading
5 .br
6 .if t .Sp
7 .ne 5
8 .PP
9 \fB\\$1\fR
10 .PP
11 ..
12 .de Sp \" Vertical space (when we can't use .PP)
13 .if t .sp .5v
14 .if n .sp
15 ..
16 .de Vb \" Begin verbatim text
17 .ft CW
18 .nf
19 .ne \\$1
20 ..
21 .de Ve \" End verbatim text
22 .ft R
23 .fi
24 ..
25 .\" Set up some character translations and predefined strings. \*(-- will
26 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
27 .\" double quote, and \*(R" will give a right double quote. | will give a
28 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
29 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
30 .\" expand to `' in nroff, nothing in troff, for use with C<>.
31 .tr \(*W-|\(bv\*(Tr
32 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
33 .ie n \{\
34 . ds -- \(*W-
35 . ds PI pi
36 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
37 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
38 . ds L" ""
39 . ds R" ""
40 . ds C` ""
41 . ds C' ""
42 'br\}
43 .el\{\
44 . ds -- \|\(em\|
45 . ds PI \(*p
46 . ds L" ``
47 . ds R" ''
48 'br\}
49 .\"
50 .\" If the F register is turned on, we'll generate index entries on stderr for
51 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
52 .\" entries marked with X<> in POD. Of course, you'll have to process the
53 .\" output yourself in some meaningful fashion.
54 .if \nF \{\
55 . de IX
56 . tm Index:\\$1\t\\n%\t"\\$2"
57 ..
58 . nr % 0
59 . rr F
60 .\}
61 .\"
62 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
63 .\" way too many mistakes in technical documents.
64 .hy 0
65 .if n .na
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear. Run. Save yourself. No user-serviceable parts.
69 . \" fudge factors for nroff and troff
70 .if n \{\
71 . ds #H 0
72 . ds #V .8m
73 . ds #F .3m
74 . ds #[ \f1
75 . ds #] \fP
76 .\}
77 .if t \{\
78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 . ds #V .6m
80 . ds #F 0
81 . ds #[ \&
82 . ds #] \&
83 .\}
84 . \" simple accents for nroff and troff
85 .if n \{\
86 . ds ' \&
87 . ds ` \&
88 . ds ^ \&
89 . ds , \&
90 . ds ~ ~
91 . ds /
92 .\}
93 .if t \{\
94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
99 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
100 .\}
101 . \" troff and (daisy-wheel) nroff accents
102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
109 .ds ae a\h'-(\w'a'u*4/10)'e
110 .ds Ae A\h'-(\w'A'u*4/10)'E
111 . \" corrections for vroff
112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
114 . \" for low resolution devices (crt and lpr)
115 .if \n(.H>23 .if \n(.V>19 \
116 \{\
117 . ds : e
118 . ds 8 ss
119 . ds o a
120 . ds d- d\h'-1'\(ga
121 . ds D- D\h'-1'\(hy
122 . ds th \o'bp'
123 . ds Th \o'LP'
124 . ds ae ae
125 . ds Ae AE
126 .\}
127 .rm #[ #] #H #V #F C
128 .\" ========================================================================
129 .\"
130 .IX Title "LLVM-AS 1"
131 .TH LLVM-AS 1 "2006-03-13" "CVS" "LLVM Command Guide"
132 .SH "NAME"
133 llvm\-as \- LLVM assembler
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 \&\fBllvm-as\fR [\fIoptions\fR] [\fIfilename\fR]
137 .SH "DESCRIPTION"
138 .IX Header "DESCRIPTION"
139 \&\fBllvm-as\fR is the \s-1LLVM\s0 assembler. It reads a file containing human-readable
140 \&\s-1LLVM\s0 assembly language, translates it to \s-1LLVM\s0 bytecode, and writes the result
141 into a file or to standard output.
142 .PP
143 If \fIfilename\fR is omitted or is \f(CW\*(C`\-\*(C'\fR, then \fBllvm-as\fR reads its input from
144 standard input.
145 .PP
146 If an output file is not specified with the \fB\-o\fR option, then
147 \&\fBllvm-as\fR sends its output to a file or standard output by following
148 these rules:
149 .IP "\(bu" 4
150 If the input is standard input, then the output is standard output.
151 .IP "\(bu" 4
152 If the input is a file that ends with \f(CW\*(C`.ll\*(C'\fR, then the output file is of
153 the same name, except that the suffix is changed to \f(CW\*(C`.bc\*(C'\fR.
154 .IP "\(bu" 4
155 If the input is a file that does not end with the \f(CW\*(C`.ll\*(C'\fR suffix, then the
156 output file has the same name as the input file, except that the \f(CW\*(C`.bc\*(C'\fR
157 suffix is appended.
158 .SH "OPTIONS"
159 .IX Header "OPTIONS"
160 .IP "\fB\-f\fR" 4
161 .IX Item "-f"
162 Force overwrite. Normally, \fBllvm-as\fR will refuse to overwrite an
163 output file that already exists. With this option, \fBllvm-as\fR
164 will overwrite the output file and replace it with new bytecode.
165 .IP "\fB\-\-help\fR" 4
166 .IX Item "--help"
167 Print a summary of command line options.
168 .IP "\fB\-o\fR \fIfilename\fR" 4
169 .IX Item "-o filename"
170 Specify the output file name. If \fIfilename\fR is \f(CW\*(C`\-\*(C'\fR, then \fBllvm-as\fR
171 sends its output to standard output.
172 .SH "EXIT STATUS"
173 .IX Header "EXIT STATUS"
174 If \fBllvm-as\fR succeeds, it will exit with 0. Otherwise, if an error
175 occurs, it will exit with a non-zero value.
176 .SH "SEE ALSO"
177 .IX Header "SEE ALSO"
178 llvm-dis, gccas
179 .SH "AUTHORS"
180 .IX Header "AUTHORS"
181 Maintained by the \s-1LLVM\s0 Team ().
0 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
1 .\"
2 .\" Standard preamble:
3 .\" ========================================================================
4 .de Sh \" Subsection heading
5 .br
6 .if t .Sp
7 .ne 5
8 .PP
9 \fB\\$1\fR
10 .PP
11 ..
12 .de Sp \" Vertical space (when we can't use .PP)
13 .if t .sp .5v
14 .if n .sp
15 ..
16 .de Vb \" Begin verbatim text
17 .ft CW
18 .nf
19 .ne \\$1
20 ..
21 .de Ve \" End verbatim text
22 .ft R
23 .fi
24 ..
25 .\" Set up some character translations and predefined strings. \*(-- will
26 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
27 .\" double quote, and \*(R" will give a right double quote. | will give a
28 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
29 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
30 .\" expand to `' in nroff, nothing in troff, for use with C<>.
31 .tr \(*W-|\(bv\*(Tr
32 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
33 .ie n \{\
34 . ds -- \(*W-
35 . ds PI pi
36 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
37 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
38 . ds L" ""
39 . ds R" ""
40 . ds C` ""
41 . ds C' ""
42 'br\}
43 .el\{\
44 . ds -- \|\(em\|
45 . ds PI \(*p
46 . ds L" ``
47 . ds R" ''
48 'br\}
49 .\"
50 .\" If the F register is turned on, we'll generate index entries on stderr for
51 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
52 .\" entries marked with X<> in POD. Of course, you'll have to process the
53 .\" output yourself in some meaningful fashion.
54 .if \nF \{\
55 . de IX
56 . tm Index:\\$1\t\\n%\t"\\$2"
57 ..
58 . nr % 0
59 . rr F
60 .\}
61 .\"
62 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
63 .\" way too many mistakes in technical documents.
64 .hy 0
65 .if n .na
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear. Run. Save yourself. No user-serviceable parts.
69 . \" fudge factors for nroff and troff
70 .if n \{\
71 . ds #H 0
72 . ds #V .8m
73 . ds #F .3m
74 . ds #[ \f1
75 . ds #] \fP
76 .\}
77 .if t \{\
78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 . ds #V .6m
80 . ds #F 0
81 . ds #[ \&
82 . ds #] \&
83 .\}
84 . \" simple accents for nroff and troff
85 .if n \{\
86 . ds ' \&
87 . ds ` \&
88 . ds ^ \&
89 . ds , \&
90 . ds ~ ~
91 . ds /
92 .\}
93 .if t \{\
94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
99 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
100 .\}
101 . \" troff and (daisy-wheel) nroff accents
102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
109 .ds ae a\h'-(\w'a'u*4/10)'e
110 .ds Ae A\h'-(\w'A'u*4/10)'E
111 . \" corrections for vroff
112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
114 . \" for low resolution devices (crt and lpr)
115 .if \n(.H>23 .if \n(.V>19 \
116 \{\
117 . ds : e
118 . ds 8 ss
119 . ds o a
120 . ds d- d\h'-1'\(ga
121 . ds D- D\h'-1'\(hy
122 . ds th \o'bp'
123 . ds Th \o'LP'
124 . ds ae ae
125 . ds Ae AE
126 .\}
127 .rm #[ #] #H #V #F C
128 .\" ========================================================================
129 .\"
130 .IX Title "LLVM-BCANALYZER 1"
131 .TH LLVM-BCANALYZER 1 "2006-03-13" "CVS" "LLVM Command Guide"
132 .SH "NAME"
133 llvm\-bcanalyzer \- LLVM bytecode analyzer
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 \&\fBllvm-bcanalyzer\fR [\fIoptions\fR] [\fIfilename\fR]
137 .SH "DESCRIPTION"
138 .IX Header "DESCRIPTION"
139 The \fBllvm-bcanalyzer\fR command is a small utility for analyzing bytecode files.
140 The tool reads a bytecode file (such as generated with the \fBllvm-as\fR tool) and
141 produces a statistical report on the contents of the byteocde file. The tool
142 can also dump a low level but human readable version of the bytecode file.
143 This tool is probably not of much interest or utility except for those working
144 directly with the bytecode file format. Most \s-1LLVM\s0 users can just ignore
145 this tool.
146 .PP
147 If \fIfilename\fR is omitted or is \f(CW\*(C`\-\*(C'\fR, then \fBllvm-bcanalyzer\fR reads its input
148 from standard input. This is useful for combining the tool into a pipeline.
149 Output is written to the standard output.
150 .SH "OPTIONS"
151 .IX Header "OPTIONS"
152 .IP "\fB\-nodetails\fR" 4
153 .IX Item "-nodetails"
154 Causes \fBllvm-bcanalyzer\fR to abbreviate its output by writing out only a module
155 level summary. The details for individual functions are not displayed.
156 .IP "\fB\-dump\fR" 4
157 .IX Item "-dump"
158 Causes \fBllvm-bcanalyzer\fR to dump the bytecode in a human readable format. This
159 format is significantly different from \s-1LLVM\s0 assembly and provides details about
160 the encoding of the bytecode file.
161 .IP "\fB\-verify\fR" 4
162 .IX Item "-verify"
163 Causes \fBllvm-bcanalyzer\fR to verify the module produced by reading the
164 bytecode. This ensures that the statistics generated are based on a consistent
165 module.
166 .IP "\fB\-\-help\fR" 4
167 .IX Item "--help"
168 Print a summary of command line options.
169 .SH "EXIT STATUS"
170 .IX Header "EXIT STATUS"
171 If \fBllvm-bcanalyzer\fR succeeds, it will exit with 0. Otherwise, if an error
172 occurs, it will exit with a non-zero value, usually 1.
173 .SH "SUMMARY OUTPUT DEFINITIONS"
174 .IX Header "SUMMARY OUTPUT DEFINITIONS"
175 The following items are always printed by llvm\-bcanalyzer. They comprize the
176 summary output.
177 .IP "\fBBytecode Analysis Of Module\fR" 4
178 .IX Item "Bytecode Analysis Of Module"
179 This just provides the name of the module for which bytecode analysis is being
180 generated.
181 .IP "\fBBytecode Version Number\fR" 4
182 .IX Item "Bytecode Version Number"
183 The bytecode version (not \s-1LLVM\s0 version) of the file read by the analyzer.
184 .IP "\fBFile Size\fR" 4
185 .IX Item "File Size"
186 The size, in bytes, of the entire bytecode file.
187 .IP "\fBModule Bytes\fR" 4
188 .IX Item "Module Bytes"
189 The size, in bytes, of the module block. Percentage is relative to File Size.
190 .IP "\fBFunction Bytes\fR" 4
191 .IX Item "Function Bytes"
192 The size, in bytes, of all the function blocks. Percentage is relative to File
193 Size.
194 .IP "\fBGlobal Types Bytes\fR" 4
195 .IX Item "Global Types Bytes"
196 The size, in bytes, of the Global Types Pool. Percentage is relative to File
197 Size. This is the size of the definitions of all types in the bytecode file.
198 .IP "\fBConstant Pool Bytes\fR" 4
199 .IX Item "Constant Pool Bytes"
200 The size, in bytes, of the Constant Pool Blocks Percentage is relative to File
201 Size.
202 .IP "\fBModule Globals Bytes\fR" 4
203 .IX Item "Module Globals Bytes"
204 Ths size, in bytes, of the Global Variable Definitions and their initializers.
205 Percentage is relative to File Size.
206 .IP "\fBInstruction List Bytes\fR" 4
207 .IX Item "Instruction List Bytes"
208 The size, in bytes, of all the instruction lists in all the functions.
209 Percentage is relative to File Size. Note that this value is also included in
210 the Function Bytes.
211 .IP "\fBCompaction Table Bytes\fR" 4
212 .IX Item "Compaction Table Bytes"
213 The size, in bytes, of all the compaction tables in all the functions.
214 Percentage is relative to File Size. Note that this value is also included in
215 the Function Bytes.
216 .IP "\fBSymbol Table Bytes\fR" 4
217 .IX Item "Symbol Table Bytes"
218 The size, in bytes, of all the symbol tables in all the functions. Percentage is
219 relative to File Size. Note that this value is also included in the Function
220 Bytes.
221 .IP "\fBDependent Libraries Bytes\fR" 4
222 .IX Item "Dependent Libraries Bytes"
223 The size, in bytes, of the list of dependent libraries in the module. Percentage
224 is relative to File Size. Note that this value is also included in the Module
225 Global Bytes.
226 .IP "\fBNumber Of Bytecode Blocks\fR" 4
227 .IX Item "Number Of Bytecode Blocks"
228 The total number of blocks of any kind in the bytecode file.
229 .IP "\fBNumber Of Functions\fR" 4
230 .IX Item "Number Of Functions"
231 The total number of function definitions in the bytecode file.
232 .IP "\fBNumber Of Types\fR" 4
233 .IX Item "Number Of Types"
234 The total number of types defined in the Global Types Pool.
235 .IP "\fBNumber Of Constants\fR" 4
236 .IX Item "Number Of Constants"
237 The total number of constants (of any type) defined in the Constant Pool.
238 .IP "\fBNumber Of Basic Blocks\fR" 4
239 .IX Item "Number Of Basic Blocks"
240 The total number of basic blocks defined in all functions in the bytecode file.
241 .IP "\fBNumber Of Instructions\fR" 4
242 .IX Item "Number Of Instructions"
243 The total number of instructions defined in all functions in the bytecode file.
244 .IP "\fBNumber Of Long Instructions\fR" 4
245 .IX Item "Number Of Long Instructions"
246 The total number of long instructions defined in all functions in the bytecode
247 file. Long instructions are those taking greater than 4 bytes. Typically long
248 instructions are GetElementPtr with several indices, \s-1PHI\s0 nodes, and calls to
249 functions with large numbers of arguments.
250 .IP "\fBNumber Of Operands\fR" 4
251 .IX Item "Number Of Operands"
252 The total number of operands used in all instructions in the bytecode file.
253 .IP "\fBNumber Of Compaction Tables\fR" 4
254 .IX Item "Number Of Compaction Tables"
255 The total number of compaction tables in all functions in the bytecode file.
256 .IP "\fBNumber Of Symbol Tables\fR" 4
257 .IX Item "Number Of Symbol Tables"
258 The total number of symbol tables in all functions in the bytecode file.
259 .IP "\fBNumber Of Dependent Libs\fR" 4
260 .IX Item "Number Of Dependent Libs"
261 The total number of dependent libraries found in the bytecode file.
262 .IP "\fBTotal Instruction Size\fR" 4
263 .IX Item "Total Instruction Size"
264 The total size of the instructions in all functions in the bytecode file.
265 .IP "\fBAverage Instruction Size\fR" 4
266 .IX Item "Average Instruction Size"
267 The average number of bytes per instruction across all functions in the bytecode
268 file. This value is computed by dividing Total Instruction Size by Number Of
269 Instructions.
270 .IP "\fBMaximum Type Slot Number\fR" 4
271 .IX Item "Maximum Type Slot Number"
272 The maximum value used for a type's slot number. Larger slot number values take
273 more bytes to encode.
274 .IP "\fBMaximum Value Slot Number\fR" 4
275 .IX Item "Maximum Value Slot Number"
276 The maximum value used for a value's slot number. Larger slot number values take
277 more bytes to encode.
278 .IP "\fBBytes Per Value\fR" 4
279 .IX Item "Bytes Per Value"
280 The average size of a Value definition (of any type). This is computed by
281 dividing File Size by the total number of values of any type.
282 .IP "\fBBytes Per Global\fR" 4
283 .IX Item "Bytes Per Global"
284 The average size of a global definition (constants and global variables).
285 .IP "\fBBytes Per Function\fR" 4
286 .IX Item "Bytes Per Function"
287 The average number of bytes per function definition. This is computed by
288 dividing Function Bytes by Number Of Functions.
289 .IP "\fB# of \s-1VBR\s0 32\-bit Integers\fR" 4
290 .IX Item "# of VBR 32-bit Integers"
291 The total number of 32\-bit integers encoded using the Variable Bit Rate
292 encoding scheme.
293 .IP "\fB# of \s-1VBR\s0 64\-bit Integers\fR" 4
294 .IX Item "# of VBR 64-bit Integers"
295 The total number of 64\-bit integers encoded using the Variable Bit Rate encoding
296 scheme.
297 .IP "\fB# of \s-1VBR\s0 Compressed Bytes\fR" 4
298 .IX Item "# of VBR Compressed Bytes"
299 The total number of bytes consumed by the 32\-bit and 64\-bit integers that use
300 the Variable Bit Rate encoding scheme.
301 .IP "\fB# of \s-1VBR\s0 Expanded Bytes\fR" 4
302 .IX Item "# of VBR Expanded Bytes"
303 The total number of bytes that would have been consumed by the 32\-bit and 64\-bit
304 integers had they not been compressed with the Variable Bit Rage encoding
305 scheme.
306 .IP "\fBBytes Saved With \s-1VBR\s0\fR" 4
307 .IX Item "Bytes Saved With VBR"
308 The total number of bytes saved by using the Variable Bit Rate encoding scheme.
309 The percentage is relative to # of \s-1VBR\s0 Expanded Bytes.
310 .SH "DETAILED OUTPUT DEFINITIONS"
311 .IX Header "DETAILED OUTPUT DEFINITIONS"
312 The following definitions occur only if the \-nodetails option was not given.
313 The detailed output provides additional information on a per-function basis.
314 .IP "\fBType\fR" 4
315 .IX Item "Type"
316 The type signature of the function.
317 .IP "\fBByte Size\fR" 4
318 .IX Item "Byte Size"
319 The total number of bytes in the function's block.
320 .IP "\fBBasic Blocks\fR" 4
321 .IX Item "Basic Blocks"
322 The number of basic blocks defined by the function.
323 .IP "\fBInstructions\fR" 4
324 .IX Item "Instructions"
325 The number of instructions defined by the function.
326 .IP "\fBLong Instructions\fR" 4
327 .IX Item "Long Instructions"
328 The number of instructions using the long instruction format in the function.
329 .IP "\fBOperands\fR" 4
330 .IX Item "Operands"
331 The number of operands used by all instructions in the function.
332 .IP "\fBInstruction Size\fR" 4
333 .IX Item "Instruction Size"
334 The number of bytes consumed by instructions in the function.
335 .IP "\fBAverage Instruction Size\fR" 4
336 .IX Item "Average Instruction Size"
337 The average number of bytes consumed by the instructions in the funtion. This
338 value is computed by dividing Instruction Size by Instructions.
339 .IP "\fBBytes Per Instruction\fR" 4
340 .IX Item "Bytes Per Instruction"
341 The average number of bytes used by the function per instruction. This value is
342 computed by dividing Byte Size by Instructions. Note that this is not the same
343 as Average Instruction Size. It computes a number relative to the total function
344 size not just the size of the instruction list.
345 .IP "\fBNumber of \s-1VBR\s0 32\-bit Integers\fR" 4
346 .IX Item "Number of VBR 32-bit Integers"
347 The total number of 32\-bit integers found in this function (for any use).
348 .IP "\fBNumber of \s-1VBR\s0 64\-bit Integers\fR" 4
349 .IX Item "Number of VBR 64-bit Integers"
350 The total number of 64\-bit integers found in this function (for any use).
351 .IP "\fBNumber of \s-1VBR\s0 Compressed Bytes\fR" 4
352 .IX Item "Number of VBR Compressed Bytes"
353 The total number of bytes in this function consumed by the 32\-bit and 64\-bit
354 integers that use the Variable Bit Rate encoding scheme.
355 .IP "\fBNumber of \s-1VBR\s0 Expanded Bytes\fR" 4
356 .IX Item "Number of VBR Expanded Bytes"
357 The total number of bytes in this function that would have been consumed by
358 the 32\-bit and 64\-bit integers had they not been compressed with the Variable
359 Bit Rate encoding scheme.
360 .IP "\fBBytes Saved With \s-1VBR\s0\fR" 4
361 .IX Item "Bytes Saved With VBR"
362 The total number of bytes saved in this function by using the Variable Bit
363 Rate encoding scheme. The percentage is relative to # of \s-1VBR\s0 Expanded Bytes.
364 .SH "SEE ALSO"
365 .IX Header "SEE ALSO"
366 llvm-dis,
367 .SH "AUTHORS"
368 .IX Header "AUTHORS"
369 Maintained by the \s-1LLVM\s0 Team ().
0 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
1 .\"
2 .\" Standard preamble:
3 .\" ========================================================================
4 .de Sh \" Subsection heading
5 .br
6 .if t .Sp
7 .ne 5
8 .PP
9 \fB\\$1\fR
10 .PP
11 ..
12 .de Sp \" Vertical space (when we can't use .PP)
13 .if t .sp .5v
14 .if n .sp
15 ..
16 .de Vb \" Begin verbatim text
17 .ft CW
18 .nf
19 .ne \\$1
20 ..
21 .de Ve \" End verbatim text
22 .ft R
23 .fi
24 ..
25 .\" Set up some character translations and predefined strings. \*(-- will
26 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
27 .\" double quote, and \*(R" will give a right double quote. | will give a
28 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
29 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
30 .\" expand to `' in nroff, nothing in troff, for use with C<>.
31 .tr \(*W-|\(bv\*(Tr
32 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
33 .ie n \{\
34 . ds -- \(*W-
35 . ds PI pi
36 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
37 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
38 . ds L" ""
39 . ds R" ""
40 . ds C` ""
41 . ds C' ""
42 'br\}
43 .el\{\
44 . ds -- \|\(em\|
45 . ds PI \(*p
46 . ds L" ``
47 . ds R" ''
48 'br\}
49 .\"
50 .\" If the F register is turned on, we'll generate index entries on stderr for
51 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
52 .\" entries marked with X<> in POD. Of course, you'll have to process the
53 .\" output yourself in some meaningful fashion.
54 .if \nF \{\
55 . de IX
56 . tm Index:\\$1\t\\n%\t"\\$2"
57 ..
58 . nr % 0
59 . rr F
60 .\}
61 .\"
62 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
63 .\" way too many mistakes in technical documents.
64 .hy 0
65 .if n .na
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear. Run. Save yourself. No user-serviceable parts.
69 . \" fudge factors for nroff and troff
70 .if n \{\
71 . ds #H 0
72 . ds #V .8m
73 . ds #F .3m
74 . ds #[ \f1
75 . ds #] \fP
76 .\}
77 .if t \{\
78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 . ds #V .6m
80 . ds #F 0
81 . ds #[ \&
82 . ds #] \&
83 .\}
84 . \" simple accents for nroff and troff
85 .if n \{\
86 . ds ' \&
87 . ds ` \&
88 . ds ^ \&
89 . ds , \&
90 . ds ~ ~
91 . ds /
92 .\}
93 .if t \{\
94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
99 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
100 .\}
101 . \" troff and (daisy-wheel) nroff accents
102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
109 .ds ae a\h'-(\w'a'u*4/10)'e
110 .ds Ae A\h'-(\w'A'u*4/10)'E
111 . \" corrections for vroff
112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
114 . \" for low resolution devices (crt and lpr)
115 .if \n(.H>23 .if \n(.V>19 \
116 \{\
117 . ds : e
118 . ds 8 ss
119 . ds o a
120 . ds d- d\h'-1'\(ga
121 . ds D- D\h'-1'\(hy
122 . ds th \o'bp'
123 . ds Th \o'LP'
124 . ds ae ae
125 . ds Ae AE
126 .\}
127 .rm #[ #] #H #V #F C
128 .\" ========================================================================
129 .\"
130 .IX Title "LLVM-CONFIG 1"
131 .TH LLVM-CONFIG 1 "2006-08-01" "CVS" "LLVM Command Guide"
132 .SH "NAME"
133 llvm\-config \- Print LLVM compilation options
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 \&\fBllvm-config\fR \fIoption\fR [\fIcomponents\fR...]
137 .SH "DESCRIPTION"
138 .IX Header "DESCRIPTION"
139 \&\fBllvm-config\fR makes it easier to build applications that use \s-1LLVM\s0. It can
140 print the compiler flags, linker flags and object libraries needed to link
141 against \s-1LLVM\s0.
142 .SH "EXAMPLES"
143 .IX Header "EXAMPLES"
144 To link against the \s-1JIT:\s0
145 .PP
146 .Vb 3
147 \& g++ `llvm-config --cxxflags` -o HowToUseJIT.o -c HowToUseJIT.cpp
148 \& g++ `llvm-config --ldflags` -o HowToUseJIT HowToUseJIT.o \e
149 \& `llvm-config --libs engine bcreader scalaropts`
150 .Ve
151 .SH "OPTIONS"
152 .IX Header "OPTIONS"
153 .IP "\fB\-\-version\fR" 4
154 .IX Item "--version"
155 Print the version number of \s-1LLVM\s0.
156 .IP "\fB\-\-help\fR" 4
157 .IX Item "--help"
158 Print a summary of \fBllvm-config\fR arguments.
159 .IP "\fB\-\-prefix\fR" 4
160 .IX Item "--prefix"
161 Print the installation prefix for \s-1LLVM\s0.
162 .IP "\fB\-\-src\-root\fR" 4
163 .IX Item "--src-root"
164 Print the source root from which \s-1LLVM\s0 was built.
165 .IP "\fB\-\-obj\-root\fR" 4
166 .IX Item "--obj-root"
167 Print the object root used to build \s-1LLVM\s0.
168 .IP "\fB\-\-bindir\fR" 4
169 .IX Item "--bindir"
170 Print the installation directory for \s-1LLVM\s0 binaries.
171 .IP "\fB\-\-includedir\fR" 4
172 .IX Item "--includedir"
173 Print the installation directory for \s-1LLVM\s0 headers.
174 .IP "\fB\-\-libdir\fR" 4
175 .IX Item "--libdir"
176 Print the installation directory for \s-1LLVM\s0 libraries.
177 .IP "\fB\-\-cxxflags\fR" 4
178 .IX Item "--cxxflags"
179 Print the \*(C+ compiler flags needed to use \s-1LLVM\s0 headers.
180 .IP "\fB\-\-ldflags\fR" 4
181 .IX Item "--ldflags"
182 Print the flags needed to link against \s-1LLVM\s0 libraries.
183 .IP "\fB\-\-libs\fR" 4
184 .IX Item "--libs"
185 Print all the libraries needed to link against the specified \s-1LLVM\s0
186 \&\fIcomponents\fR, including any dependencies.
187 .IP "\fB\-\-libnames\fR" 4
188 .IX Item "--libnames"
189 Similar to \fB\-\-libs\fR, but prints the bare filenames of the libraries
190 without \fB\-l\fR or pathnames. Useful for linking against a not-yet-installed
191 copy of \s-1LLVM\s0.
192 .IP "\fB\-\-libfiles\fR" 4
193 .IX Item "--libfiles"
194 Similar to \fB\-\-libs\fR, but print the full path to each library file. This is
195 useful when creating makefile dependencies, to ensure that a tool is relinked if
196 any library it uses changes.
197 .IP "\fB\-\-components\fR" 4
198 .IX Item "--components"
199 Print all valid component names.
200 .IP "\fB\-\-targets\-built\fR" 4
201 .IX Item "--targets-built"
202 Print the component names for all targets supported by this copy of \s-1LLVM\s0.
203 .IP "\fB\-\-build\-mode\fR" 4
204 .IX Item "--build-mode"
205 Print the build mode used when \s-1LLVM\s0 was built (e.g. Debug or Release)
206 .SH "COMPONENTS"
207 .IX Header "COMPONENTS"
208 To print a list of all available components, run \fBllvm-config
209 \&\-\-components\fR. In most cases, components correspond directly to \s-1LLVM\s0
210 libraries. Useful \*(L"virtual\*(R" components include:
211 .IP "\fBall\fR" 4
212 .IX Item "all"
213 Includes all \s-1LLVM\s0 libaries. The default if no components are specified.
214 .IP "\fBbackend\fR" 4
215 .IX Item "backend"
216 Includes either a native backend or the C backend.
217 .IP "\fBengine\fR" 4
218 .IX Item "engine"
219 Includes either a native \s-1JIT\s0 or the bytecode interpreter.
220 .SH "EXIT STATUS"
221 .IX Header "EXIT STATUS"
222 If \fBllvm-config\fR succeeds, it will exit with 0. Otherwise, if an error
223 occurs, it will exit with a non-zero value.
224 .SH "AUTHORS"
225 .IX Header "AUTHORS"
226 Maintained by the \s-1LLVM\s0 Team ().
0 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
1 .\"
2 .\" Standard preamble:
3 .\" ========================================================================
4 .de Sh \" Subsection heading
5 .br
6 .if t .Sp
7 .ne 5
8 .PP
9 \fB\\$1\fR
10 .PP
11 ..
12 .de Sp \" Vertical space (when we can't use .PP)
13 .if t .sp .5v
14 .if n .sp
15 ..
16 .de Vb \" Begin verbatim text
17 .ft CW
18 .nf
19 .ne \\$1
20 ..
21 .de Ve \" End verbatim text
22 .ft R
23 .fi
24 ..
25 .\" Set up some character translations and predefined strings. \*(-- will
26 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
27 .\" double quote, and \*(R" will give a right double quote. | will give a
28 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
29 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
30 .\" expand to `' in nroff, nothing in troff, for use with C<>.
31 .tr \(*W-|\(bv\*(Tr
32 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
33 .ie n \{\
34 . ds -- \(*W-
35 . ds PI pi
36 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
37 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
38 . ds L" ""
39 . ds R" ""
40 . ds C` ""
41 . ds C' ""
42 'br\}
43 .el\{\
44 . ds -- \|\(em\|
45 . ds PI \(*p
46 . ds L" ``
47 . ds R" ''
48 'br\}
49 .\"
50 .\" If the F register is turned on, we'll generate index entries on stderr for
51 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
52 .\" entries marked with X<> in POD. Of course, you'll have to process the
53 .\" output yourself in some meaningful fashion.
54 .if \nF \{\
55 . de IX
56 . tm Index:\\$1\t\\n%\t"\\$2"
57 ..
58 . nr % 0
59 . rr F
60 .\}
61 .\"
62 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
63 .\" way too many mistakes in technical documents.
64 .hy 0
65 .if n .na
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear. Run. Save yourself. No user-serviceable parts.
69 . \" fudge factors for nroff and troff
70 .if n \{\
71 . ds #H 0
72 . ds #V .8m
73 . ds #F .3m
74 . ds #[ \f1
75 . ds #] \fP
76 .\}
77 .if t \{\
78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 . ds #V .6m
80 . ds #F 0
81 . ds #[ \&
82 . ds #] \&
83 .\}
84 . \" simple accents for nroff and troff
85 .if n \{\
86 . ds ' \&
87 . ds ` \&
88 . ds ^ \&
89 . ds , \&
90 . ds ~ ~
91 . ds /
92 .\}
93 .if t \{\
94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
99 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
100 .\}
101 . \" troff and (daisy-wheel) nroff accents
102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
109 .ds ae a\h'-(\w'a'u*4/10)'e
110 .ds Ae A\h'-(\w'A'u*4/10)'E
111 . \" corrections for vroff
112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
114 . \" for low resolution devices (crt and lpr)
115 .if \n(.H>23 .if \n(.V>19 \
116 \{\
117 . ds : e
118 . ds 8 ss
119 . ds o a
120 . ds d- d\h'-1'\(ga
121 . ds D- D\h'-1'\(hy
122 . ds th \o'bp'
123 . ds Th \o'LP'
124 . ds ae ae
125 . ds Ae AE
126 .\}
127 .rm #[ #] #H #V #F C
128 .\" ========================================================================
129 .\"
130 .IX Title "LLVM-DB 1"
131 .TH LLVM-DB 1 "2006-03-13" "CVS" "LLVM Command Guide"
132 .SH "NAME"
133 llvm\-db \- LLVM debugger (alpha)
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 Details coming soon. Please see
137 in the meantime.
138 .SH "AUTHORS"
139 .IX Header "AUTHORS"
140 Maintained by the \s-1LLVM\s0 Team ().
0 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
1 .\"
2 .\" Standard preamble:
3 .\" ========================================================================
4 .de Sh \" Subsection heading
5 .br
6 .if t .Sp
7 .ne 5
8 .PP
9 \fB\\$1\fR
10 .PP
11 ..
12 .de Sp \" Vertical space (when we can't use .PP)
13 .if t .sp .5v
14 .if n .sp
15 ..
16 .de Vb \" Begin verbatim text
17 .ft CW
18 .nf
19 .ne \\$1
20 ..
21 .de Ve \" End verbatim text
22 .ft R
23 .fi
24 ..
25 .\" Set up some character translations and predefined strings. \*(-- will
26 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
27 .\" double quote, and \*(R" will give a right double quote. | will give a
28 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
29 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
30 .\" expand to `' in nroff, nothing in troff, for use with C<>.
31 .tr \(*W-|\(bv\*(Tr
32 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
33 .ie n \{\
34 . ds -- \(*W-
35 . ds PI pi
36 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
37 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
38 . ds L" ""
39 . ds R" ""
40 . ds C` ""
41 . ds C' ""
42 'br\}
43 .el\{\
44 . ds -- \|\(em\|
45 . ds PI \(*p
46 . ds L" ``
47 . ds R" ''
48 'br\}
49 .\"
50 .\" If the F register is turned on, we'll generate index entries on stderr for
51 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
52 .\" entries marked with X<> in POD. Of course, you'll have to process the
53 .\" output yourself in some meaningful fashion.
54 .if \nF \{\
55 . de IX
56 . tm Index:\\$1\t\\n%\t"\\$2"
57 ..
58 . nr % 0
59 . rr F
60 .\}
61 .\"
62 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
63 .\" way too many mistakes in technical documents.
64 .hy 0
65 .if n .na
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear. Run. Save yourself. No user-serviceable parts.
69 . \" fudge factors for nroff and troff
70 .if n \{\
71 . ds #H 0
72 . ds #V .8m
73 . ds #F .3m
74 . ds #[ \f1
75 . ds #] \fP
76 .\}
77 .if t \{\
78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 . ds #V .6m
80 . ds #F 0
81 . ds #[ \&
82 . ds #] \&
83 .\}
84 . \" simple accents for nroff and troff
85 .if n \{\
86 . ds ' \&
87 . ds ` \&
88 . ds ^ \&
89 . ds , \&
90 . ds ~ ~
91 . ds /
92 .\}
93 .if t \{\
94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
99 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
100 .\}
101 . \" troff and (daisy-wheel) nroff accents
102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
109 .ds ae a\h'-(\w'a'u*4/10)'e
110 .ds Ae A\h'-(\w'A'u*4/10)'E
111 . \" corrections for vroff
112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
114 . \" for low resolution devices (crt and lpr)
115 .if \n(.H>23 .if \n(.V>19 \
116 \{\
117 . ds : e
118 . ds 8 ss
119 . ds o a
120 . ds d- d\h'-1'\(ga
121 . ds D- D\h'-1'\(hy
122 . ds th \o'bp'
123 . ds Th \o'LP'
124 . ds ae ae
125 . ds Ae AE
126 .\}
127 .rm #[ #] #H #V #F C
128 .\" ========================================================================
129 .\"
130 .IX Title "LLVM-DIS 1"
131 .TH LLVM-DIS 1 "2006-03-13" "CVS" "LLVM Command Guide"
132 .SH "NAME"
133 llvm\-dis \- LLVM disassembler
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 \&\fBllvm-dis\fR [\fIoptions\fR] [\fIfilename\fR]
137 .SH "DESCRIPTION"
138 .IX Header "DESCRIPTION"
139 The \fBllvm-dis\fR command is the \s-1LLVM\s0 disassembler. It takes an \s-1LLVM\s0
140 bytecode file and converts it into human-readable \s-1LLVM\s0 assembly language.
141 .PP
142 If filename is omitted or specified as \f(CW\*(C`\-\*(C'\fR, \fBllvm-dis\fR reads its
143 input from standard input.
144 .PP
145 If the input is being read from standard input, then \fBllvm-dis\fR
146 will send its output to standard output by default. Otherwise, the
147 output will be written to a file named after the input file, with
148 a \f(CW\*(C`.ll\*(C'\fR suffix added (any existing \f(CW\*(C`.bc\*(C'\fR suffix will first be
149 removed). You can override the choice of output file using the
150 \&\fB\-o\fR option.
151 .SH "OPTIONS"
152 .IX Header "OPTIONS"
153 .IP "\fB\-f\fR" 4
154 .IX Item "-f"
155 Force overwrite. Normally, \fBllvm-dis\fR will refuse to overwrite
156 an output file that already exists. With this option, \fBllvm-dis\fR
157 will overwrite the output file.
158 .IP "\fB\-\-help\fR" 4
159 .IX Item "--help"
160 Print a summary of command line options.
161 .IP "\fB\-o\fR \fIfilename\fR" 4
162 .IX Item "-o filename"
163 Specify the output file name. If \fIfilename\fR is \-, then the output is sent
164 to standard output.
165 .SH "EXIT STATUS"
166 .IX Header "EXIT STATUS"
167 If \fBllvm-dis\fR succeeds, it will exit with 0. Otherwise, if an error
168 occurs, it will exit with a non-zero value.
169 .SH "SEE ALSO"
170 .IX Header "SEE ALSO"
171 llvm-as
172 .SH "AUTHORS"
173 .IX Header "AUTHORS"
174 Maintained by the \s-1LLVM\s0 Team ().
0 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
1 .\"
2 .\" Standard preamble:
3 .\" ========================================================================
4 .de Sh \" Subsection heading
5 .br
6 .if t .Sp
7 .ne 5
8 .PP
9 \fB\\$1\fR
10 .PP
11 ..
12 .de Sp \" Vertical space (when we can't use .PP)
13 .if t .sp .5v
14 .if n .sp
15 ..
16 .de Vb \" Begin verbatim text
17 .ft CW
18 .nf
19 .ne \\$1
20 ..
21 .de Ve \" End verbatim text
22 .ft R
23 .fi
24 ..
25 .\" Set up some character translations and predefined strings. \*(-- will
26 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
27 .\" double quote, and \*(R" will give a right double quote. | will give a
28 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
29 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
30 .\" expand to `' in nroff, nothing in troff, for use with C<>.
31 .tr \(*W-|\(bv\*(Tr
32 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
33 .ie n \{\
34 . ds -- \(*W-
35 . ds PI pi
36 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
37 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
38 . ds L" ""
39 . ds R" ""
40 . ds C` ""
41 . ds C' ""
42 'br\}
43 .el\{\
44 . ds -- \|\(em\|
45 . ds PI \(*p
46 . ds L" ``
47 . ds R" ''
48 'br\}
49 .\"
50 .\" If the F register is turned on, we'll generate index entries on stderr for
51 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
52 .\" entries marked with X<> in POD. Of course, you'll have to process the
53 .\" output yourself in some meaningful fashion.
54 .if \nF \{\
55 . de IX
56 . tm Index:\\$1\t\\n%\t"\\$2"
57 ..
58 . nr % 0
59 . rr F
60 .\}
61 .\"
62 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
63 .\" way too many mistakes in technical documents.
64 .hy 0
65 .if n .na
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear. Run. Save yourself. No user-serviceable parts.
69 . \" fudge factors for nroff and troff
70 .if n \{\
71 . ds #H 0
72 . ds #V .8m
73 . ds #F .3m
74 . ds #[ \f1
75 . ds #] \fP
76 .\}
77 .if t \{\
78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 . ds #V .6m
80 . ds #F 0
81 . ds #[ \&
82 . ds #] \&
83 .\}
84 . \" simple accents for nroff and troff
85 .if n \{\
86 . ds ' \&
87 . ds ` \&
88 . ds ^ \&
89 . ds , \&
90 . ds ~ ~
91 . ds /
92 .\}
93 .if t \{\
94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
99 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
100 .\}
101 . \" troff and (daisy-wheel) nroff accents
102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
109 .ds ae a\h'-(\w'a'u*4/10)'e
110 .ds Ae A\h'-(\w'A'u*4/10)'E
111 . \" corrections for vroff
112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
114 . \" for low resolution devices (crt and lpr)
115 .if \n(.H>23 .if \n(.V>19 \
116 \{\
117 . ds : e
118 . ds 8 ss
119 . ds o a
120 . ds d- d\h'-1'\(ga
121 . ds D- D\h'-1'\(hy
122 . ds th \o'bp'
123 . ds Th \o'LP'
124 . ds ae ae
125 . ds Ae AE
126 .\}
127 .rm #[ #] #H #V #F C
128 .\" ========================================================================
129 .\"
130 .IX Title "LLVM-EXTRACT 1"
131 .TH LLVM-EXTRACT 1 "2006-03-13" "CVS" "LLVM Command Guide"
132 .SH "NAME"
133 llvm\-extract \- extract a function from an LLVM module
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 \&\fBllvm-extract\fR [\fIoptions\fR] \fB\-\-func\fR \fIfunction-name\fR [\fIfilename\fR]
137 .SH "DESCRIPTION"
138 .IX Header "DESCRIPTION"
139 The \fBllvm-extract\fR command takes the name of a function and extracts it from
140 the specified \s-1LLVM\s0 bytecode file. It is primarily used as a debugging tool to
141 reduce test cases from larger programs that are triggering a bug.
142 .PP
143 In addition to extracting the bytecode of the specified function,
144 \&\fBllvm-extract\fR will also remove unreachable global variables, prototypes, and
145 unused types.
146 .PP
147 The \fBllvm-extract\fR command reads its input from standard input if filename is
148 omitted or if filename is \-. The output is always written to standard output,
149 unless the \fB\-o\fR option is specified (see below).
150 .SH "OPTIONS"
151 .IX Header "OPTIONS"
152 .IP "\fB\-f\fR" 4
153 .IX Item "-f"
154 Force overwrite. Normally, \fBllvm-extract\fR will refuse to overwrite an
155 output file that already exists. With this option, \fBllvm-extract\fR
156 will overwrite the output file and replace it with new bytecode.
157 .IP "\fB\-\-func\fR \fIfunction-name\fR" 4
158 .IX Item "--func function-name"
159 Extract the function named \fIfunction-name\fR from the \s-1LLVM\s0 bytecode.
160 .IP "\fB\-\-help\fR" 4
161 .IX Item "--help"
162 Print a summary of command line options.
163 .IP "\fB\-o\fR \fIfilename\fR" 4
164 .IX Item "-o filename"
165 Specify the output filename. If filename is \*(L"\-\*(R" (the default), then
166 \&\fBllvm-extract\fR sends its output to standard output.
167 .SH "EXIT STATUS"
168 .IX Header "EXIT STATUS"
169 If \fBllvm-extract\fR succeeds, it will exit with 0. Otherwise, if an error
170 occurs, it will exit with a non-zero value.
171 .SH "SEE ALSO"
172 .IX Header "SEE ALSO"
173 bugpoint
174 .SH "AUTHORS"
175 .IX Header "AUTHORS"
176 Maintained by the \s-1LLVM\s0 Team ().
0 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
1 .\"
2 .\" Standard preamble:
3 .\" ========================================================================
4 .de Sh \" Subsection heading
5 .br
6 .if t .Sp
7 .ne 5
8 .PP
9 \fB\\$1\fR
10 .PP
11 ..
12 .de Sp \" Vertical space (when we can't use .PP)
13 .if t .sp .5v
14 .if n .sp
15 ..
16 .de Vb \" Begin verbatim text
17 .ft CW
18 .nf
19 .ne \\$1
20 ..
21 .de Ve \" End verbatim text
22 .ft R
23 .fi
24 ..
25 .\" Set up some character translations and predefined strings. \*(-- will
26 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
27 .\" double quote, and \*(R" will give a right double quote. | will give a
28 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
29 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
30 .\" expand to `' in nroff, nothing in troff, for use with C<>.
31 .tr \(*W-|\(bv\*(Tr
32 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
33 .ie n \{\
34 . ds -- \(*W-
35 . ds PI pi
36 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
37 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
38 . ds L" ""
39 . ds R" ""
40 . ds C` ""
41 . ds C' ""
42 'br\}
43 .el\{\
44 . ds -- \|\(em\|
45 . ds PI \(*p
46 . ds L" ``
47 . ds R" ''
48 'br\}
49 .\"
50 .\" If the F register is turned on, we'll generate index entries on stderr for
51 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
52 .\" entries marked with X<> in POD. Of course, you'll have to process the
53 .\" output yourself in some meaningful fashion.
54 .if \nF \{\
55 . de IX
56 . tm Index:\\$1\t\\n%\t"\\$2"
57 ..
58 . nr % 0
59 . rr F
60 .\}
61 .\"
62 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
63 .\" way too many mistakes in technical documents.
64 .hy 0
65 .if n .na
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear. Run. Save yourself. No user-serviceable parts.
69 . \" fudge factors for nroff and troff
70 .if n \{\
71 . ds #H 0
72 . ds #V .8m
73 . ds #F .3m
74 . ds #[ \f1
75 . ds #] \fP
76 .\}
77 .if t \{\
78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 . ds #V .6m
80 . ds #F 0
81 . ds #[ \&
82 . ds #] \&
83 .\}
84 . \" simple accents for nroff and troff
85 .if n \{\
86 . ds ' \&
87 . ds ` \&
88 . ds ^ \&
89 . ds , \&
90 . ds ~ ~
91 . ds /
92 .\}
93 .if t \{\
94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
99 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
100 .\}
101 . \" troff and (daisy-wheel) nroff accents
102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
109 .ds ae a\h'-(\w'a'u*4/10)'e
110 .ds Ae A\h'-(\w'A'u*4/10)'E
111 . \" corrections for vroff
112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
114 . \" for low resolution devices (crt and lpr)
115 .if \n(.H>23 .if \n(.V>19 \
116 \{\
117 . ds : e
118 . ds 8 ss
119 . ds o a
120 . ds d- d\h'-1'\(ga
121 . ds D- D\h'-1'\(hy
122 . ds th \o'bp'
123 . ds Th \o'LP'
124 . ds ae ae
125 . ds Ae AE
126 .\}
127 .rm #[ #] #H #V #F C
128 .\" ========================================================================
129 .\"
130 .IX Title "LLVM-LD 1"
131 .TH LLVM-LD 1 "2007-05-06" "CVS" "LLVM Command Guide"
132 .SH "NAME"
133 llvm\-ld \- LLVM linker
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 \&\fBllvm-ld\fR
137 .SH "DESCRIPTION"
138 .IX Header "DESCRIPTION"
139 The \fBllvm-ld\fR tool takes a set of \s-1LLVM\s0 bytecode files and links them
140 together into a single \s-1LLVM\s0 bytecode file. The output bytecode file can be
141 another bytecode file or an executable bytecode program. Using additional
142 options, \fBllvm-ld\fR is able to produce native code executables.
143 .PP
144 The \fBllvm-ld\fR tool is the main linker for \s-1LLVM\s0. It is used to link together
145 the output of \s-1LLVM\s0 front-end compilers and run \*(L"link time\*(R" optimizations (mostly
146 the inter-procedural kind).
147 .PP
148 The \fBllvm-ld\fR tools attemps to mimic the interface provided by the default
149 system linker so that it can act as a \fIdrop-in\fR replacement.
150 .Sh "Search Order"
151 .IX Subsection "Search Order"
152 When looking for objects specified on the command line, \fBllvm-ld\fR will search
153 for the object first in the current directory and then in the directory
154 specified by the \fB\s-1LLVM_LIB_SEARCH_PATH\s0\fR environment variable. If it cannot
155 find the object, it fails.
156 .PP
157 When looking for a library specified with the \fB\-l\fR option, \fBllvm-ld\fR first
158 attempts to load a file with that name from the current directory. If that
159 fails, it looks for lib\fIlibrary\fR.bc, lib\fIlibrary\fR.a, or lib\fIlibrary\fR.\fIshared
160 library extension\fR, in that order, in each directory added to the library search
161 path with the \fB\-L\fR option. These directories are searched in the order they
162 are specified. If the library cannot be located, then \fBllvm-ld\fR looks in the
163 directory specified by the \fB\s-1LLVM_LIB_SEARCH_PATH\s0\fR environment variable. If it
164 does not find a library there, it fails.
165 .PP
166 The \fIshared library extension\fR may be \fI.so\fR, \fI.dyld\fR, \fI.dll\fR, or something
167 different, depending upon the system.
168 .PP
169 The \fB\-L\fR option is global. It does not matter where it is specified in the
170 list of command line arguments; the directory is simply added to the search path
171 and is applied to all libraries, preceding or succeeding, in the command line.
172 .Sh "Link order"
173 .IX Subsection "Link order"
174 All object and bytecode files are linked first in the order they were
175 specified on the command line. All library files are linked next.
176 Some libraries may not be linked into the object program; see below.
177 .Sh "Library Linkage"
178 .IX Subsection "Library Linkage"
179 Object files and static bytecode objects are always linked into the output
180 file. Library archives (.a files) load only the objects within the archive
181 that define symbols needed by the output file. Hence, libraries should be
182 listed after the object files and libraries which need them; otherwise, the
183 library may not be linked in, and the dependent library will not have its
184 undefined symbols defined.
185 .Sh "Native code generation"
186 .IX Subsection "Native code generation"
187 The \fBllvm-ld\fR program has limited support for native code generation, when
188 using the \fB\-native\fR or \fB\-native\-cbe\fR options. Native code generation is
189 perfomed by converting the linked bytecode into native assembly (.s) or C code
190 and running the system compiler (typically gcc) on the result.
191 .SH "OPTIONS"
192 .IX Header "OPTIONS"
193 .Sh "General Options"
194 .IX Subsection "General Options"
195 .IP "\fB\-help\fR" 4
196 .IX Item "-help"
197 Print a summary of command line options.
198 .IP "\fB\-v\fR" 4
199 .IX Item "-v"
200 Specifies verbose mode. In this mode the linker will print additional
201 information about the actions it takes, programs it executes, etc.
202 .IP "\fB\-stats\fR" 4
203 .IX Item "-stats"
204 Print statistics.
205 .IP "\fB\-time\-passes\fR" 4
206 .IX Item "-time-passes"
207 Record the amount of time needed for each pass and print it to standard
208 error.
209 .Sh "Input/Output Options"
210 .IX Subsection "Input/Output Options"
211 .IP "\fB\-o\fR \fIfilename\fR" 4
212 .IX Item "-o filename"
213 This overrides the default output file and specifies the name of the file that
214 should be generated by the linker. By default, \fBllvm-ld\fR generates a file named
215 \&\fIa.out\fR for compatibility with \fBld\fR. The output will be written to
216 \&\fIfilename\fR.
217 .IP "\fB\-l\fR\fIname\fR" 4
218 .IX Item "-lname"
219 This option specifies the \fIname\fR of a library to search when resolving symbols
220 for the program. Only the base name should be specified as \fIname\fR, without a
221 \&\fIlib\fR prefix or any suffix.
222 .IP "\fB\-L\fR\fIPath\fR" 4
223 .IX Item "-LPath"
224 This option tells \fBllvm-ld\fR to look in \fIPath\fR to find any library subsequently
225 specified with the \fB\-l\fR option. The paths will be searched in the order in
226 which they are specified on the command line. If the library is still not found,
227 a small set of system specific directories will also be searched. Note that
228 libraries specified with the \fB\-l\fR option that occur \fIbefore\fR any \fB\-L\fR options
229 will not search the paths given by the \fB\-L\fR options following it.
230 .IP "\fB\-link\-as\-library\fR" 4
231 .IX Item "-link-as-library"
232 Link the bytecode files together as a library, not an executable. In this mode,
233 undefined symbols will be permitted.
234 .IP "\fB\-r\fR" 4
235 .IX Item "-r"
236 An alias for \-link\-as\-library.
237 .ie n .IP "\fB\-march=\fR""target""" 4
238 .el .IP "\fB\-march=\fR\f(CWtarget\fR" 4
239 .IX Item "-march=target"
240 Specifies the kind of machine for which code or assembly should be generated.
241 .IP "\fB\-native\fR" 4
242 .IX Item "-native"
243 Generate a native machine code executable.
244 .Sp
245 When generating native executables, \fBllvm-ld\fR first checks for a bytecode
246 version of the library and links it in, if necessary. If the library is
247 missing, \fBllvm-ld\fR skips it. Then, \fBllvm-ld\fR links in the same
248 libraries as native code.
249 .Sp
250 In this way, \fBllvm-ld\fR should be able to link in optimized bytecode
251 subsets of common libraries and then link in any part of the library that
252 hasn't been converted to bytecode.
253 .IP "\fB\-native\-cbe\fR" 4
254 .IX Item "-native-cbe"
255 Generate a native machine code executable with the \s-1LLVM\s0 C backend.
256 .Sp
257 This option is identical to the \fB\-native\fR option, but uses the
258 C backend to generate code for the program instead of an \s-1LLVM\s0 native
259 code generator.
260 .Sh "Optimization Options"
261 .IX Subsection "Optimization Options"
262 .IP "\fB\-O0\fR" 4
263 .IX Item "-O0"
264 An alias for the \-O1 option.
265 .IP "\fB\-O1\fR" 4
266 .IX Item "-O1"
267 Optimize for linking speed, not execution speed. The optimizer will attempt to
268 reduce the size of the linked program to reduce I/O but will not otherwise
269 perform any link-time optimizations.
270 .IP "\fB\-O2\fR" 4
271 .IX Item "-O2"
272 Perform only the minimal or required set of scalar optimizations.
273 .IP "\fB\-03\fR" 4
274 .IX Item "-03"
275 An alias for the \-O2 option.
276 .IP "\fB\-04\fR" 4
277 .IX Item "-04"
278 Perform the standard link time inter-procedural optimizations. This will
279 attempt to optimize the program taking the entire program into consideration.
280 .IP "\fB\-O5\fR" 4
281 .IX Item "-O5"
282 Perform aggressive link time optimizations. This is the same as \-O4 but works
283 more aggressively to optimize the program.
284 .IP "\fB\-disable\-inlining\fR" 4
285 .IX Item "-disable-inlining"
286 Do not run the inlining pass. Functions will not be inlined into other
287 functions.
288 .IP "\fB\-disable\-opt\fR" 4
289 .IX Item "-disable-opt"
290 Completely disable optimization. The various \fB\-On\fR options will be ignored and
291 no link time optimization passes will be run.
292 .IP "\fB\-disable\-internalize\fR" 4
293 .IX Item "-disable-internalize"
294 Do not mark all symbols as internal.
295 .IP "\fB\-verify\-each\fR" 4
296 .IX Item "-verify-each"
297 Run the verification pass after each of the passes to verify intermediate
298 results.
299 .IP "\fB\-strip\-all\fR" 4
300 .IX Item "-strip-all"
301 Strip all debug and symbol information from the executable to make it smaller.
302 .IP "\fB\-strip\-debug\fR" 4
303 .IX Item "-strip-debug"
304 Strip all debug information from the executable to make it smaller.
305 .IP "\fB\-s\fR" 4
306 .IX Item "-s"
307 An alias for \fB\-strip\-all\fR.
308 .IP "\fB\-S\fR" 4
309 .IX Item "-S"
310 An alias for \fB\-strip\-debug\fR.
311 .IP "\fB\-export\-dynamic\fR" 4
312 .IX Item "-export-dynamic"
313 An alias for \fB\-disable\-internalize\fR
314 .IP "\fB\-load\fR \fImodule\fR" 4
315 .IX Item "-load module"
316 Load an optimization module, \fImodule\fR, which is expected to be a dynamic
317 library that provides the function name \f(CW\*(C`RunOptimizations\*(C'\fR. This function will
318 be passed the PassManager, and the optimization level (values 0\-5 based on the
319 \&\fB\-On\fR option). This function may add passes to the PassManager that should be
320 run. This feature allows the optimization passes of \fBllvm-ld\fR to be extended.
321 .IP "\fB\-post\-link\-opt\fR\fIPath\fR" 4
322 .IX Item "-post-link-optPath"
323 Run post-link optimization program. After linking is completed a bytecode file
324 will be generated. It will be passed to the program specified by \fIPath\fR as the
325 first argument. The second argument to the program will be the name of a
326 temporary file into which the program should place its optimized output. For
327 example, the \*(L"no\-op optimization\*(R" would be a simple shell script:
328 .Sp
329 .Vb 2
330 \& #!/bin/bash
331 \& cp $1 $2
332 .Ve
333 .SH "EXIT STATUS"
334 .IX Header "EXIT STATUS"
335 If \fBllvm-ld\fR succeeds, it will exit with 0 return code. If an error occurs,
336 it will exit with a non-zero return code.
337 .SH "ENVIRONMENT"
338 .IX Header "ENVIRONMENT"
339 The \f(CW\*(C`LLVM_LIB_SEARCH_PATH\*(C'\fR environment variable is used to find bytecode
340 libraries. Any paths specified in this variable will be searched after the \f(CW\*(C`\-L\*(C'\fR
341 options.
342 .SH "SEE ALSO"
343 .IX Header "SEE ALSO"
344 llvm-link
345 .SH "AUTHORS"
346 .IX Header "AUTHORS"
347 Maintained by the \s-1LLVM\s0 Team ().
0 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
1 .\"
2 .\" Standard preamble:
3 .\" ========================================================================
4 .de Sh \" Subsection heading
5 .br
6 .if t .Sp
7 .ne 5
8 .PP
9 \fB\\$1\fR
10 .PP
11 ..
12 .de Sp \" Vertical space (when we can't use .PP)
13 .if t .sp .5v
14 .if n .sp
15 ..
16 .de Vb \" Begin verbatim text
17 .ft CW
18 .nf
19 .ne \\$1
20 ..
21 .de Ve \" End verbatim text
22 .ft R
23 .fi
24 ..
25 .\" Set up some character translations and predefined strings. \*(-- will
26 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
27 .\" double quote, and \*(R" will give a right double quote. | will give a
28 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
29 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
30 .\" expand to `' in nroff, nothing in troff, for use with C<>.
31 .tr \(*W-|\(bv\*(Tr
32 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
33 .ie n \{\
34 . ds -- \(*W-
35 . ds PI pi
36 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
37 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
38 . ds L" ""
39 . ds R" ""
40 . ds C` ""
41 . ds C' ""
42 'br\}
43 .el\{\
44 . ds -- \|\(em\|
45 . ds PI \(*p
46 . ds L" ``
47 . ds R" ''
48 'br\}
49 .\"
50 .\" If the F register is turned on, we'll generate index entries on stderr for
51 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
52 .\" entries marked with X<> in POD. Of course, you'll have to process the
53 .\" output yourself in some meaningful fashion.
54 .if \nF \{\
55 . de IX
56 . tm Index:\\$1\t\\n%\t"\\$2"
57 ..
58 . nr % 0
59 . rr F
60 .\}
61 .\"
62 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
63 .\" way too many mistakes in technical documents.
64 .hy 0
65 .if n .na
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear. Run. Save yourself. No user-serviceable parts.
69 . \" fudge factors for nroff and troff
70 .if n \{\
71 . ds #H 0
72 . ds #V .8m
73 . ds #F .3m
74 . ds #[ \f1
75 . ds #] \fP
76 .\}
77 .if t \{\
78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 . ds #V .6m
80 . ds #F 0
81 . ds #[ \&
82 . ds #] \&
83 .\}
84 . \" simple accents for nroff and troff
85 .if n \{\
86 . ds ' \&
87 . ds ` \&
88 . ds ^ \&
89 . ds , \&
90 . ds ~ ~
91 . ds /
92 .\}
93 .if t \{\
94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
99 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
100 .\}
101 . \" troff and (daisy-wheel) nroff accents
102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
109 .ds ae a\h'-(\w'a'u*4/10)'e
110 .ds Ae A\h'-(\w'A'u*4/10)'E
111 . \" corrections for vroff
112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
114 . \" for low resolution devices (crt and lpr)
115 .if \n(.H>23 .if \n(.V>19 \
116 \{\
117 . ds : e
118 . ds 8 ss
119 . ds o a
120 . ds d- d\h'-1'\(ga
121 . ds D- D\h'-1'\(hy
122 . ds th \o'bp'
123 . ds Th \o'LP'
124 . ds ae ae
125 . ds Ae AE
126 .\}
127 .rm #[ #] #H #V #F C
128 .\" ========================================================================
129 .\"
130 .IX Title "LLVM-LINK 1"
131 .TH LLVM-LINK 1 "2006-03-13" "CVS" "LLVM Command Guide"
132 .SH "NAME"
133 llvm\-link \- LLVM linker
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 \&\fBllvm-link\fR [\fIoptions\fR] \fIfilename ...\fR
137 .SH "DESCRIPTION"
138 .IX Header "DESCRIPTION"
139 \&\fBllvm-link\fR takes several \s-1LLVM\s0 bytecode files and links them together into a
140 single \s-1LLVM\s0 bytecode file. It writes the output file to standard output, unless
141 the \fB\-o\fR option is used to specify a filename.
142 .PP
143 \&\fBllvm-link\fR attempts to load the input files from the current directory. If
144 that fails, it looks for each file in each of the directories specified by the
145 \&\fB\-L\fR options on the command line. The library search paths are global; each
146 one is searched for every input file if necessary. The directories are searched
147 in the order they were specified on the command line.
148 .SH "OPTIONS"
149 .IX Header "OPTIONS"
150 .IP "\fB\-L\fR \fIdirectory\fR" 4
151 .IX Item "-L directory"
152 Add the specified \fIdirectory\fR to the library search path. When looking for
153 libraries, \fBllvm-link\fR will look in pathname for libraries. This option can be
154 specified multiple times; \fBllvm-link\fR will search inside these directories in
155 the order in which they were specified on the command line.
156 .IP "\fB\-f\fR" 4
157 .IX Item "-f"
158 Overwrite output files. By default, \fBllvm-link\fR will not overwrite an output
159 file if it alreadys exists.
160 .IP "\fB\-o\fR \fIfilename\fR" 4
161 .IX Item "-o filename"
162 Specify the output file name. If \fIfilename\fR is \f(CW\*(C`\-\*(C'\fR, then \fBllvm-link\fR will
163 write its output to standard output.
164 .IP "\fB\-d\fR" 4
165 .IX Item "-d"
166 If specified, \fBllvm-link\fR prints a human-readable version of the output
167 bytecode file to standard error.
168 .IP "\fB\-\-help\fR" 4
169 .IX Item "--help"
170 Print a summary of command line options.
171 .IP "\fB\-v\fR" 4
172 .IX Item "-v"
173 Verbose mode. Print information about what \fBllvm-link\fR is doing. This
174 typically includes a message for each bytecode file linked in and for each
175 library found.
176 .SH "EXIT STATUS"
177 .IX Header "EXIT STATUS"
178 If \fBllvm-link\fR succeeds, it will exit with 0. Otherwise, if an error
179 occurs, it will exit with a non-zero value.
180 .SH "SEE ALSO"
181 .IX Header "SEE ALSO"
182 gccld
183 .SH "AUTHORS"
184 .IX Header "AUTHORS"
185 Maintained by the \s-1LLVM\s0 Team ().
0 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
1 .\"
2 .\" Standard preamble:
3 .\" ========================================================================
4 .de Sh \" Subsection heading
5 .br
6 .if t .Sp
7 .ne 5
8 .PP
9 \fB\\$1\fR
10 .PP
11 ..
12 .de Sp \" Vertical space (when we can't use .PP)
13 .if t .sp .5v
14 .if n .sp
15 ..
16 .de Vb \" Begin verbatim text
17 .ft CW
18 .nf
19 .ne \\$1
20 ..
21 .de Ve \" End verbatim text
22 .ft R
23 .fi
24 ..
25 .\" Set up some character translations and predefined strings. \*(-- will
26 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
27 .\" double quote, and \*(R" will give a right double quote. | will give a
28 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
29 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
30 .\" expand to `' in nroff, nothing in troff, for use with C<>.
31 .tr \(*W-|\(bv\*(Tr
32 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
33 .ie n \{\
34 . ds -- \(*W-
35 . ds PI pi
36 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
37 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
38 . ds L" ""
39 . ds R" ""
40 . ds C` ""
41 . ds C' ""
42 'br\}
43 .el\{\
44 . ds -- \|\(em\|
45 . ds PI \(*p
46 . ds L" ``
47 . ds R" ''
48 'br\}
49 .\"
50 .\" If the F register is turned on, we'll generate index entries on stderr for
51 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
52 .\" entries marked with X<> in POD. Of course, you'll have to process the
53 .\" output yourself in some meaningful fashion.
54 .if \nF \{\
55 . de IX
56 . tm Index:\\$1\t\\n%\t"\\$2"
57 ..
58 . nr % 0
59 . rr F
60 .\}
61 .\"
62 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
63 .\" way too many mistakes in technical documents.
64 .hy 0
65 .if n .na
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear. Run. Save yourself. No user-serviceable parts.
69 . \" fudge factors for nroff and troff
70 .if n \{\
71 . ds #H 0
72 . ds #V .8m
73 . ds #F .3m
74 . ds #[ \f1
75 . ds #] \fP
76 .\}
77 .if t \{\
78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 . ds #V .6m
80 . ds #F 0
81 . ds #[ \&
82 . ds #] \&
83 .\}
84 . \" simple accents for nroff and troff
85 .if n \{\
86 . ds ' \&
87 . ds ` \&
88 . ds ^ \&
89 . ds , \&
90 . ds ~ ~
91 . ds /
92 .\}
93 .if t \{\
94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
99 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
100 .\}
101 . \" troff and (daisy-wheel) nroff accents
102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
109 .ds ae a\h'-(\w'a'u*4/10)'e
110 .ds Ae A\h'-(\w'A'u*4/10)'E
111 . \" corrections for vroff
112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
114 . \" for low resolution devices (crt and lpr)
115 .if \n(.H>23 .if \n(.V>19 \
116 \{\
117 . ds : e
118 . ds 8 ss
119 . ds o a
120 . ds d- d\h'-1'\(ga
121 . ds D- D\h'-1'\(hy
122 . ds th \o'bp'
123 . ds Th \o'LP'
124 . ds ae ae
125 . ds Ae AE
126 .\}
127 .rm #[ #] #H #V #F C
128 .\" ========================================================================
129 .\"
130 .IX Title "LLVM-NM 1"
131 .TH LLVM-NM 1 "2006-11-20" "CVS" "LLVM Command Guide"
132 .SH "NAME"
133 llvm\-nm \- list LLVM bytecode file's symbol table
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 \&\fBllvm-nm\fR [\fIoptions\fR] [\fIfilenames...\fR]
137 .SH "DESCRIPTION"
138 .IX Header "DESCRIPTION"
139 The \fBllvm-nm\fR utility lists the names of symbols from the \s-1LLVM\s0 bytecode files,
140 or \fBar\fR archives containing \s-1LLVM\s0 bytecode files, named on the command line.
141 Each symbol is listed along with some simple information about its provenance.
142 If no filename is specified, or \fI\-\fR is used as a filename, \fBllvm-nm\fR will
143 process a bytecode file on its standard input stream.
144 .PP
145 \&\fBllvm-nm\fR's default output format is the traditional \s-1BSD\s0 \fBnm\fR output format.
146 Each such output record consists of an (optional) 8\-digit hexadecimal address,
147 followed by a type code character, followed by a name, for each symbol. One
148 record is printed per line; fields are separated by spaces. When the address is
149 omitted, it is replaced by 8 spaces.
150 .PP
151 Type code characters currently supported, and their meanings, are as follows:
152 .IP "U" 4
153 .IX Item "U"
154 Named object is referenced but undefined in this bytecode file
155 .IP "C" 4
156 .IX Item "C"
157 Common (multiple defs link together into one def)
158 .IP "W" 4
159 .IX Item "W"
160 Weak reference (multiple defs link together into zero or one defs)
161 .IP "t" 4
162 .IX Item "t"
163 Local function (text) object
164 .IP "T" 4
165 .IX Item "T"
166 Global function (text) object
167 .IP "d" 4
168 .IX Item "d"
169 Local data object
170 .IP "D" 4
171 .IX Item "D"
172 Global data object
173 .IP "?" 4
174 Something unrecognizable
175 .PP
176 Because \s-1LLVM\s0 bytecode files typically contain objects that are not considered to
177 have addresses until they are linked into an executable image or dynamically
178 compiled \*(L"just\-in\-time\*(R", \fBllvm-nm\fR does not print an address for any symbol,
179 even symbols which are defined in the bytecode file.
180 .SH "OPTIONS"
181 .IX Header "OPTIONS"
182 .IP "\fB\-P\fR" 4
183 .IX Item "-P"
184 Use \s-1POSIX\s0.2 output format. Alias for \fB\-\-format=posix\fR.
185 .IP "\fB\-B\fR (default)" 4
186 .IX Item "-B (default)"
187 Use \s-1BSD\s0 output format. Alias for \fB\-\-format=bsd\fR.
188 .IP "\fB\-\-help\fR" 4
189 .IX Item "--help"
190 Print a summary of command-line options and their meanings.
191 .IP "\fB\-\-defined\-only\fR" 4
192 .IX Item "--defined-only"
193 Print only symbols defined in this bytecode file (as opposed to
194 symbols which may be referenced by objects in this file, but not
195 defined in this file.)
196 .IP "\fB\-\-extern\-only\fR, \fB\-g\fR" 4
197 .IX Item "--extern-only, -g"
198 Print only symbols whose definitions are external; that is, accessible
199 from other bytecode files.
200 .IP "\fB\-\-undefined\-only\fR, \fB\-u\fR" 4
201 .IX Item "--undefined-only, -u"
202 Print only symbols referenced but not defined in this bytecode file.
203 .IP "\fB\-\-format=\fR\fIfmt\fR, \fB\-f\fR" 4
204 .IX Item "--format=fmt, -f"
205 Select an output format; \fIfmt\fR may be \fIsysv\fR, \fIposix\fR, or \fIbsd\fR. The
206 default is \fIbsd\fR.
207 .SH "BUGS"
208 .IX Header "BUGS"
209 \&\fBllvm-nm\fR cannot demangle \*(C+ mangled names, like \s-1GNU\s0 \fBnm\fR can.
210 .SH "EXIT STATUS"
211 .IX Header "EXIT STATUS"
212 \&\fBllvm-nm\fR exits with an exit code of zero.
213 .SH "SEE ALSO"
214 .IX Header "SEE ALSO"
215 llvm-dis, \fIar\fR\|(1), \fInm\fR\|(1)
216 .SH "AUTHOR"
217 .IX Header "AUTHOR"
218 Maintained by the \s-1LLVM\s0 Team ().
0 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
1 .\"
2 .\" Standard preamble:
3 .\" ========================================================================
4 .de Sh \" Subsection heading
5 .br
6 .if t .Sp
7 .ne 5
8 .PP
9 \fB\\$1\fR
10 .PP
11 ..
12 .de Sp \" Vertical space (when we can't use .PP)
13 .if t .sp .5v
14 .if n .sp
15 ..
16 .de Vb \" Begin verbatim text
17 .ft CW
18 .nf
19 .ne \\$1
20 ..
21 .de Ve \" End verbatim text
22 .ft R
23 .fi
24 ..
25 .\" Set up some character translations and predefined strings. \*(-- will
26 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
27 .\" double quote, and \*(R" will give a right double quote. | will give a
28 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
29 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
30 .\" expand to `' in nroff, nothing in troff, for use with C<>.
31 .tr \(*W-|\(bv\*(Tr
32 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
33 .ie n \{\
34 . ds -- \(*W-
35 . ds PI pi
36 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
37 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
38 . ds L" ""
39 . ds R" ""
40 . ds C` ""
41 . ds C' ""
42 'br\}
43 .el\{\
44 . ds -- \|\(em\|
45 . ds PI \(*p
46 . ds L" ``
47 . ds R" ''
48 'br\}
49 .\"
50 .\" If the F register is turned on, we'll generate index entries on stderr for
51 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
52 .\" entries marked with X<> in POD. Of course, you'll have to process the
53 .\" output yourself in some meaningful fashion.
54 .if \nF \{\
55 . de IX
56 . tm Index:\\$1\t\\n%\t"\\$2"
57 ..
58 . nr % 0
59 . rr F
60 .\}
61 .\"
62 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
63 .\" way too many mistakes in technical documents.
64 .hy 0
65 .if n .na
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear. Run. Save yourself. No user-serviceable parts.
69 . \" fudge factors for nroff and troff
70 .if n \{\
71 . ds #H 0
72 . ds #V .8m
73 . ds #F .3m
74 . ds #[ \f1
75 . ds #] \fP
76 .\}
77 .if t \{\
78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 . ds #V .6m
80 . ds #F 0
81 . ds #[ \&
82 . ds #] \&
83 .\}
84 . \" simple accents for nroff and troff
85 .if n \{\
86 . ds ' \&
87 . ds ` \&
88 . ds ^ \&
89 . ds , \&
90 . ds ~ ~
91 . ds /
92 .\}
93 .if t \{\
94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
99 . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
100 .\}
101 . \" troff and (daisy-wheel) nroff accents
102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
109 .ds ae a\h'-(\w'a'u*4/10)'e
110 .ds Ae A\h'-(\w'A'u*4/10)'E
111 . \" corrections for vroff
112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
114 . \" for low resolution devices (crt and lpr)
115 .if \n(.H>23 .if \n(.V>19 \
116 \{\
117 . ds : e
118 . ds 8 ss
119 . ds o a
120 . ds d- d\h'-1'\(ga
121 . ds D- D\h'-1'\(hy
122 . ds th \o'bp'
123 . ds Th \o'LP'
124 . ds ae ae
125 . ds Ae AE
126 .\}
127 .rm #[ #] #H #V #F C
128 .\" ========================================================================
129 .\"
130 .IX Title "LLVM-PROF 1"
131 .TH LLVM-PROF 1 "2006-03-13" "CVS" "LLVM Command Guide"
132 .SH "NAME"
133 llvm\-prof \- print execution profile of LLVM program
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 \&\fBllvm-prof\fR [\fIoptions\fR] [\fIbytecode file\fR] [\fIllvmprof.out\fR]
137 .SH "DESCRIPTION"
138 .IX Header "DESCRIPTION"
139 The \fBllvm-prof\fR tool reads in an \fIllvmprof.out\fR file (which can
140 optionally use a specific file with the third program argument), a bytecode file
141 for the program, and produces a human readable report, suitable for determining
142 where the program hotspots are.
143 .PP
144 This program is often used in conjunction with the \fIutils/profile.pl\fR
145 script. This script automatically instruments a program, runs it with the \s-1JIT\s0,
146 then runs \fBllvm-prof\fR to format a report. To get more information about
147 \&\fIutils/profile.pl\fR, execute it with the \fB\-\-help\fR option.
148 .SH "OPTIONS"
149 .IX Header "OPTIONS"
150 .IP "\fB\-\-annotated\-llvm\fR or \fB\-A\fR" 4
151 .IX Item "--annotated-llvm or -A"
152 In addition to the normal report printed, print out the code for the
153 program, annotated with execution frequency information. This can be
154 particularly useful when trying to visualize how frequently basic blocks
155 are executed. This is most useful with basic block profiling
156 information or better.
157 .IP "\fB\-\-print\-all\-code\fR" 4
158 .IX Item "--print-all-code"
159 Using this option enables the \fB\-\-annotated\-llvm\fR option, but it
160 prints the entire module, instead of just the most commonly executed
161 functions.
162 .IP "\fB\-\-time\-passes\fR" 4
163 .IX Item "--time-passes"
164 Record the amount of time needed for each pass and print it to standard
165 error.
166 .SH "EXIT STATUS"
167 .IX Header "EXIT STATUS"
168 \&\fBllvm-prof\fR returns 1 if it cannot load the bytecode file or the profile
169 information. Otherwise, it exits with zero.
170 .SH "AUTHOR"
171 .IX Header "AUTHOR"
172 \&\fBllvm-prof\fR is maintained by the \s-1LLVM\s0 Team ().
0 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
1 .\"
2 .\" Standard preamble:
3 .\" ========================================================================
4 .de Sh \" Subsection heading
5 .br
6 .if t .Sp
7 .ne 5
8 .PP
9 \fB\\$1\fR
10 .PP
11 ..
12 .de Sp \" Vertical space (when we can't use .PP)
13 .if t .sp .5v
14 .if n .sp
15 ..
16 .de Vb \" Begin verbatim text
17 .ft CW
18 .nf
19 .ne \\$1
20 ..
21 .de Ve \" End verbatim text
22 .ft R
23 .fi
24 ..
25 .\" Set up some character translations and predefined strings. \*(-- will
26 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
27 .\" double quote, and \*(R" will give a right double quote. | will give a
28 .\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
29 .\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
30 .\" expand to `' in nroff, nothing in troff, for use with C<>.
31 .tr \(*W-|\(bv\*(Tr
32 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
33 .ie n \{\
34 . ds -- \(*W-
35 . ds PI pi
36 . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
37 . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
38 . ds L" ""
39 . ds R" ""
40 . ds C` ""
41 . ds C' ""
42 'br\}
43 .el\{\
44 . ds -- \|\(em\|
45 . ds PI \(*p
46 . ds L" ``
47 . ds R" ''
48 'br\}
49 .\"
50 .\" If the F register is turned on, we'll generate index entries on stderr for
51 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
52 .\" entries marked with X<> in POD. Of course, you'll have to process the
53 .\" output yourself in some meaningful fashion.
54 .if \nF \{\
55 . de IX
56 . tm Index:\\$1\t\\n%\t"\\$2"
57 ..
58 . nr % 0
59 . rr F
60 .\}
61 .\"
62 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
63 .\" way too many mistakes in technical documents.
64 .hy 0
65 .if n .na
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear. Run. Save yourself. No user-serviceable parts.
69 . \" fudge factors for nroff and troff
70 .if n \{\
71 . ds #H 0
72 . ds #V .8m
73 . ds #F .3m
74 . ds #[ \f1
75 . ds #] \fP
76 .\}
77 .if t \{\
78 . ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 . ds #V .6m
80 . ds #F 0
81 . ds #[ \&
82 . ds #] \&
83 .\}
84 . \" simple accents for nroff and troff
85 .if n \{\
86 . ds ' \&
87 . ds ` \&
88 . ds ^ \&
89 . ds , \&
90 . ds ~ ~
91 . ds /
92 .\}
93 .if t \{\
94 . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n: