mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-04-27 04:18:42 +00:00
2.0 Release docs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_20@37312 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
1 parent
eff75f4c9f
commit
738d0e3c6b
23 files changed
+5531
No files matched your search
@@ -0,0 +1,240 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "BUGPOINT 1"
|
||||
.TH BUGPOINT 1 "2006-09-13" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
bugpoint \- automatic test case reduction tool
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBbugpoint\fR [\fIoptions\fR] [\fIinput \s-1LLVM\s0 ll/bc files\fR] [\fI\s-1LLVM\s0 passes\fR] \fB\-\-args\fR
|
||||
\&\fIprogram arguments\fR
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
\&\fBbugpoint\fR narrows down the source of problems in \s-1LLVM\s0 tools and passes. It
|
||||
can be used to debug three types of failures: optimizer crashes, miscompilations
|
||||
by optimizers, or bad native code generation (including problems in the static
|
||||
and \s-1JIT\s0 compilers). It aims to reduce large test cases to small, useful ones.
|
||||
For more information on the design and inner workings of \fBbugpoint\fR, as well as
|
||||
advice for using bugpoint, see \fIllvm/docs/Bugpoint.html\fR in the \s-1LLVM\s0
|
||||
distribution.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-\-additional\-so\fR \fIlibrary\fR" 4
|
||||
.IX Item "--additional-so library"
|
||||
Load the dynamic shared object \fIlibrary\fR into the test program whenever it is
|
||||
run. This is useful if you are debugging programs which depend on non-LLVM
|
||||
libraries (such as the X or curses libraries) to run.
|
||||
.IP "\fB\-\-args\fR \fIprogram args\fR" 4
|
||||
.IX Item "--args program args"
|
||||
Pass all arguments specified after \-args to the test program whenever it runs.
|
||||
Note that if any of the \fIprogram args\fR start with a '\-', you should use:
|
||||
.Sp
|
||||
.Vb 1
|
||||
\& bugpoint [bugpoint args] --args -- [program args]
|
||||
.Ve
|
||||
.Sp
|
||||
The \*(L"\-\-\*(R" right after the \fB\-\-args\fR option tells \fBbugpoint\fR to consider any
|
||||
options starting with \f(CW\*(C`\-\*(C'\fR to be part of the \fB\-\-args\fR option, not as options to
|
||||
\&\fBbugpoint\fR itself.
|
||||
.IP "\fB\-\-tool\-args\fR \fItool args\fR" 4
|
||||
.IX Item "--tool-args tool args"
|
||||
Pass all arguments specified after \-\-tool\-args to the \s-1LLVM\s0 tool under test
|
||||
(\fBllc\fR, \fBlli\fR, etc.) whenever it runs. You should use this option in the
|
||||
following way:
|
||||
.Sp
|
||||
.Vb 1
|
||||
\& bugpoint [bugpoint args] --tool-args -- [tool args]
|
||||
.Ve
|
||||
.Sp
|
||||
The \*(L"\-\-\*(R" right after the \fB\-\-tool\-args\fR option tells \fBbugpoint\fR to consider any
|
||||
options starting with \f(CW\*(C`\-\*(C'\fR to be part of the \fB\-\-tool\-args\fR option, not as
|
||||
options to \fBbugpoint\fR itself. (See \fB\-\-args\fR, above.)
|
||||
.IP "\fB\-\-check\-exit\-code\fR=\fI{true,false}\fR" 4
|
||||
.IX Item "--check-exit-code={true,false}"
|
||||
Assume a non-zero exit code or core dump from the test program is a failure.
|
||||
Defaults to true.
|
||||
.IP "\fB\-\-disable\-{dce,simplifycfg}\fR" 4
|
||||
.IX Item "--disable-{dce,simplifycfg}"
|
||||
Do not run the specified passes to clean up and reduce the size of the test
|
||||
program. By default, \fBbugpoint\fR uses these passes internally when attempting to
|
||||
reduce test programs. If you're trying to find a bug in one of these passes,
|
||||
\&\fBbugpoint\fR may crash.
|
||||
.IP "\fB\-find\-bugs\fR" 4
|
||||
.IX Item "-find-bugs"
|
||||
Continually randomize the specified passes and run them on the test program
|
||||
until a bug is found or the user kills \fBbugpoint\fR.
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print a summary of command line options.
|
||||
.IP "\fB\-\-input\fR \fIfilename\fR" 4
|
||||
.IX Item "--input filename"
|
||||
Open \fIfilename\fR and redirect the standard input of the test program, whenever
|
||||
it runs, to come from that file.
|
||||
.IP "\fB\-\-load\fR \fIplugin\fR" 4
|
||||
.IX Item "--load plugin"
|
||||
Load the dynamic object \fIplugin\fR into \fBbugpoint\fR itself. This object should
|
||||
register new optimization passes. Once loaded, the object will add new command
|
||||
line options to enable various optimizations. To see the new complete list of
|
||||
optimizations, use the \fB\-\-help\fR and \fB\-\-load\fR options together; for example:
|
||||
.Sp
|
||||
.Vb 1
|
||||
\& bugpoint --load myNewPass.so --help
|
||||
.Ve
|
||||
.IP "\fB\-\-output\fR \fIfilename\fR" 4
|
||||
.IX Item "--output filename"
|
||||
Whenever the test program produces output on its standard output stream, it
|
||||
should match the contents of \fIfilename\fR (the \*(L"reference output\*(R"). If you
|
||||
do not use this option, \fBbugpoint\fR will attempt to generate a reference output
|
||||
by compiling the program with the C backend and running it.
|
||||
.IP "\fB\-\-profile\-info\-file\fR \fIfilename\fR" 4
|
||||
.IX Item "--profile-info-file filename"
|
||||
Profile file loaded by \fB\-\-profile\-loader\fR.
|
||||
.IP "\fB\-\-run\-{int,jit,llc,cbe}\fR" 4
|
||||
.IX Item "--run-{int,jit,llc,cbe}"
|
||||
Whenever the test program is compiled, \fBbugpoint\fR should generate code for it
|
||||
using the specified code generator. These options allow you to choose the
|
||||
interpreter, the \s-1JIT\s0 compiler, the static native code compiler, or the C
|
||||
backend, respectively.
|
||||
.IP "\fB\-\-enable\-valgrind\fR" 4
|
||||
.IX Item "--enable-valgrind"
|
||||
Use valgrind to find faults in the optimization phase. This will allow
|
||||
bugpoint to find otherwise asymptomatic problems caused by memory
|
||||
mis\-management.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBbugpoint\fR succeeds in finding a problem, it will exit with 0. Otherwise,
|
||||
if an error occurs, it will exit with a non-zero value.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
opt
|
||||
.SH "AUTHOR"
|
||||
.IX Header "AUTHOR"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,277 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLC 1"
|
||||
.TH LLC 1 "2006-03-13" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llc \- LLVM static compiler
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllc\fR [\fIoptions\fR] [\fIfilename\fR]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
The \fBllc\fR command compiles \s-1LLVM\s0 bytecode into assembly language for a
|
||||
specified architecture. The assembly language output can then be passed through
|
||||
a native assembler and linker to generate a native executable.
|
||||
.PP
|
||||
The choice of architecture for the output assembly code is automatically
|
||||
determined from the input bytecode file, unless the \fB\-march\fR option is used to
|
||||
override the default.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
If \fIfilename\fR is \- or omitted, \fBllc\fR reads \s-1LLVM\s0 bytecode from standard input.
|
||||
Otherwise, it will read \s-1LLVM\s0 bytecode from \fIfilename\fR.
|
||||
.PP
|
||||
If the \fB\-o\fR option is omitted, then \fBllc\fR will send its output to standard
|
||||
output if the input is from standard input. If the \fB\-o\fR option specifies \-,
|
||||
then the output will also be sent to standard output.
|
||||
.PP
|
||||
If no \fB\-o\fR option is specified and an input file other than \- is specified,
|
||||
then \fBllc\fR creates the output filename by taking the input filename,
|
||||
removing any existing \fI.bc\fR extension, and adding a \fI.s\fR suffix.
|
||||
.PP
|
||||
Other \fBllc\fR options are as follows:
|
||||
.Sh "End-user Options"
|
||||
.IX Subsection "End-user Options"
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print a summary of command line options.
|
||||
.IP "\fB\-f\fR" 4
|
||||
.IX Item "-f"
|
||||
Overwrite output files. By default, \fBllc\fR will refuse to overwrite
|
||||
an output file which already exists.
|
||||
.IP "\fB\-mtriple\fR=\fItarget triple\fR" 4
|
||||
.IX Item "-mtriple=target triple"
|
||||
Override the target triple specified in the input bytecode file with the
|
||||
specified string.
|
||||
.IP "\fB\-march\fR=\fIarch\fR" 4
|
||||
.IX Item "-march=arch"
|
||||
Specify the architecture for which to generate assembly, overriding the target
|
||||
encoded in the bytecode file. See the output of \fBllc \-\-help\fR for a list of
|
||||
valid architectures. By default this is inferred from the target triple or
|
||||
autodetected to the current architecture.
|
||||
.IP "\fB\-mcpu\fR=\fIcpuname\fR" 4
|
||||
.IX Item "-mcpu=cpuname"
|
||||
Specify a specific chip in the current architecture to generate code for.
|
||||
By default this is inferred from the target triple and autodetected to
|
||||
the current architecture. For a list of available CPUs, use:
|
||||
\&\fBllvm-as < /dev/null | llc \-march=xyz \-mcpu=help\fR
|
||||
.IP "\fB\-mattr\fR=\fIa1,+a2,\-a3,...\fR" 4
|
||||
.IX Item "-mattr=a1,+a2,-a3,..."
|
||||
Override or control specific attributes of the target, such as whether \s-1SIMD\s0
|
||||
operations are enabled or not. The default set of attributes is set by the
|
||||
current \s-1CPU\s0. For a list of available attributes, use:
|
||||
\&\fBllvm-as < /dev/null | llc \-march=xyz \-mattr=help\fR
|
||||
.IP "\fB\-\-disable\-fp\-elim\fR" 4
|
||||
.IX Item "--disable-fp-elim"
|
||||
Disable frame pointer elimination optimization.
|
||||
.IP "\fB\-\-disable\-excess\-fp\-precision\fR" 4
|
||||
.IX Item "--disable-excess-fp-precision"
|
||||
Disable optimizations that may produce excess precision for floating point.
|
||||
Note that this option can dramatically slow down code on some systems
|
||||
(e.g. X86).
|
||||
.IP "\fB\-\-enable\-unsafe\-fp\-math\fR" 4
|
||||
.IX Item "--enable-unsafe-fp-math"
|
||||
Enable optimizations that make unsafe assumptions about \s-1IEEE\s0 math (e.g. that
|
||||
addition is associative) or may not work for all input ranges. These
|
||||
optimizations allow the code generator to make use of some instructions which
|
||||
would otherwise not be usable (such as fsin on X86).
|
||||
.IP "\fB\-\-enable\-correct\-eh\-support\fR" 4
|
||||
.IX Item "--enable-correct-eh-support"
|
||||
Instruct the \fBlowerinvoke\fR pass to insert code for correct exception handling
|
||||
support. This is expensive and is by default omitted for efficiency.
|
||||
.IP "\fB\-\-stats\fR" 4
|
||||
.IX Item "--stats"
|
||||
Print statistics recorded by code-generation passes.
|
||||
.IP "\fB\-\-time\-passes\fR" 4
|
||||
.IX Item "--time-passes"
|
||||
Record the amount of time needed for each pass and print a report to standard
|
||||
error.
|
||||
.IP "\fB\-\-load\fR=\fIdso_path\fR" 4
|
||||
.IX Item "--load=dso_path"
|
||||
Dynamically load \fIdso_path\fR (a path to a dynamically shared object) that
|
||||
implements an \s-1LLVM\s0 target. This will permit the target name to be used with the
|
||||
\&\fB\-march\fR option so that code can be generated for that target.
|
||||
.Sh "Tuning/Configuration Options"
|
||||
.IX Subsection "Tuning/Configuration Options"
|
||||
.IP "\fB\-\-print\-machineinstrs\fR" 4
|
||||
.IX Item "--print-machineinstrs"
|
||||
Print generated machine code between compilation phases (useful for debugging).
|
||||
.IP "\fB\-\-regalloc\fR=\fIallocator\fR" 4
|
||||
.IX Item "--regalloc=allocator"
|
||||
Specify the register allocator to use. The default \fIallocator\fR is \fIlocal\fR.
|
||||
Valid register allocators are:
|
||||
.RS 4
|
||||
.IP "\fIsimple\fR" 4
|
||||
.IX Item "simple"
|
||||
Very simple \*(L"always spill\*(R" register allocator
|
||||
.IP "\fIlocal\fR" 4
|
||||
.IX Item "local"
|
||||
Local register allocator
|
||||
.IP "\fIlinearscan\fR" 4
|
||||
.IX Item "linearscan"
|
||||
Linear scan global register allocator
|
||||
.IP "\fIiterativescan\fR" 4
|
||||
.IX Item "iterativescan"
|
||||
Iterative scan global register allocator
|
||||
.RE
|
||||
.RS 4
|
||||
.RE
|
||||
.IP "\fB\-\-spiller\fR=\fIspiller\fR" 4
|
||||
.IX Item "--spiller=spiller"
|
||||
Specify the spiller to use for register allocators that support it. Currently
|
||||
this option is used only by the linear scan register allocator. The default
|
||||
\&\fIspiller\fR is \fIlocal\fR. Valid spillers are:
|
||||
.RS 4
|
||||
.IP "\fIsimple\fR" 4
|
||||
.IX Item "simple"
|
||||
Simple spiller
|
||||
.IP "\fIlocal\fR" 4
|
||||
.IX Item "local"
|
||||
Local spiller
|
||||
.RE
|
||||
.RS 4
|
||||
.RE
|
||||
.Sh "Intel IA\-32\-specific Options"
|
||||
.IX Subsection "Intel IA-32-specific Options"
|
||||
.IP "\fB\-\-x86\-asm\-syntax=att|intel\fR" 4
|
||||
.IX Item "--x86-asm-syntax=att|intel"
|
||||
Specify whether to emit assembly code in \s-1AT&T\s0 syntax (the default) or intel
|
||||
syntax.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBllc\fR succeeds, it will exit with 0. Otherwise, if an error occurs,
|
||||
it will exit with a non-zero value.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
lli
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,206 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLI 1"
|
||||
.TH LLI 1 "2006-03-13" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
lli \- directly execute programs from LLVM bytecode
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBlli\fR [\fIoptions\fR] [\fIfilename\fR] [\fIprogram args\fR]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
\&\fBlli\fR directly executes programs in \s-1LLVM\s0 bytecode format. It takes a program
|
||||
in \s-1LLVM\s0 bytecode format and executes it using a just-in-time compiler, if one is
|
||||
available for the current architecture, or an interpreter. \fBlli\fR takes all of
|
||||
the same code generator options as llc, but they are only effective when
|
||||
\&\fBlli\fR is using the just-in-time compiler.
|
||||
.PP
|
||||
If \fIfilename\fR is not specified, then \fBlli\fR reads the \s-1LLVM\s0 bytecode for the
|
||||
program from standard input.
|
||||
.PP
|
||||
The optional \fIargs\fR specified on the command line are passed to the program as
|
||||
arguments.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-help\fR" 4
|
||||
.IX Item "-help"
|
||||
Print a summary of command line options.
|
||||
.IP "\fB\-stats\fR" 4
|
||||
.IX Item "-stats"
|
||||
Print statistics from the code-generation passes. This is only meaningful for
|
||||
the just-in-time compiler, at present.
|
||||
.IP "\fB\-time\-passes\fR" 4
|
||||
.IX Item "-time-passes"
|
||||
Record the amount of time needed for each code-generation pass and print it to
|
||||
standard error.
|
||||
.IP "\fB\-mtriple\fR=\fItarget triple\fR" 4
|
||||
.IX Item "-mtriple=target triple"
|
||||
Override the target triple specified in the input bytecode file with the
|
||||
specified string. This may result in a crash if you pick an
|
||||
architecture which is not compatible with the current system.
|
||||
.IP "\fB\-march\fR=\fIarch\fR" 4
|
||||
.IX Item "-march=arch"
|
||||
Specify the architecture for which to generate assembly, overriding the target
|
||||
encoded in the bytecode file. See the output of \fBllc \-\-help\fR for a list of
|
||||
valid architectures. By default this is inferred from the target triple or
|
||||
autodetected to the current architecture.
|
||||
.IP "\fB\-mcpu\fR=\fIcpuname\fR" 4
|
||||
.IX Item "-mcpu=cpuname"
|
||||
Specify a specific chip in the current architecture to generate code for.
|
||||
By default this is inferred from the target triple and autodetected to
|
||||
the current architecture. For a list of available CPUs, use:
|
||||
\&\fBllvm-as < /dev/null | llc \-march=xyz \-mcpu=help\fR
|
||||
.IP "\fB\-mattr\fR=\fIa1,+a2,\-a3,...\fR" 4
|
||||
.IX Item "-mattr=a1,+a2,-a3,..."
|
||||
Override or control specific attributes of the target, such as whether \s-1SIMD\s0
|
||||
operations are enabled or not. The default set of attributes is set by the
|
||||
current \s-1CPU\s0. For a list of available attributes, use:
|
||||
\&\fBllvm-as < /dev/null | llc \-march=xyz \-mattr=help\fR
|
||||
.IP "\fB\-force\-interpreter\fR=\fI{false,true}\fR" 4
|
||||
.IX Item "-force-interpreter={false,true}"
|
||||
If set to true, use the interpreter even if a just-in-time compiler is available
|
||||
for this architecture. Defaults to false.
|
||||
.IP "\fB\-f\fR=\fIname\fR" 4
|
||||
.IX Item "-f=name"
|
||||
Call the function named \fIname\fR to start the program. Note: The
|
||||
function is assumed to have the C signature \f(CW\*(C`int\*(C'\fR \fIname\fR \f(CW\*(C`(int,
|
||||
char **, char **)\*(C'\fR. If you try to use this option to call a function of
|
||||
incompatible type, undefined behavior may result. Defaults to \f(CW\*(C`main\*(C'\fR.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBlli\fR fails to load the program, it will exit with an exit code of 1.
|
||||
Otherwise, it will return the exit code of the program it executes.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
llc
|
||||
.SH "AUTHOR"
|
||||
.IX Header "AUTHOR"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,461 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVM-AR 1"
|
||||
.TH LLVM-AR 1 "2006-11-20" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm\-ar \- LLVM archiver
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvm-ar\fR [\-]{dmpqrtx}[Rabfikouz] [relpos] [count] <archive> [files...]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
The \fBllvm-ar\fR command is similar to the common Unix utility, \f(CW\*(C`ar\*(C'\fR. It
|
||||
archives several files together into a single file. The intent for this is
|
||||
to produce archive libraries by \s-1LLVM\s0 bytecode that can be linked into an
|
||||
\&\s-1LLVM\s0 program. However, the archive can contain any kind of file. By default,
|
||||
\&\fBllvm-ar\fR generates a symbol table that makes linking faster because
|
||||
only the symbol table needs to be consulted, not each individual file member
|
||||
of the archive.
|
||||
.PP
|
||||
The \fBllvm-ar\fR command can be used to \fIread\fR both \s-1SVR4\s0 and \s-1BSD\s0 style archive
|
||||
files. However, it cannot be used to write them. While the \fBllvm-ar\fR command
|
||||
produces files that are \fIalmost\fR identical to the format used by other \f(CW\*(C`ar\*(C'\fR
|
||||
implementations, it has two significant departures in order to make the
|
||||
archive appropriate for \s-1LLVM\s0. The first departure is that \fBllvm-ar\fR only
|
||||
uses \s-1BSD4\s0.4 style long path names (stored immediately after the header) and
|
||||
never contains a string table for long names. The second departure is that the
|
||||
symbol table is formated for efficient construction of an in-memory data
|
||||
structure that permits rapid (red\-black tree) lookups. Consequently, archives
|
||||
produced with \fBllvm-ar\fR usually won't be readable or editable with any
|
||||
\&\f(CW\*(C`ar\*(C'\fR implementation or useful for linking. Using the \f(CW\*(C`f\*(C'\fR modifier to flatten
|
||||
file names will make the archive readable by other \f(CW\*(C`ar\*(C'\fR implementations
|
||||
but not for linking because the symbol table format for \s-1LLVM\s0 is unique. If an
|
||||
\&\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
|
||||
update) operations, the archive will be reconstructed in \s-1LLVM\s0 format. This
|
||||
means that the string table will be dropped (in deference to \s-1BSD\s0 4.4 long names)
|
||||
and an \s-1LLVM\s0 symbol table will be added (by default). The system symbol table
|
||||
will be retained.
|
||||
.PP
|
||||
Here's where \fBllvm-ar\fR departs from previous \f(CW\*(C`ar\*(C'\fR implementations:
|
||||
.IP "\fISymbol Table\fR" 4
|
||||
.IX Item "Symbol Table"
|
||||
Since \fBllvm-ar\fR is intended to archive bytecode files, the symbol table
|
||||
won't make much sense to anything but \s-1LLVM\s0. Consequently, the symbol table's
|
||||
format has been simplified. It consists simply of a sequence of pairs
|
||||
of a file member index number as an \s-1LSB\s0 4byte integer and a null-terminated
|
||||
string.
|
||||
.IP "\fILong Paths\fR" 4
|
||||
.IX Item "Long Paths"
|
||||
Some \f(CW\*(C`ar\*(C'\fR implementations (\s-1SVR4\s0) use a separate file member to record long
|
||||
path names (> 15 characters). \fBllvm-ar\fR takes the \s-1BSD\s0 4.4 and Mac \s-1OS\s0 X
|
||||
approach which is to simply store the full path name immediately preceding
|
||||
the data for the file. The path name is null terminated and may contain the
|
||||
slash (/) character.
|
||||
.IP "\fICompression\fR" 4
|
||||
.IX Item "Compression"
|
||||
\&\fBllvm-ar\fR can compress the members of an archive to save space. The
|
||||
compression used depends on what's available on the platform and what choices
|
||||
the \s-1LLVM\s0 Compressor utility makes. It generally favors bzip2 but will select
|
||||
between \*(L"no compression\*(R" or bzip2 depending on what makes sense for the
|
||||
file's content.
|
||||
.IP "\fIDirectory Recursion\fR" 4
|
||||
.IX Item "Directory Recursion"
|
||||
Most \f(CW\*(C`ar\*(C'\fR implementations do not recurse through directories but simply
|
||||
ignore directories if they are presented to the program in the \fIfiles\fR
|
||||
option. \fBllvm-ar\fR, however, can recurse through directory structures and
|
||||
add all the files under a directory, if requested.
|
||||
.IP "\fI\s-1TOC\s0 Verbose Output\fR" 4
|
||||
.IX Item "TOC Verbose Output"
|
||||
When \fBllvm-ar\fR prints out the verbose table of contents (\f(CW\*(C`tv\*(C'\fR option), it
|
||||
precedes the usual output with a character indicating the basic kind of
|
||||
content in the file. A blank means the file is a regular file. A 'Z' means
|
||||
the file is compressed. A 'B' means the file is an \s-1LLVM\s0 bytecode file. An
|
||||
\&'S' means the file is the symbol table.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
The options to \fBllvm-ar\fR are compatible with other \f(CW\*(C`ar\*(C'\fR implementations.
|
||||
However, there are a few modifiers (\fIzR\fR) that are not found in other
|
||||
\&\f(CW\*(C`ar\*(C'\fRs. The options to \fBllvm-ar\fR specify a single basic operation to
|
||||
perform on the archive, a variety of modifiers for that operation, the
|
||||
name of the archive file, and an optional list of file names. These options
|
||||
are used to determine how \fBllvm-ar\fR should process the archive file.
|
||||
.PP
|
||||
The Operations and Modifiers are explained in the sections below. The minimal
|
||||
set of options is at least one operator and the name of the archive. Typically
|
||||
archive files end with a \f(CW\*(C`.a\*(C'\fR suffix, but this is not required. Following
|
||||
the \fIarchive-name\fR comes a list of \fIfiles\fR that indicate the specific members
|
||||
of the archive to operate on. If the \fIfiles\fR option is not specified, it
|
||||
generally means either \*(L"none\*(R" or \*(L"all\*(R" members, depending on the operation.
|
||||
.Sh "Operations"
|
||||
.IX Subsection "Operations"
|
||||
.IP "d" 4
|
||||
.IX Item "d"
|
||||
Delete files from the archive. No modifiers are applicable to this operation.
|
||||
The \fIfiles\fR options specify which members should be removed from the
|
||||
archive. It is not an error if a specified file does not appear in the archive.
|
||||
If no \fIfiles\fR are specified, the archive is not modified.
|
||||
.IP "m[abi]" 4
|
||||
.IX Item "m[abi]"
|
||||
Move files from one location in the archive to another. The \fIa\fR, \fIb\fR, and
|
||||
\&\fIi\fR modifiers apply to this operation. The \fIfiles\fR will all be moved
|
||||
to the location given by the modifiers. If no modifiers are used, the files
|
||||
will be moved to the end of the archive. If no \fIfiles\fR are specified, the
|
||||
archive is not modified.
|
||||
.IP "p[k]" 4
|
||||
.IX Item "p[k]"
|
||||
Print files to the standard output. The \fIk\fR modifier applies to this
|
||||
operation. This operation simply prints the \fIfiles\fR indicated to the
|
||||
standard output. If no \fIfiles\fR are specified, the entire archive is printed.
|
||||
Printing bytecode files is ill-advised as they might confuse your terminal
|
||||
settings. The \fIp\fR operation never modifies the archive.
|
||||
.IP "q[Rfz]" 4
|
||||
.IX Item "q[Rfz]"
|
||||
Quickly append files to the end of the archive. The \fIR\fR, \fIf\fR, and \fIz\fR
|
||||
modifiers apply to this operation. This operation quickly adds the
|
||||
\&\fIfiles\fR to the archive without checking for duplicates that should be
|
||||
removed first. If no \fIfiles\fR are specified, the archive is not modified.
|
||||
Because of the way that \fBllvm-ar\fR constructs the archive file, its dubious
|
||||
whether the \fIq\fR operation is any faster than the \fIr\fR operation.
|
||||
.IP "r[Rabfuz]" 4
|
||||
.IX Item "r[Rabfuz]"
|
||||
Replace or insert file members. The \fIR\fR, \fIa\fR, \fIb\fR, \fIf\fR, \fIu\fR, and \fIz\fR
|
||||
modifiers apply to this operation. This operation will replace existing
|
||||
\&\fIfiles\fR or insert them at the end of the archive if they do not exist. If no
|
||||
\&\fIfiles\fR are specified, the archive is not modified.
|
||||
.IP "t[v]" 4
|
||||
.IX Item "t[v]"
|
||||
Print the table of contents. Without any modifiers, this operation just prints
|
||||
the names of the members to the standard output. With the \fIv\fR modifier,
|
||||
\&\fBllvm-ar\fR also prints out the file type (B=bytecode, Z=compressed, S=symbol
|
||||
table, blank=regular file), the permission mode, the owner and group, the
|
||||
size, and the date. If any \fIfiles\fR are specified, the listing is only for
|
||||
those files. If no \fIfiles\fR are specified, the table of contents for the
|
||||
whole archive is printed.
|
||||
.IP "x[oP]" 4
|
||||
.IX Item "x[oP]"
|
||||
Extract archive members back to files. The \fIo\fR modifier applies to this
|
||||
operation. This operation retrieves the indicated \fIfiles\fR from the archive
|
||||
and writes them back to the operating system's file system. If no
|
||||
\&\fIfiles\fR are specified, the entire archive is extract.
|
||||
.Sh "Modifiers (operation specific)"
|
||||
.IX Subsection "Modifiers (operation specific)"
|
||||
The modifiers below are specific to certain operations. See the Operations
|
||||
section (above) to determine which modifiers are applicable to which operations.
|
||||
.IP "[a]" 4
|
||||
.IX Item "[a]"
|
||||
When inserting or moving member files, this option specifies the destination of
|
||||
the new files as being \f(CW\*(C`a\*(C'\fRfter the \fIrelpos\fR member. If \fIrelpos\fR is not found,
|
||||
the files are placed at the end of the archive.
|
||||
.IP "[b]" 4
|
||||
.IX Item "[b]"
|
||||
When inserting or moving member files, this option specifies the destination of
|
||||
the new files as being \f(CW\*(C`b\*(C'\fRefore the \fIrelpos\fR member. If \fIrelpos\fR is not
|
||||
found, the files are placed at the end of the archive. This modifier is
|
||||
identical to the the \fIi\fR modifier.
|
||||
.IP "[f]" 4
|
||||
.IX Item "[f]"
|
||||
Normally, \fBllvm-ar\fR stores the full path name to a file as presented to it on
|
||||
the command line. With this option, truncated (15 characters max) names are
|
||||
used. This ensures name compatibility with older versions of \f(CW\*(C`ar\*(C'\fR but may also
|
||||
thwart correct extraction of the files (duplicates may overwrite). If used with
|
||||
the \fIR\fR option, the directory recursion will be performed but the file names
|
||||
will all be \f(CW\*(C`f\*(C'\fRlattened to simple file names.
|
||||
.IP "[i]" 4
|
||||
.IX Item "[i]"
|
||||
A synonym for the \fIb\fR option.
|
||||
.IP "[k]" 4
|
||||
.IX Item "[k]"
|
||||
Normally, \fBllvm-ar\fR will not print the contents of bytecode files when the
|
||||
\&\fIp\fR operation is used. This modifier defeats the default and allows the
|
||||
bytecode members to be printed.
|
||||
.IP "[N]" 4
|
||||
.IX Item "[N]"
|
||||
This option is ignored by \fBllvm-ar\fR but provided for compatibility.
|
||||
.IP "[o]" 4
|
||||
.IX Item "[o]"
|
||||
When extracting files, this option will cause \fBllvm-ar\fR to preserve the
|
||||
original modification times of the files it writes.
|
||||
.IP "[P]" 4
|
||||
.IX Item "[P]"
|
||||
use full path names when matching
|
||||
.IP "[R]" 4
|
||||
.IX Item "[R]"
|
||||
This modifier instructions the \fIr\fR option to recursively process directories.
|
||||
Without \fIR\fR, directories are ignored and only those \fIfiles\fR that refer to
|
||||
files will be added to the archive. When \fIR\fR is used, any directories specified
|
||||
with \fIfiles\fR will be scanned (recursively) to find files to be added to the
|
||||
archive. Any file whose name begins with a dot will not be added.
|
||||
.IP "[u]" 4
|
||||
.IX Item "[u]"
|
||||
When replacing existing files in the archive, only replace those files that have
|
||||
a time stamp than the time stamp of the member in the archive.
|
||||
.IP "[z]" 4
|
||||
.IX Item "[z]"
|
||||
When inserting or replacing any file in the archive, compress the file first.
|
||||
This
|
||||
modifier is safe to use when (previously) compressed bytecode files are added to
|
||||
the archive; the compressed bytecode files will not be doubly compressed.
|
||||
.Sh "Modifiers (generic)"
|
||||
.IX Subsection "Modifiers (generic)"
|
||||
The modifiers below may be applied to any operation.
|
||||
.IP "[c]" 4
|
||||
.IX Item "[c]"
|
||||
For all operations, \fBllvm-ar\fR will always create the archive if it doesn't
|
||||
exist. Normally, \fBllvm-ar\fR will print a warning message indicating that the
|
||||
archive is being created. Using this modifier turns off that warning.
|
||||
.IP "[s]" 4
|
||||
.IX Item "[s]"
|
||||
This modifier requests that an archive index (or symbol table) be added to the
|
||||
archive. This is the default mode of operation. The symbol table will contain
|
||||
all the externally visible functions and global variables defined by all the
|
||||
bytecode files in the archive. Using this modifier is more efficient that using
|
||||
llvm-ranlib which also creates the symbol table.
|
||||
.IP "[S]" 4
|
||||
.IX Item "[S]"
|
||||
This modifier is the opposite of the \fIs\fR modifier. It instructs \fBllvm-ar\fR to
|
||||
not build the symbol table. If both \fIs\fR and \fIS\fR are used, the last modifier to
|
||||
occur in the options will prevail.
|
||||
.IP "[v]" 4
|
||||
.IX Item "[v]"
|
||||
This modifier instructs \fBllvm-ar\fR to be verbose about what it is doing. Each
|
||||
editing operation taken against the archive will produce a line of output saying
|
||||
what is being done.
|
||||
.SH "STANDARDS"
|
||||
.IX Header "STANDARDS"
|
||||
The \fBllvm-ar\fR utility is intended to provide a superset of the \s-1IEEE\s0 Std 1003.2
|
||||
(\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
|
||||
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
|
||||
then \fBllvm-ar\fR will write \s-1SVR4\s0 compatible archives. Without this modifier,
|
||||
\&\fBllvm-ar\fR will write \s-1BSD4\s0.4 compatible archives that have long names
|
||||
immediately after the header and indicated using the \*(L"#1/ddd\*(R" notation for the
|
||||
name in the header.
|
||||
.SH "FILE FORMAT"
|
||||
.IX Header "FILE FORMAT"
|
||||
The file format for \s-1LLVM\s0 Archive files is similar to that of \s-1BSD\s0 4.4 or Mac \s-1OSX\s0
|
||||
archive files. In fact, except for the symbol table, the \f(CW\*(C`ar\*(C'\fR commands on those
|
||||
operating systems should be able to read \s-1LLVM\s0 archive files. The details of the
|
||||
file format follow.
|
||||
.PP
|
||||
Each archive begins with the archive magic number which is the eight printable
|
||||
characters \*(L"!<arch>\en\*(R" where \en represents the newline character (0x0A).
|
||||
Following the magic number, the file is composed of even length members that
|
||||
begin with an archive header and end with a \en padding character if necessary
|
||||
(to make the length even). Each file member is composed of a header (defined
|
||||
below), an optional newline-terminated \*(L"long file name\*(R" and the contents of
|
||||
the file.
|
||||
.PP
|
||||
The fields of the header are described in the items below. All fields of the
|
||||
header contain only \s-1ASCII\s0 characters, are left justified and are right padded
|
||||
with space characters.
|
||||
.IP "name \- char[16]" 4
|
||||
.IX Item "name - char[16]"
|
||||
This field of the header provides the name of the archive member. If the name is
|
||||
longer than 15 characters or contains a slash (/) character, then this field
|
||||
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
|
||||
is literal. In this case, the actual name of the file is provided in the \f(CW\*(C`nnn\*(C'\fR
|
||||
bytes immediately following the header. If the name is 15 characters or less, it
|
||||
is contained directly in this field and terminated with a slash (/) character.
|
||||
.IP "date \- char[12]" 4
|
||||
.IX Item "date - char[12]"
|
||||
This field provides the date of modification of the file in the form of a
|
||||
decimal encoded number that provides the number of seconds since the epoch
|
||||
(since 00:00:00 Jan 1, 1970) per Posix specifications.
|
||||
.IP "uid \- char[6]" 4
|
||||
.IX Item "uid - char[6]"
|
||||
This field provides the user id of the file encoded as a decimal \s-1ASCII\s0 string.
|
||||
This field might not make much sense on non-Unix systems. On Unix, it is the
|
||||
same value as the st_uid field of the stat structure returned by the \fIstat\fR\|(2)
|
||||
operating system call.
|
||||
.IP "gid \- char[6]" 4
|
||||
.IX Item "gid - char[6]"
|
||||
This field provides the group id of the file encoded as a decimal \s-1ASCII\s0 string.
|
||||
This field might not make much sense on non-Unix systems. On Unix, it is the
|
||||
same value as the st_gid field of the stat structure returned by the \fIstat\fR\|(2)
|
||||
operating system call.
|
||||
.IP "mode \- char[8]" 4
|
||||
.IX Item "mode - char[8]"
|
||||
This field provides the access mode of the file encoded as an octal \s-1ASCII\s0
|
||||
string. This field might not make much sense on non-Unix systems. On Unix, it
|
||||
is the same value as the st_mode field of the stat structure returned by the
|
||||
\&\fIstat\fR\|(2) operating system call.
|
||||
.IP "size \- char[10]" 4
|
||||
.IX Item "size - char[10]"
|
||||
This field provides the size of the file, in bytes, encoded as a decimal \s-1ASCII\s0
|
||||
string. If the size field is negative (starts with a minus sign, 0x02D), then
|
||||
the archive member is stored in compressed form. The first byte of the archive
|
||||
member's data indicates the compression type used. A value of 0 (0x30) indicates
|
||||
that no compression was used. A value of 2 (0x32) indicates that bzip2
|
||||
compression was used.
|
||||
.IP "fmag \- char[2]" 4
|
||||
.IX Item "fmag - char[2]"
|
||||
This field is the archive file member magic number. Its content is always the
|
||||
two characters back tick (0x60) and newline (0x0A). This provides some measure
|
||||
utility in identifying archive files that have been corrupted.
|
||||
.PP
|
||||
The \s-1LLVM\s0 symbol table has the special name \*(L"#_LLVM_SYM_TAB_#\*(R". It is presumed
|
||||
that no regular archive member file will want this name. The \s-1LLVM\s0 symbol table
|
||||
is simply composed of a sequence of triplets: byte offset, length of symbol,
|
||||
and the symbol itself. Symbols are not null or newline terminated. Here are
|
||||
the details on each of these items:
|
||||
.IP "offset \- vbr encoded 32\-bit integer" 4
|
||||
.IX Item "offset - vbr encoded 32-bit integer"
|
||||
The offset item provides the offset into the archive file where the bytecode
|
||||
member is stored that is associated with the symbol. The offset value is 0
|
||||
based at the start of the first \*(L"normal\*(R" file member. To derive the actual
|
||||
file offset of the member, you must add the number of bytes occupied by the file
|
||||
signature (8 bytes) and the symbol tables. The value of this item is encoded
|
||||
using variable bit rate encoding to reduce the size of the symbol table.
|
||||
Variable bit rate encoding uses the high bit (0x80) of each byte to indicate
|
||||
if there are more bytes to follow. The remaining 7 bits in each byte carry bits
|
||||
from the value. The final byte does not have the high bit set.
|
||||
.IP "length \- vbr encoded 32\-bit integer" 4
|
||||
.IX Item "length - vbr encoded 32-bit integer"
|
||||
The length item provides the length of the symbol that follows. Like this
|
||||
\&\fIoffset\fR item, the length is variable bit rate encoded.
|
||||
.IP "symbol \- character array" 4
|
||||
.IX Item "symbol - character array"
|
||||
The symbol item provides the text of the symbol that is associated with the
|
||||
\&\fIoffset\fR. The symbol is not terminated by any character. Its length is provided
|
||||
by the \fIlength\fR field. Note that is allowed (but unwise) to use non-printing
|
||||
characters (even 0x00) in the symbol. This allows for multiple encodings of
|
||||
symbol names.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBllvm-ar\fR succeeds, it will exit with 0. A usage error, results
|
||||
in an exit code of 1. A hard (file system typically) error results in an
|
||||
exit code of 2. Miscellaneous or unknown errors result in an
|
||||
exit code of 3.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
llvm-ranlib, \fIar\fR\|(1)
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,182 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVM-AS 1"
|
||||
.TH LLVM-AS 1 "2006-03-13" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm\-as \- LLVM assembler
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvm-as\fR [\fIoptions\fR] [\fIfilename\fR]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
\&\fBllvm-as\fR is the \s-1LLVM\s0 assembler. It reads a file containing human-readable
|
||||
\&\s-1LLVM\s0 assembly language, translates it to \s-1LLVM\s0 bytecode, and writes the result
|
||||
into a file or to standard output.
|
||||
.PP
|
||||
If \fIfilename\fR is omitted or is \f(CW\*(C`\-\*(C'\fR, then \fBllvm-as\fR reads its input from
|
||||
standard input.
|
||||
.PP
|
||||
If an output file is not specified with the \fB\-o\fR option, then
|
||||
\&\fBllvm-as\fR sends its output to a file or standard output by following
|
||||
these rules:
|
||||
.IP "\(bu" 4
|
||||
If the input is standard input, then the output is standard output.
|
||||
.IP "\(bu" 4
|
||||
If the input is a file that ends with \f(CW\*(C`.ll\*(C'\fR, then the output file is of
|
||||
the same name, except that the suffix is changed to \f(CW\*(C`.bc\*(C'\fR.
|
||||
.IP "\(bu" 4
|
||||
If the input is a file that does not end with the \f(CW\*(C`.ll\*(C'\fR suffix, then the
|
||||
output file has the same name as the input file, except that the \f(CW\*(C`.bc\*(C'\fR
|
||||
suffix is appended.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-f\fR" 4
|
||||
.IX Item "-f"
|
||||
Force overwrite. Normally, \fBllvm-as\fR will refuse to overwrite an
|
||||
output file that already exists. With this option, \fBllvm-as\fR
|
||||
will overwrite the output file and replace it with new bytecode.
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print a summary of command line options.
|
||||
.IP "\fB\-o\fR \fIfilename\fR" 4
|
||||
.IX Item "-o filename"
|
||||
Specify the output file name. If \fIfilename\fR is \f(CW\*(C`\-\*(C'\fR, then \fBllvm-as\fR
|
||||
sends its output to standard output.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBllvm-as\fR succeeds, it will exit with 0. Otherwise, if an error
|
||||
occurs, it will exit with a non-zero value.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
llvm-dis, gccas
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,370 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVM-BCANALYZER 1"
|
||||
.TH LLVM-BCANALYZER 1 "2006-03-13" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm\-bcanalyzer \- LLVM bytecode analyzer
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvm-bcanalyzer\fR [\fIoptions\fR] [\fIfilename\fR]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
The \fBllvm-bcanalyzer\fR command is a small utility for analyzing bytecode files.
|
||||
The tool reads a bytecode file (such as generated with the \fBllvm-as\fR tool) and
|
||||
produces a statistical report on the contents of the byteocde file. The tool
|
||||
can also dump a low level but human readable version of the bytecode file.
|
||||
This tool is probably not of much interest or utility except for those working
|
||||
directly with the bytecode file format. Most \s-1LLVM\s0 users can just ignore
|
||||
this tool.
|
||||
.PP
|
||||
If \fIfilename\fR is omitted or is \f(CW\*(C`\-\*(C'\fR, then \fBllvm-bcanalyzer\fR reads its input
|
||||
from standard input. This is useful for combining the tool into a pipeline.
|
||||
Output is written to the standard output.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-nodetails\fR" 4
|
||||
.IX Item "-nodetails"
|
||||
Causes \fBllvm-bcanalyzer\fR to abbreviate its output by writing out only a module
|
||||
level summary. The details for individual functions are not displayed.
|
||||
.IP "\fB\-dump\fR" 4
|
||||
.IX Item "-dump"
|
||||
Causes \fBllvm-bcanalyzer\fR to dump the bytecode in a human readable format. This
|
||||
format is significantly different from \s-1LLVM\s0 assembly and provides details about
|
||||
the encoding of the bytecode file.
|
||||
.IP "\fB\-verify\fR" 4
|
||||
.IX Item "-verify"
|
||||
Causes \fBllvm-bcanalyzer\fR to verify the module produced by reading the
|
||||
bytecode. This ensures that the statistics generated are based on a consistent
|
||||
module.
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print a summary of command line options.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBllvm-bcanalyzer\fR succeeds, it will exit with 0. Otherwise, if an error
|
||||
occurs, it will exit with a non-zero value, usually 1.
|
||||
.SH "SUMMARY OUTPUT DEFINITIONS"
|
||||
.IX Header "SUMMARY OUTPUT DEFINITIONS"
|
||||
The following items are always printed by llvm\-bcanalyzer. They comprize the
|
||||
summary output.
|
||||
.IP "\fBBytecode Analysis Of Module\fR" 4
|
||||
.IX Item "Bytecode Analysis Of Module"
|
||||
This just provides the name of the module for which bytecode analysis is being
|
||||
generated.
|
||||
.IP "\fBBytecode Version Number\fR" 4
|
||||
.IX Item "Bytecode Version Number"
|
||||
The bytecode version (not \s-1LLVM\s0 version) of the file read by the analyzer.
|
||||
.IP "\fBFile Size\fR" 4
|
||||
.IX Item "File Size"
|
||||
The size, in bytes, of the entire bytecode file.
|
||||
.IP "\fBModule Bytes\fR" 4
|
||||
.IX Item "Module Bytes"
|
||||
The size, in bytes, of the module block. Percentage is relative to File Size.
|
||||
.IP "\fBFunction Bytes\fR" 4
|
||||
.IX Item "Function Bytes"
|
||||
The size, in bytes, of all the function blocks. Percentage is relative to File
|
||||
Size.
|
||||
.IP "\fBGlobal Types Bytes\fR" 4
|
||||
.IX Item "Global Types Bytes"
|
||||
The size, in bytes, of the Global Types Pool. Percentage is relative to File
|
||||
Size. This is the size of the definitions of all types in the bytecode file.
|
||||
.IP "\fBConstant Pool Bytes\fR" 4
|
||||
.IX Item "Constant Pool Bytes"
|
||||
The size, in bytes, of the Constant Pool Blocks Percentage is relative to File
|
||||
Size.
|
||||
.IP "\fBModule Globals Bytes\fR" 4
|
||||
.IX Item "Module Globals Bytes"
|
||||
Ths size, in bytes, of the Global Variable Definitions and their initializers.
|
||||
Percentage is relative to File Size.
|
||||
.IP "\fBInstruction List Bytes\fR" 4
|
||||
.IX Item "Instruction List Bytes"
|
||||
The size, in bytes, of all the instruction lists in all the functions.
|
||||
Percentage is relative to File Size. Note that this value is also included in
|
||||
the Function Bytes.
|
||||
.IP "\fBCompaction Table Bytes\fR" 4
|
||||
.IX Item "Compaction Table Bytes"
|
||||
The size, in bytes, of all the compaction tables in all the functions.
|
||||
Percentage is relative to File Size. Note that this value is also included in
|
||||
the Function Bytes.
|
||||
.IP "\fBSymbol Table Bytes\fR" 4
|
||||
.IX Item "Symbol Table Bytes"
|
||||
The size, in bytes, of all the symbol tables in all the functions. Percentage is
|
||||
relative to File Size. Note that this value is also included in the Function
|
||||
Bytes.
|
||||
.IP "\fBDependent Libraries Bytes\fR" 4
|
||||
.IX Item "Dependent Libraries Bytes"
|
||||
The size, in bytes, of the list of dependent libraries in the module. Percentage
|
||||
is relative to File Size. Note that this value is also included in the Module
|
||||
Global Bytes.
|
||||
.IP "\fBNumber Of Bytecode Blocks\fR" 4
|
||||
.IX Item "Number Of Bytecode Blocks"
|
||||
The total number of blocks of any kind in the bytecode file.
|
||||
.IP "\fBNumber Of Functions\fR" 4
|
||||
.IX Item "Number Of Functions"
|
||||
The total number of function definitions in the bytecode file.
|
||||
.IP "\fBNumber Of Types\fR" 4
|
||||
.IX Item "Number Of Types"
|
||||
The total number of types defined in the Global Types Pool.
|
||||
.IP "\fBNumber Of Constants\fR" 4
|
||||
.IX Item "Number Of Constants"
|
||||
The total number of constants (of any type) defined in the Constant Pool.
|
||||
.IP "\fBNumber Of Basic Blocks\fR" 4
|
||||
.IX Item "Number Of Basic Blocks"
|
||||
The total number of basic blocks defined in all functions in the bytecode file.
|
||||
.IP "\fBNumber Of Instructions\fR" 4
|
||||
.IX Item "Number Of Instructions"
|
||||
The total number of instructions defined in all functions in the bytecode file.
|
||||
.IP "\fBNumber Of Long Instructions\fR" 4
|
||||
.IX Item "Number Of Long Instructions"
|
||||
The total number of long instructions defined in all functions in the bytecode
|
||||
file. Long instructions are those taking greater than 4 bytes. Typically long
|
||||
instructions are GetElementPtr with several indices, \s-1PHI\s0 nodes, and calls to
|
||||
functions with large numbers of arguments.
|
||||
.IP "\fBNumber Of Operands\fR" 4
|
||||
.IX Item "Number Of Operands"
|
||||
The total number of operands used in all instructions in the bytecode file.
|
||||
.IP "\fBNumber Of Compaction Tables\fR" 4
|
||||
.IX Item "Number Of Compaction Tables"
|
||||
The total number of compaction tables in all functions in the bytecode file.
|
||||
.IP "\fBNumber Of Symbol Tables\fR" 4
|
||||
.IX Item "Number Of Symbol Tables"
|
||||
The total number of symbol tables in all functions in the bytecode file.
|
||||
.IP "\fBNumber Of Dependent Libs\fR" 4
|
||||
.IX Item "Number Of Dependent Libs"
|
||||
The total number of dependent libraries found in the bytecode file.
|
||||
.IP "\fBTotal Instruction Size\fR" 4
|
||||
.IX Item "Total Instruction Size"
|
||||
The total size of the instructions in all functions in the bytecode file.
|
||||
.IP "\fBAverage Instruction Size\fR" 4
|
||||
.IX Item "Average Instruction Size"
|
||||
The average number of bytes per instruction across all functions in the bytecode
|
||||
file. This value is computed by dividing Total Instruction Size by Number Of
|
||||
Instructions.
|
||||
.IP "\fBMaximum Type Slot Number\fR" 4
|
||||
.IX Item "Maximum Type Slot Number"
|
||||
The maximum value used for a type's slot number. Larger slot number values take
|
||||
more bytes to encode.
|
||||
.IP "\fBMaximum Value Slot Number\fR" 4
|
||||
.IX Item "Maximum Value Slot Number"
|
||||
The maximum value used for a value's slot number. Larger slot number values take
|
||||
more bytes to encode.
|
||||
.IP "\fBBytes Per Value\fR" 4
|
||||
.IX Item "Bytes Per Value"
|
||||
The average size of a Value definition (of any type). This is computed by
|
||||
dividing File Size by the total number of values of any type.
|
||||
.IP "\fBBytes Per Global\fR" 4
|
||||
.IX Item "Bytes Per Global"
|
||||
The average size of a global definition (constants and global variables).
|
||||
.IP "\fBBytes Per Function\fR" 4
|
||||
.IX Item "Bytes Per Function"
|
||||
The average number of bytes per function definition. This is computed by
|
||||
dividing Function Bytes by Number Of Functions.
|
||||
.IP "\fB# of \s-1VBR\s0 32\-bit Integers\fR" 4
|
||||
.IX Item "# of VBR 32-bit Integers"
|
||||
The total number of 32\-bit integers encoded using the Variable Bit Rate
|
||||
encoding scheme.
|
||||
.IP "\fB# of \s-1VBR\s0 64\-bit Integers\fR" 4
|
||||
.IX Item "# of VBR 64-bit Integers"
|
||||
The total number of 64\-bit integers encoded using the Variable Bit Rate encoding
|
||||
scheme.
|
||||
.IP "\fB# of \s-1VBR\s0 Compressed Bytes\fR" 4
|
||||
.IX Item "# of VBR Compressed Bytes"
|
||||
The total number of bytes consumed by the 32\-bit and 64\-bit integers that use
|
||||
the Variable Bit Rate encoding scheme.
|
||||
.IP "\fB# of \s-1VBR\s0 Expanded Bytes\fR" 4
|
||||
.IX Item "# of VBR Expanded Bytes"
|
||||
The total number of bytes that would have been consumed by the 32\-bit and 64\-bit
|
||||
integers had they not been compressed with the Variable Bit Rage encoding
|
||||
scheme.
|
||||
.IP "\fBBytes Saved With \s-1VBR\s0\fR" 4
|
||||
.IX Item "Bytes Saved With VBR"
|
||||
The total number of bytes saved by using the Variable Bit Rate encoding scheme.
|
||||
The percentage is relative to # of \s-1VBR\s0 Expanded Bytes.
|
||||
.SH "DETAILED OUTPUT DEFINITIONS"
|
||||
.IX Header "DETAILED OUTPUT DEFINITIONS"
|
||||
The following definitions occur only if the \-nodetails option was not given.
|
||||
The detailed output provides additional information on a per-function basis.
|
||||
.IP "\fBType\fR" 4
|
||||
.IX Item "Type"
|
||||
The type signature of the function.
|
||||
.IP "\fBByte Size\fR" 4
|
||||
.IX Item "Byte Size"
|
||||
The total number of bytes in the function's block.
|
||||
.IP "\fBBasic Blocks\fR" 4
|
||||
.IX Item "Basic Blocks"
|
||||
The number of basic blocks defined by the function.
|
||||
.IP "\fBInstructions\fR" 4
|
||||
.IX Item "Instructions"
|
||||
The number of instructions defined by the function.
|
||||
.IP "\fBLong Instructions\fR" 4
|
||||
.IX Item "Long Instructions"
|
||||
The number of instructions using the long instruction format in the function.
|
||||
.IP "\fBOperands\fR" 4
|
||||
.IX Item "Operands"
|
||||
The number of operands used by all instructions in the function.
|
||||
.IP "\fBInstruction Size\fR" 4
|
||||
.IX Item "Instruction Size"
|
||||
The number of bytes consumed by instructions in the function.
|
||||
.IP "\fBAverage Instruction Size\fR" 4
|
||||
.IX Item "Average Instruction Size"
|
||||
The average number of bytes consumed by the instructions in the funtion. This
|
||||
value is computed by dividing Instruction Size by Instructions.
|
||||
.IP "\fBBytes Per Instruction\fR" 4
|
||||
.IX Item "Bytes Per Instruction"
|
||||
The average number of bytes used by the function per instruction. This value is
|
||||
computed by dividing Byte Size by Instructions. Note that this is not the same
|
||||
as Average Instruction Size. It computes a number relative to the total function
|
||||
size not just the size of the instruction list.
|
||||
.IP "\fBNumber of \s-1VBR\s0 32\-bit Integers\fR" 4
|
||||
.IX Item "Number of VBR 32-bit Integers"
|
||||
The total number of 32\-bit integers found in this function (for any use).
|
||||
.IP "\fBNumber of \s-1VBR\s0 64\-bit Integers\fR" 4
|
||||
.IX Item "Number of VBR 64-bit Integers"
|
||||
The total number of 64\-bit integers found in this function (for any use).
|
||||
.IP "\fBNumber of \s-1VBR\s0 Compressed Bytes\fR" 4
|
||||
.IX Item "Number of VBR Compressed Bytes"
|
||||
The total number of bytes in this function consumed by the 32\-bit and 64\-bit
|
||||
integers that use the Variable Bit Rate encoding scheme.
|
||||
.IP "\fBNumber of \s-1VBR\s0 Expanded Bytes\fR" 4
|
||||
.IX Item "Number of VBR Expanded Bytes"
|
||||
The total number of bytes in this function that would have been consumed by
|
||||
the 32\-bit and 64\-bit integers had they not been compressed with the Variable
|
||||
Bit Rate encoding scheme.
|
||||
.IP "\fBBytes Saved With \s-1VBR\s0\fR" 4
|
||||
.IX Item "Bytes Saved With VBR"
|
||||
The total number of bytes saved in this function by using the Variable Bit
|
||||
Rate encoding scheme. The percentage is relative to # of \s-1VBR\s0 Expanded Bytes.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
llvm-dis, <http://llvm.org/docs/BytecodeFormat.html>
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,227 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVM-CONFIG 1"
|
||||
.TH LLVM-CONFIG 1 "2006-08-01" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm\-config \- Print LLVM compilation options
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvm-config\fR \fIoption\fR [\fIcomponents\fR...]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
\&\fBllvm-config\fR makes it easier to build applications that use \s-1LLVM\s0. It can
|
||||
print the compiler flags, linker flags and object libraries needed to link
|
||||
against \s-1LLVM\s0.
|
||||
.SH "EXAMPLES"
|
||||
.IX Header "EXAMPLES"
|
||||
To link against the \s-1JIT:\s0
|
||||
.PP
|
||||
.Vb 3
|
||||
\& g++ `llvm-config --cxxflags` -o HowToUseJIT.o -c HowToUseJIT.cpp
|
||||
\& g++ `llvm-config --ldflags` -o HowToUseJIT HowToUseJIT.o \e
|
||||
\& `llvm-config --libs engine bcreader scalaropts`
|
||||
.Ve
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-\-version\fR" 4
|
||||
.IX Item "--version"
|
||||
Print the version number of \s-1LLVM\s0.
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print a summary of \fBllvm-config\fR arguments.
|
||||
.IP "\fB\-\-prefix\fR" 4
|
||||
.IX Item "--prefix"
|
||||
Print the installation prefix for \s-1LLVM\s0.
|
||||
.IP "\fB\-\-src\-root\fR" 4
|
||||
.IX Item "--src-root"
|
||||
Print the source root from which \s-1LLVM\s0 was built.
|
||||
.IP "\fB\-\-obj\-root\fR" 4
|
||||
.IX Item "--obj-root"
|
||||
Print the object root used to build \s-1LLVM\s0.
|
||||
.IP "\fB\-\-bindir\fR" 4
|
||||
.IX Item "--bindir"
|
||||
Print the installation directory for \s-1LLVM\s0 binaries.
|
||||
.IP "\fB\-\-includedir\fR" 4
|
||||
.IX Item "--includedir"
|
||||
Print the installation directory for \s-1LLVM\s0 headers.
|
||||
.IP "\fB\-\-libdir\fR" 4
|
||||
.IX Item "--libdir"
|
||||
Print the installation directory for \s-1LLVM\s0 libraries.
|
||||
.IP "\fB\-\-cxxflags\fR" 4
|
||||
.IX Item "--cxxflags"
|
||||
Print the \*(C+ compiler flags needed to use \s-1LLVM\s0 headers.
|
||||
.IP "\fB\-\-ldflags\fR" 4
|
||||
.IX Item "--ldflags"
|
||||
Print the flags needed to link against \s-1LLVM\s0 libraries.
|
||||
.IP "\fB\-\-libs\fR" 4
|
||||
.IX Item "--libs"
|
||||
Print all the libraries needed to link against the specified \s-1LLVM\s0
|
||||
\&\fIcomponents\fR, including any dependencies.
|
||||
.IP "\fB\-\-libnames\fR" 4
|
||||
.IX Item "--libnames"
|
||||
Similar to \fB\-\-libs\fR, but prints the bare filenames of the libraries
|
||||
without \fB\-l\fR or pathnames. Useful for linking against a not-yet-installed
|
||||
copy of \s-1LLVM\s0.
|
||||
.IP "\fB\-\-libfiles\fR" 4
|
||||
.IX Item "--libfiles"
|
||||
Similar to \fB\-\-libs\fR, but print the full path to each library file. This is
|
||||
useful when creating makefile dependencies, to ensure that a tool is relinked if
|
||||
any library it uses changes.
|
||||
.IP "\fB\-\-components\fR" 4
|
||||
.IX Item "--components"
|
||||
Print all valid component names.
|
||||
.IP "\fB\-\-targets\-built\fR" 4
|
||||
.IX Item "--targets-built"
|
||||
Print the component names for all targets supported by this copy of \s-1LLVM\s0.
|
||||
.IP "\fB\-\-build\-mode\fR" 4
|
||||
.IX Item "--build-mode"
|
||||
Print the build mode used when \s-1LLVM\s0 was built (e.g. Debug or Release)
|
||||
.SH "COMPONENTS"
|
||||
.IX Header "COMPONENTS"
|
||||
To print a list of all available components, run \fBllvm-config
|
||||
\&\-\-components\fR. In most cases, components correspond directly to \s-1LLVM\s0
|
||||
libraries. Useful \*(L"virtual\*(R" components include:
|
||||
.IP "\fBall\fR" 4
|
||||
.IX Item "all"
|
||||
Includes all \s-1LLVM\s0 libaries. The default if no components are specified.
|
||||
.IP "\fBbackend\fR" 4
|
||||
.IX Item "backend"
|
||||
Includes either a native backend or the C backend.
|
||||
.IP "\fBengine\fR" 4
|
||||
.IX Item "engine"
|
||||
Includes either a native \s-1JIT\s0 or the bytecode interpreter.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBllvm-config\fR succeeds, it will exit with 0. Otherwise, if an error
|
||||
occurs, it will exit with a non-zero value.
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,141 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVM-DB 1"
|
||||
.TH LLVM-DB 1 "2006-03-13" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm\-db \- LLVM debugger (alpha)
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
Details coming soon. Please see
|
||||
<http://llvm.org/docs/SourceLevelDebugging.html> in the meantime.
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,175 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVM-DIS 1"
|
||||
.TH LLVM-DIS 1 "2006-03-13" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm\-dis \- LLVM disassembler
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvm-dis\fR [\fIoptions\fR] [\fIfilename\fR]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
The \fBllvm-dis\fR command is the \s-1LLVM\s0 disassembler. It takes an \s-1LLVM\s0
|
||||
bytecode file and converts it into human-readable \s-1LLVM\s0 assembly language.
|
||||
.PP
|
||||
If filename is omitted or specified as \f(CW\*(C`\-\*(C'\fR, \fBllvm-dis\fR reads its
|
||||
input from standard input.
|
||||
.PP
|
||||
If the input is being read from standard input, then \fBllvm-dis\fR
|
||||
will send its output to standard output by default. Otherwise, the
|
||||
output will be written to a file named after the input file, with
|
||||
a \f(CW\*(C`.ll\*(C'\fR suffix added (any existing \f(CW\*(C`.bc\*(C'\fR suffix will first be
|
||||
removed). You can override the choice of output file using the
|
||||
\&\fB\-o\fR option.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-f\fR" 4
|
||||
.IX Item "-f"
|
||||
Force overwrite. Normally, \fBllvm-dis\fR will refuse to overwrite
|
||||
an output file that already exists. With this option, \fBllvm-dis\fR
|
||||
will overwrite the output file.
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print a summary of command line options.
|
||||
.IP "\fB\-o\fR \fIfilename\fR" 4
|
||||
.IX Item "-o filename"
|
||||
Specify the output file name. If \fIfilename\fR is \-, then the output is sent
|
||||
to standard output.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBllvm-dis\fR succeeds, it will exit with 0. Otherwise, if an error
|
||||
occurs, it will exit with a non-zero value.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
llvm-as
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,177 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVM-EXTRACT 1"
|
||||
.TH LLVM-EXTRACT 1 "2006-03-13" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm\-extract \- extract a function from an LLVM module
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvm-extract\fR [\fIoptions\fR] \fB\-\-func\fR \fIfunction-name\fR [\fIfilename\fR]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
The \fBllvm-extract\fR command takes the name of a function and extracts it from
|
||||
the specified \s-1LLVM\s0 bytecode file. It is primarily used as a debugging tool to
|
||||
reduce test cases from larger programs that are triggering a bug.
|
||||
.PP
|
||||
In addition to extracting the bytecode of the specified function,
|
||||
\&\fBllvm-extract\fR will also remove unreachable global variables, prototypes, and
|
||||
unused types.
|
||||
.PP
|
||||
The \fBllvm-extract\fR command reads its input from standard input if filename is
|
||||
omitted or if filename is \-. The output is always written to standard output,
|
||||
unless the \fB\-o\fR option is specified (see below).
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-f\fR" 4
|
||||
.IX Item "-f"
|
||||
Force overwrite. Normally, \fBllvm-extract\fR will refuse to overwrite an
|
||||
output file that already exists. With this option, \fBllvm-extract\fR
|
||||
will overwrite the output file and replace it with new bytecode.
|
||||
.IP "\fB\-\-func\fR \fIfunction-name\fR" 4
|
||||
.IX Item "--func function-name"
|
||||
Extract the function named \fIfunction-name\fR from the \s-1LLVM\s0 bytecode.
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print a summary of command line options.
|
||||
.IP "\fB\-o\fR \fIfilename\fR" 4
|
||||
.IX Item "-o filename"
|
||||
Specify the output filename. If filename is \*(L"\-\*(R" (the default), then
|
||||
\&\fBllvm-extract\fR sends its output to standard output.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBllvm-extract\fR succeeds, it will exit with 0. Otherwise, if an error
|
||||
occurs, it will exit with a non-zero value.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
bugpoint
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,348 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVM-LD 1"
|
||||
.TH LLVM-LD 1 "2007-05-06" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm\-ld \- LLVM linker
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvm-ld\fR <options> <files>
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
The \fBllvm-ld\fR tool takes a set of \s-1LLVM\s0 bytecode files and links them
|
||||
together into a single \s-1LLVM\s0 bytecode file. The output bytecode file can be
|
||||
another bytecode file or an executable bytecode program. Using additional
|
||||
options, \fBllvm-ld\fR is able to produce native code executables.
|
||||
.PP
|
||||
The \fBllvm-ld\fR tool is the main linker for \s-1LLVM\s0. It is used to link together
|
||||
the output of \s-1LLVM\s0 front-end compilers and run \*(L"link time\*(R" optimizations (mostly
|
||||
the inter-procedural kind).
|
||||
.PP
|
||||
The \fBllvm-ld\fR tools attemps to mimic the interface provided by the default
|
||||
system linker so that it can act as a \fIdrop-in\fR replacement.
|
||||
.Sh "Search Order"
|
||||
.IX Subsection "Search Order"
|
||||
When looking for objects specified on the command line, \fBllvm-ld\fR will search
|
||||
for the object first in the current directory and then in the directory
|
||||
specified by the \fB\s-1LLVM_LIB_SEARCH_PATH\s0\fR environment variable. If it cannot
|
||||
find the object, it fails.
|
||||
.PP
|
||||
When looking for a library specified with the \fB\-l\fR option, \fBllvm-ld\fR first
|
||||
attempts to load a file with that name from the current directory. If that
|
||||
fails, it looks for lib\fIlibrary\fR.bc, lib\fIlibrary\fR.a, or lib\fIlibrary\fR.\fIshared
|
||||
library extension\fR, in that order, in each directory added to the library search
|
||||
path with the \fB\-L\fR option. These directories are searched in the order they
|
||||
are specified. If the library cannot be located, then \fBllvm-ld\fR looks in the
|
||||
directory specified by the \fB\s-1LLVM_LIB_SEARCH_PATH\s0\fR environment variable. If it
|
||||
does not find a library there, it fails.
|
||||
.PP
|
||||
The \fIshared library extension\fR may be \fI.so\fR, \fI.dyld\fR, \fI.dll\fR, or something
|
||||
different, depending upon the system.
|
||||
.PP
|
||||
The \fB\-L\fR option is global. It does not matter where it is specified in the
|
||||
list of command line arguments; the directory is simply added to the search path
|
||||
and is applied to all libraries, preceding or succeeding, in the command line.
|
||||
.Sh "Link order"
|
||||
.IX Subsection "Link order"
|
||||
All object and bytecode files are linked first in the order they were
|
||||
specified on the command line. All library files are linked next.
|
||||
Some libraries may not be linked into the object program; see below.
|
||||
.Sh "Library Linkage"
|
||||
.IX Subsection "Library Linkage"
|
||||
Object files and static bytecode objects are always linked into the output
|
||||
file. Library archives (.a files) load only the objects within the archive
|
||||
that define symbols needed by the output file. Hence, libraries should be
|
||||
listed after the object files and libraries which need them; otherwise, the
|
||||
library may not be linked in, and the dependent library will not have its
|
||||
undefined symbols defined.
|
||||
.Sh "Native code generation"
|
||||
.IX Subsection "Native code generation"
|
||||
The \fBllvm-ld\fR program has limited support for native code generation, when
|
||||
using the \fB\-native\fR or \fB\-native\-cbe\fR options. Native code generation is
|
||||
perfomed by converting the linked bytecode into native assembly (.s) or C code
|
||||
and running the system compiler (typically gcc) on the result.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.Sh "General Options"
|
||||
.IX Subsection "General Options"
|
||||
.IP "\fB\-help\fR" 4
|
||||
.IX Item "-help"
|
||||
Print a summary of command line options.
|
||||
.IP "\fB\-v\fR" 4
|
||||
.IX Item "-v"
|
||||
Specifies verbose mode. In this mode the linker will print additional
|
||||
information about the actions it takes, programs it executes, etc.
|
||||
.IP "\fB\-stats\fR" 4
|
||||
.IX Item "-stats"
|
||||
Print statistics.
|
||||
.IP "\fB\-time\-passes\fR" 4
|
||||
.IX Item "-time-passes"
|
||||
Record the amount of time needed for each pass and print it to standard
|
||||
error.
|
||||
.Sh "Input/Output Options"
|
||||
.IX Subsection "Input/Output Options"
|
||||
.IP "\fB\-o\fR \fIfilename\fR" 4
|
||||
.IX Item "-o filename"
|
||||
This overrides the default output file and specifies the name of the file that
|
||||
should be generated by the linker. By default, \fBllvm-ld\fR generates a file named
|
||||
\&\fIa.out\fR for compatibility with \fBld\fR. The output will be written to
|
||||
\&\fIfilename\fR.
|
||||
.IP "\fB\-l\fR\fIname\fR" 4
|
||||
.IX Item "-lname"
|
||||
This option specifies the \fIname\fR of a library to search when resolving symbols
|
||||
for the program. Only the base name should be specified as \fIname\fR, without a
|
||||
\&\fIlib\fR prefix or any suffix.
|
||||
.IP "\fB\-L\fR\fIPath\fR" 4
|
||||
.IX Item "-LPath"
|
||||
This option tells \fBllvm-ld\fR to look in \fIPath\fR to find any library subsequently
|
||||
specified with the \fB\-l\fR option. The paths will be searched in the order in
|
||||
which they are specified on the command line. If the library is still not found,
|
||||
a small set of system specific directories will also be searched. Note that
|
||||
libraries specified with the \fB\-l\fR option that occur \fIbefore\fR any \fB\-L\fR options
|
||||
will not search the paths given by the \fB\-L\fR options following it.
|
||||
.IP "\fB\-link\-as\-library\fR" 4
|
||||
.IX Item "-link-as-library"
|
||||
Link the bytecode files together as a library, not an executable. In this mode,
|
||||
undefined symbols will be permitted.
|
||||
.IP "\fB\-r\fR" 4
|
||||
.IX Item "-r"
|
||||
An alias for \-link\-as\-library.
|
||||
.ie n .IP "\fB\-march=\fR""target""" 4
|
||||
.el .IP "\fB\-march=\fR\f(CWtarget\fR" 4
|
||||
.IX Item "-march=target"
|
||||
Specifies the kind of machine for which code or assembly should be generated.
|
||||
.IP "\fB\-native\fR" 4
|
||||
.IX Item "-native"
|
||||
Generate a native machine code executable.
|
||||
.Sp
|
||||
When generating native executables, \fBllvm-ld\fR first checks for a bytecode
|
||||
version of the library and links it in, if necessary. If the library is
|
||||
missing, \fBllvm-ld\fR skips it. Then, \fBllvm-ld\fR links in the same
|
||||
libraries as native code.
|
||||
.Sp
|
||||
In this way, \fBllvm-ld\fR should be able to link in optimized bytecode
|
||||
subsets of common libraries and then link in any part of the library that
|
||||
hasn't been converted to bytecode.
|
||||
.IP "\fB\-native\-cbe\fR" 4
|
||||
.IX Item "-native-cbe"
|
||||
Generate a native machine code executable with the \s-1LLVM\s0 C backend.
|
||||
.Sp
|
||||
This option is identical to the \fB\-native\fR option, but uses the
|
||||
C backend to generate code for the program instead of an \s-1LLVM\s0 native
|
||||
code generator.
|
||||
.Sh "Optimization Options"
|
||||
.IX Subsection "Optimization Options"
|
||||
.IP "\fB\-O0\fR" 4
|
||||
.IX Item "-O0"
|
||||
An alias for the \-O1 option.
|
||||
.IP "\fB\-O1\fR" 4
|
||||
.IX Item "-O1"
|
||||
Optimize for linking speed, not execution speed. The optimizer will attempt to
|
||||
reduce the size of the linked program to reduce I/O but will not otherwise
|
||||
perform any link-time optimizations.
|
||||
.IP "\fB\-O2\fR" 4
|
||||
.IX Item "-O2"
|
||||
Perform only the minimal or required set of scalar optimizations.
|
||||
.IP "\fB\-03\fR" 4
|
||||
.IX Item "-03"
|
||||
An alias for the \-O2 option.
|
||||
.IP "\fB\-04\fR" 4
|
||||
.IX Item "-04"
|
||||
Perform the standard link time inter-procedural optimizations. This will
|
||||
attempt to optimize the program taking the entire program into consideration.
|
||||
.IP "\fB\-O5\fR" 4
|
||||
.IX Item "-O5"
|
||||
Perform aggressive link time optimizations. This is the same as \-O4 but works
|
||||
more aggressively to optimize the program.
|
||||
.IP "\fB\-disable\-inlining\fR" 4
|
||||
.IX Item "-disable-inlining"
|
||||
Do not run the inlining pass. Functions will not be inlined into other
|
||||
functions.
|
||||
.IP "\fB\-disable\-opt\fR" 4
|
||||
.IX Item "-disable-opt"
|
||||
Completely disable optimization. The various \fB\-On\fR options will be ignored and
|
||||
no link time optimization passes will be run.
|
||||
.IP "\fB\-disable\-internalize\fR" 4
|
||||
.IX Item "-disable-internalize"
|
||||
Do not mark all symbols as internal.
|
||||
.IP "\fB\-verify\-each\fR" 4
|
||||
.IX Item "-verify-each"
|
||||
Run the verification pass after each of the passes to verify intermediate
|
||||
results.
|
||||
.IP "\fB\-strip\-all\fR" 4
|
||||
.IX Item "-strip-all"
|
||||
Strip all debug and symbol information from the executable to make it smaller.
|
||||
.IP "\fB\-strip\-debug\fR" 4
|
||||
.IX Item "-strip-debug"
|
||||
Strip all debug information from the executable to make it smaller.
|
||||
.IP "\fB\-s\fR" 4
|
||||
.IX Item "-s"
|
||||
An alias for \fB\-strip\-all\fR.
|
||||
.IP "\fB\-S\fR" 4
|
||||
.IX Item "-S"
|
||||
An alias for \fB\-strip\-debug\fR.
|
||||
.IP "\fB\-export\-dynamic\fR" 4
|
||||
.IX Item "-export-dynamic"
|
||||
An alias for \fB\-disable\-internalize\fR
|
||||
.IP "\fB\-load\fR \fImodule\fR" 4
|
||||
.IX Item "-load module"
|
||||
Load an optimization module, \fImodule\fR, which is expected to be a dynamic
|
||||
library that provides the function name \f(CW\*(C`RunOptimizations\*(C'\fR. This function will
|
||||
be passed the PassManager, and the optimization level (values 0\-5 based on the
|
||||
\&\fB\-On\fR option). This function may add passes to the PassManager that should be
|
||||
run. This feature allows the optimization passes of \fBllvm-ld\fR to be extended.
|
||||
.IP "\fB\-post\-link\-opt\fR\fIPath\fR" 4
|
||||
.IX Item "-post-link-optPath"
|
||||
Run post-link optimization program. After linking is completed a bytecode file
|
||||
will be generated. It will be passed to the program specified by \fIPath\fR as the
|
||||
first argument. The second argument to the program will be the name of a
|
||||
temporary file into which the program should place its optimized output. For
|
||||
example, the \*(L"no\-op optimization\*(R" would be a simple shell script:
|
||||
.Sp
|
||||
.Vb 2
|
||||
\& #!/bin/bash
|
||||
\& cp $1 $2
|
||||
.Ve
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBllvm-ld\fR succeeds, it will exit with 0 return code. If an error occurs,
|
||||
it will exit with a non-zero return code.
|
||||
.SH "ENVIRONMENT"
|
||||
.IX Header "ENVIRONMENT"
|
||||
The \f(CW\*(C`LLVM_LIB_SEARCH_PATH\*(C'\fR environment variable is used to find bytecode
|
||||
libraries. Any paths specified in this variable will be searched after the \f(CW\*(C`\-L\*(C'\fR
|
||||
options.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
llvm-link
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,186 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVM-LINK 1"
|
||||
.TH LLVM-LINK 1 "2006-03-13" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm\-link \- LLVM linker
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvm-link\fR [\fIoptions\fR] \fIfilename ...\fR
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
\&\fBllvm-link\fR takes several \s-1LLVM\s0 bytecode files and links them together into a
|
||||
single \s-1LLVM\s0 bytecode file. It writes the output file to standard output, unless
|
||||
the \fB\-o\fR option is used to specify a filename.
|
||||
.PP
|
||||
\&\fBllvm-link\fR attempts to load the input files from the current directory. If
|
||||
that fails, it looks for each file in each of the directories specified by the
|
||||
\&\fB\-L\fR options on the command line. The library search paths are global; each
|
||||
one is searched for every input file if necessary. The directories are searched
|
||||
in the order they were specified on the command line.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-L\fR \fIdirectory\fR" 4
|
||||
.IX Item "-L directory"
|
||||
Add the specified \fIdirectory\fR to the library search path. When looking for
|
||||
libraries, \fBllvm-link\fR will look in pathname for libraries. This option can be
|
||||
specified multiple times; \fBllvm-link\fR will search inside these directories in
|
||||
the order in which they were specified on the command line.
|
||||
.IP "\fB\-f\fR" 4
|
||||
.IX Item "-f"
|
||||
Overwrite output files. By default, \fBllvm-link\fR will not overwrite an output
|
||||
file if it alreadys exists.
|
||||
.IP "\fB\-o\fR \fIfilename\fR" 4
|
||||
.IX Item "-o filename"
|
||||
Specify the output file name. If \fIfilename\fR is \f(CW\*(C`\-\*(C'\fR, then \fBllvm-link\fR will
|
||||
write its output to standard output.
|
||||
.IP "\fB\-d\fR" 4
|
||||
.IX Item "-d"
|
||||
If specified, \fBllvm-link\fR prints a human-readable version of the output
|
||||
bytecode file to standard error.
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print a summary of command line options.
|
||||
.IP "\fB\-v\fR" 4
|
||||
.IX Item "-v"
|
||||
Verbose mode. Print information about what \fBllvm-link\fR is doing. This
|
||||
typically includes a message for each bytecode file linked in and for each
|
||||
library found.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBllvm-link\fR succeeds, it will exit with 0. Otherwise, if an error
|
||||
occurs, it will exit with a non-zero value.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
gccld
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,219 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVM-NM 1"
|
||||
.TH LLVM-NM 1 "2006-11-20" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm\-nm \- list LLVM bytecode file's symbol table
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvm-nm\fR [\fIoptions\fR] [\fIfilenames...\fR]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
The \fBllvm-nm\fR utility lists the names of symbols from the \s-1LLVM\s0 bytecode files,
|
||||
or \fBar\fR archives containing \s-1LLVM\s0 bytecode files, named on the command line.
|
||||
Each symbol is listed along with some simple information about its provenance.
|
||||
If no filename is specified, or \fI\-\fR is used as a filename, \fBllvm-nm\fR will
|
||||
process a bytecode file on its standard input stream.
|
||||
.PP
|
||||
\&\fBllvm-nm\fR's default output format is the traditional \s-1BSD\s0 \fBnm\fR output format.
|
||||
Each such output record consists of an (optional) 8\-digit hexadecimal address,
|
||||
followed by a type code character, followed by a name, for each symbol. One
|
||||
record is printed per line; fields are separated by spaces. When the address is
|
||||
omitted, it is replaced by 8 spaces.
|
||||
.PP
|
||||
Type code characters currently supported, and their meanings, are as follows:
|
||||
.IP "U" 4
|
||||
.IX Item "U"
|
||||
Named object is referenced but undefined in this bytecode file
|
||||
.IP "C" 4
|
||||
.IX Item "C"
|
||||
Common (multiple defs link together into one def)
|
||||
.IP "W" 4
|
||||
.IX Item "W"
|
||||
Weak reference (multiple defs link together into zero or one defs)
|
||||
.IP "t" 4
|
||||
.IX Item "t"
|
||||
Local function (text) object
|
||||
.IP "T" 4
|
||||
.IX Item "T"
|
||||
Global function (text) object
|
||||
.IP "d" 4
|
||||
.IX Item "d"
|
||||
Local data object
|
||||
.IP "D" 4
|
||||
.IX Item "D"
|
||||
Global data object
|
||||
.IP "?" 4
|
||||
Something unrecognizable
|
||||
.PP
|
||||
Because \s-1LLVM\s0 bytecode files typically contain objects that are not considered to
|
||||
have addresses until they are linked into an executable image or dynamically
|
||||
compiled \*(L"just\-in\-time\*(R", \fBllvm-nm\fR does not print an address for any symbol,
|
||||
even symbols which are defined in the bytecode file.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-P\fR" 4
|
||||
.IX Item "-P"
|
||||
Use \s-1POSIX\s0.2 output format. Alias for \fB\-\-format=posix\fR.
|
||||
.IP "\fB\-B\fR (default)" 4
|
||||
.IX Item "-B (default)"
|
||||
Use \s-1BSD\s0 output format. Alias for \fB\-\-format=bsd\fR.
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print a summary of command-line options and their meanings.
|
||||
.IP "\fB\-\-defined\-only\fR" 4
|
||||
.IX Item "--defined-only"
|
||||
Print only symbols defined in this bytecode file (as opposed to
|
||||
symbols which may be referenced by objects in this file, but not
|
||||
defined in this file.)
|
||||
.IP "\fB\-\-extern\-only\fR, \fB\-g\fR" 4
|
||||
.IX Item "--extern-only, -g"
|
||||
Print only symbols whose definitions are external; that is, accessible
|
||||
from other bytecode files.
|
||||
.IP "\fB\-\-undefined\-only\fR, \fB\-u\fR" 4
|
||||
.IX Item "--undefined-only, -u"
|
||||
Print only symbols referenced but not defined in this bytecode file.
|
||||
.IP "\fB\-\-format=\fR\fIfmt\fR, \fB\-f\fR" 4
|
||||
.IX Item "--format=fmt, -f"
|
||||
Select an output format; \fIfmt\fR may be \fIsysv\fR, \fIposix\fR, or \fIbsd\fR. The
|
||||
default is \fIbsd\fR.
|
||||
.SH "BUGS"
|
||||
.IX Header "BUGS"
|
||||
\&\fBllvm-nm\fR cannot demangle \*(C+ mangled names, like \s-1GNU\s0 \fBnm\fR can.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
\&\fBllvm-nm\fR exits with an exit code of zero.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
llvm-dis, \fIar\fR\|(1), \fInm\fR\|(1)
|
||||
.SH "AUTHOR"
|
||||
.IX Header "AUTHOR"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,173 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVM-PROF 1"
|
||||
.TH LLVM-PROF 1 "2006-03-13" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm\-prof \- print execution profile of LLVM program
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvm-prof\fR [\fIoptions\fR] [\fIbytecode file\fR] [\fIllvmprof.out\fR]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
The \fBllvm-prof\fR tool reads in an \fIllvmprof.out\fR file (which can
|
||||
optionally use a specific file with the third program argument), a bytecode file
|
||||
for the program, and produces a human readable report, suitable for determining
|
||||
where the program hotspots are.
|
||||
.PP
|
||||
This program is often used in conjunction with the \fIutils/profile.pl\fR
|
||||
script. This script automatically instruments a program, runs it with the \s-1JIT\s0,
|
||||
then runs \fBllvm-prof\fR to format a report. To get more information about
|
||||
\&\fIutils/profile.pl\fR, execute it with the \fB\-\-help\fR option.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-\-annotated\-llvm\fR or \fB\-A\fR" 4
|
||||
.IX Item "--annotated-llvm or -A"
|
||||
In addition to the normal report printed, print out the code for the
|
||||
program, annotated with execution frequency information. This can be
|
||||
particularly useful when trying to visualize how frequently basic blocks
|
||||
are executed. This is most useful with basic block profiling
|
||||
information or better.
|
||||
.IP "\fB\-\-print\-all\-code\fR" 4
|
||||
.IX Item "--print-all-code"
|
||||
Using this option enables the \fB\-\-annotated\-llvm\fR option, but it
|
||||
prints the entire module, instead of just the most commonly executed
|
||||
functions.
|
||||
.IP "\fB\-\-time\-passes\fR" 4
|
||||
.IX Item "--time-passes"
|
||||
Record the amount of time needed for each pass and print it to standard
|
||||
error.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
\&\fBllvm-prof\fR returns 1 if it cannot load the bytecode file or the profile
|
||||
information. Otherwise, it exits with zero.
|
||||
.SH "AUTHOR"
|
||||
.IX Header "AUTHOR"
|
||||
\&\fBllvm-prof\fR is maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,167 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVM-RANLIB 1"
|
||||
.TH LLVM-RANLIB 1 "2006-03-13" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm\-ranlib \- Generate index for LLVM archive
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvm-ranlib\fR [\-\-version] [\-\-help] <archive\-file>
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
The \fBllvm-ranlib\fR command is similar to the common Unix utility, \f(CW\*(C`ranlib\*(C'\fR. It
|
||||
adds or updates the symbol table in an \s-1LLVM\s0 archive file. Note that using the
|
||||
\&\fBllvm-ar\fR modifier \fIs\fR is usually more efficient than running \fBllvm-ranlib\fR
|
||||
which is only provided only for completness and compatibility. Unlike other
|
||||
implementations of \f(CW\*(C`ranlib\*(C'\fR, \fBllvm-ranlib\fR indexes \s-1LLVM\s0 bytecode files, not
|
||||
native object modules. You can list the contents of the symbol table with the
|
||||
\&\f(CW\*(C`llvm\-nm \-s\*(C'\fR command.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fIarchive-file\fR" 4
|
||||
.IX Item "archive-file"
|
||||
Specifies the archive-file to which the symbol table is added or updated.
|
||||
.IP "\fI\-\-version\fR" 4
|
||||
.IX Item "--version"
|
||||
Print the version of \fBllvm-ranlib\fR and exit without building a symbol table.
|
||||
.IP "\fI\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print usage help for \fBllvm-ranlib\fR and exit without building a symbol table.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBllvm-ranlib\fR succeeds, it will exit with 0. If an error occurs, a non-zero
|
||||
exit code will be returned.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
llvm-ar, \fIranlib\fR\|(1)
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,179 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVM-UPGRADE 1"
|
||||
.TH LLVM-UPGRADE 1 "2006-12-02" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm\-upgrade \- LLVM assembly upgrader
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvm-upgrade\fR [\fIoptions\fR] [\fIfilename\fR]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
\&\fBllvm-upgrade\fR is the \s-1LLVM\s0 assembly upgrader. It reads a file containing
|
||||
human-readable \s-1LLVM\s0 assembly language, and upgrades that assembly to the current
|
||||
version of \s-1LLVM\s0. If the input is in the form currently accepted by \s-1LLVM\s0, then
|
||||
no upgrades are performed.
|
||||
.PP
|
||||
The expected usage of this tool is as a filter, like this:
|
||||
.Sp
|
||||
.RS 4
|
||||
\&\fBllvm\-1.9/bin/llvm\-dis < 1.9.bc | llvm-upgrade | llvm\-2.0/bin/llvm\-as \-o 2.0.bc\fR
|
||||
.RE
|
||||
.PP
|
||||
If \fIfilename\fR is omitted or is \f(CW\*(C`\-\*(C'\fR, then \fBllvm-upgrade\fR reads its input from
|
||||
standard input.
|
||||
.PP
|
||||
If an output file is not specified with the \fB\-o\fR option, then
|
||||
\&\fBllvm-upgrade\fR sends its output to standard output.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-f\fR" 4
|
||||
.IX Item "-f"
|
||||
Force overwrite. Normally, \fBllvm-upgrade\fR will refuse to overwrite an
|
||||
output file that already exists. With this option, \fBllvm-upgrade\fR
|
||||
will overwrite the output file.
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print a summary of command line options.
|
||||
.IP "\fB\-o\fR \fIfilename\fR" 4
|
||||
.IX Item "-o filename"
|
||||
Specify the output file name. If \fIfilename\fR is \f(CW\*(C`\-\*(C'\fR, then \fBllvm-upgrade\fR
|
||||
sends its output to standard output.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBllvm-upgrade\fR succeeds, it will exit with 0. Otherwise, if an error
|
||||
occurs, it will exit with a non-zero value.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
llvm-as, llvm-dis
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,301 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVM2CPP 1"
|
||||
.TH LLVM2CPP 1 "2006-08-10" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm2xpp \- LLVM bytecode to LLVM C++ IR translator
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvm2cpp\fR [\fIoptions\fR] [\fIfilename\fR]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
\&\fBllvm2cpp\fR translates from \s-1LLVM\s0 bytecode (.bc files) to a
|
||||
corresponding \*(C+ source file that will make calls against the \s-1LLVM\s0 \*(C+ \s-1API\s0 to
|
||||
build the same module as the input. By default, the \*(C+ output is a complete
|
||||
program that builds the module, verifies it and then emits the module as
|
||||
\&\s-1LLVM\s0 assembly. This technique assists with testing because the input to
|
||||
\&\fBllvm2cpp\fR and the output of the generated \*(C+ program should be identical.
|
||||
.PP
|
||||
If \fIfilename\fR is omitted or is \f(CW\*(C`\-\*(C'\fR, then \fBllvm2cpp\fR reads its input from
|
||||
standard input.
|
||||
.PP
|
||||
If an output file is not specified with the \fB\-o\fR option, then
|
||||
\&\fBllvm2cpp\fR sends its output to a file or standard output by following
|
||||
these rules:
|
||||
.IP "\(bu" 4
|
||||
If the input is standard input, then the output is standard output.
|
||||
.IP "\(bu" 4
|
||||
If the input is a file that ends with \f(CW\*(C`.bc\*(C'\fR, then the output file is of
|
||||
the same name, except that the suffix is changed to \f(CW\*(C`.cpp\*(C'\fR.
|
||||
.IP "\(bu" 4
|
||||
If the input is a file that does not end with the \f(CW\*(C`.bc\*(C'\fR suffix, then the
|
||||
output file has the same name as the input file, except that the \f(CW\*(C`.cpp\*(C'\fR
|
||||
suffix is appended.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-f\fR" 4
|
||||
.IX Item "-f"
|
||||
Force overwrite. Normally, \fBllvm2cpp\fR will refuse to overwrite an
|
||||
output file that already exists. With this option, \fBllvm2cpp\fR
|
||||
will overwrite the output file and replace it with new \*(C+ source code.
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print a summary of command line options.
|
||||
.IP "\fB\-f\fR" 4
|
||||
.IX Item "-f"
|
||||
Normally, \fBllvm2cpp\fR will not overwrite an existing output file. With this
|
||||
option, that default behavior is changed and the program will overwrite existing
|
||||
output files.
|
||||
.IP "\fB\-o\fR \fIfilename\fR" 4
|
||||
.IX Item "-o filename"
|
||||
Specify the output file name. If \fIfilename\fR is \f(CW\*(C`\-\*(C'\fR, then \fBllvm2cpp\fR
|
||||
sends its output to standard output.
|
||||
.IP "\fB\-funcname\fR \fIfunctionName\fR" 4
|
||||
.IX Item "-funcname functionName"
|
||||
Specify the name of the function to be generated. The generated code contains a
|
||||
single function that produces the input module. By default its name is
|
||||
\&\fImakeLLVMModule\fR. The \fB\-funcname\fR option overrides this default and allows
|
||||
you to control the name of the generated function. This is handy in conjunction
|
||||
with the \fB\-fragment\fR option when you only want \fBllvm2cpp\fR to generate a
|
||||
single function that produces the module. With both options, such generated code
|
||||
could be \fI#included\fR into another program.
|
||||
.IP "\fB\-for\fR" 4
|
||||
.IX Item "-for"
|
||||
Specify the name of the thing for which \*(C+ code should be generated. By default
|
||||
the entire input module is re\-generated. However, use of the various \fB\-gen\-*\fR
|
||||
options can restrict what is produced. This option indicates what that
|
||||
restriction is.
|
||||
.IP "\fB\-gen\-program\fR" 4
|
||||
.IX Item "-gen-program"
|
||||
Specify that the output should be a complete program. Such program will recreate
|
||||
\&\fBllvm2cpp\fR's input as an \s-1LLVM\s0 module, verify that module, and then write out
|
||||
the module in \s-1LLVM\s0 assembly format. This is useful for doing identity tests
|
||||
where the output of the generated program is identical to the input to
|
||||
\&\fBllvm2cpp\fR. The \s-1LLVM\s0 DejaGnu test suite can make use of this fact. This is the
|
||||
default form of generated output.
|
||||
.Sp
|
||||
If the \fB\-for\fR option is given with this option, it specifies the module
|
||||
identifier to use for the module created.
|
||||
.IP "\fB\-gen\-module\fR" 4
|
||||
.IX Item "-gen-module"
|
||||
Specify that the output should be a function that regenerates the module. It is
|
||||
assumed that this output will be #included into another program that has already
|
||||
arranged for the correct header files to be #included. The function generated
|
||||
takes no arguments and returns a \fIModule*\fR.
|
||||
.Sp
|
||||
If the \fB\-for\fR option is given with this option, it specifies the module
|
||||
identifier to use in creating the module returned by the generated function.
|
||||
.IP "\fB\-gen\-contents\fR" 4
|
||||
.IX Item "-gen-contents"
|
||||
Specify that the output should be a function that adds the contents of the input
|
||||
module to another module. It is assumed that the output will be #included into
|
||||
another program that has already arranged for the correct header files to be
|
||||
#included. The function generated takes a single argument of type \fIModule*\fR and
|
||||
returns that argument. Note that Module level attributes such as endianess,
|
||||
pointer size, target triple and inline asm are not passed on from the input
|
||||
module to the destination module. Only the sub-elements of the module (types,
|
||||
constants, functions, global variables) will be added to the input module.
|
||||
.Sp
|
||||
If the \fB\-for\fR option is given with this option, it specifies the module
|
||||
identifier to set in the input module by the generated function.
|
||||
.IP "\fB\-gen\-function\fR" 4
|
||||
.IX Item "-gen-function"
|
||||
Specify that the output should be a function that produces the definitions
|
||||
necessary for a specific function to be added to a module. It is assumed that
|
||||
the output will be #included into another program that has already arranged
|
||||
for the correct header files to be #included. The function generated takes a
|
||||
single argument of type \fIModule*\fR and returns the \fIFunction*\fR that it added to
|
||||
the module. Note that only those things (types, constants, etc.) directly
|
||||
needed in the definition of the function will be placed in the generated
|
||||
function.
|
||||
.Sp
|
||||
The \fB\-for\fR option must be given with this option or an error will be produced.
|
||||
The value of the option must be the name of a function in the input module for
|
||||
which code should be generated. If the named function does not exist an error
|
||||
will be produced.
|
||||
.IP "\fB\-gen\-inline\fR" 4
|
||||
.IX Item "-gen-inline"
|
||||
This option is very analagous to \fB\-gen\-function\fR except that the generated
|
||||
function will not re-produce the target function's definition. Instead, the body
|
||||
of the target function is inserted into some other function passed as an
|
||||
argument to the generated function. Similarly any arguments to the function must
|
||||
be passed to the generated function. The result of the generated function is the
|
||||
first basic block of the target function.
|
||||
.Sp
|
||||
The \fB\-for\fR option works the same way as it does for \fB\-gen\-function\fR.
|
||||
.IP "\fB\-gen\-variable\fR" 4
|
||||
.IX Item "-gen-variable"
|
||||
Specify that the output should be a function that produces the definitions
|
||||
necessary for a specific global variable to be added to a module. It is assumed
|
||||
that the output will be #included into another program that has already arranged
|
||||
for the correct header files to be #included. The function generated takes a
|
||||
single argument of type \fIModule*\fR and returns the \fIGlobalVariable*\fR that it
|
||||
added to the module. Note that only those things (types, constants, etc.)
|
||||
directly needed in the definition of the global variable will be placed in the
|
||||
generated function.
|
||||
.Sp
|
||||
The \fB\-for\fR option must be given with this option or an error will be produced.
|
||||
THe value of the option must be the name of a global variable in the input
|
||||
module for which code should be generated. If the named global variable does not
|
||||
exist an error will be produced.
|
||||
.IP "\fB\-gen\-type\fR" 4
|
||||
.IX Item "-gen-type"
|
||||
Specify that the output should be a function that produces the definitions
|
||||
necessary for specific type to be added to a module. It is assumed that the
|
||||
otuput will be #included into another program that has already arranged for the
|
||||
correct header files to be #included. The function generated take a single
|
||||
argument of type \fIModule*\fR and returns the \fIType*\fR that it added to the
|
||||
module. Note that the generated function will only add the necessary type
|
||||
definitions to (possibly recursively) define the requested type.
|
||||
.Sp
|
||||
The \fB\-for\fR option must be given with this option or an error will be produced.
|
||||
The value of the option must be the name of a global type in the input module
|
||||
for which code should be generated. If the named type does not exist an error
|
||||
will be produced.
|
||||
.IP "\fB\-stats\fR" 4
|
||||
.IX Item "-stats"
|
||||
Show pass statistics (not interesting in this program).
|
||||
.IP "\fB\-time\-passes\fR" 4
|
||||
.IX Item "-time-passes"
|
||||
Show pass timing statistics (not interesting in this program).
|
||||
.IP "\fB\-version\fR" 4
|
||||
.IX Item "-version"
|
||||
Show the version number of this program.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBllvm2cpp\fR succeeds, it will exit with 0. Otherwise, if an error
|
||||
occurs, it will exit with a non-zero value.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
llvm-as tblgen
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Written by Reid Spencer (<http://hlvm.org>).
|
||||
@@ -0,0 +1,455 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVMC 1"
|
||||
.TH LLVMC 1 "2007-02-11" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvmc \- The LLVM Compiler Driver (experimental)
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvmc\fR [\fIoptions\fR] [\fIfilenames\fR...]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
\&\fBllvmc\fR is a configurable driver for invoking other \s-1LLVM\s0 (and non\-LLVM) tools
|
||||
in order to compile, optimize and link software for multiple languages. For
|
||||
those familiar with \s-1FSF\s0's \fBgcc\fR tool, it is very similar. Please note that
|
||||
\&\fBllvmc\fR is considered an experimental tool. \fBllvmc\fR has the following goals:
|
||||
.IP "* provide a single point of access to the \s-1LLVM\s0 tool set," 4
|
||||
.IX Item "provide a single point of access to the LLVM tool set,"
|
||||
.PD 0
|
||||
.IP "* hide the complexities of the \s-1LLVM\s0 tools through a single interface," 4
|
||||
.IX Item "hide the complexities of the LLVM tools through a single interface,"
|
||||
.IP "* make integration of existing non-LLVM tools simple," 4
|
||||
.IX Item "make integration of existing non-LLVM tools simple,"
|
||||
.IP "* extend the capabilities of minimal front ends, and" 4
|
||||
.IX Item "extend the capabilities of minimal front ends, and"
|
||||
.IP "* make the interface for compiling consistent for all languages." 4
|
||||
.IX Item "make the interface for compiling consistent for all languages."
|
||||
.PD
|
||||
.PP
|
||||
The tool itself does nothing with a user's program. It merely invokes other
|
||||
tools to get the compilation tasks done.
|
||||
.PP
|
||||
The options supported by \fBllvmc\fR generalize the compilation process and
|
||||
provide a consistent and simple interface for multiple programming languages.
|
||||
This makes it easier for developers to get their software compiled with \s-1LLVM\s0.
|
||||
Without \fBllvmc\fR, developers would need to understand how to invoke the
|
||||
front-end compiler, optimizer, assembler, and linker in order to compile their
|
||||
programs. \fBllvmc\fR's sole mission is to trivialize that process.
|
||||
.Sh "Basic Operation"
|
||||
.IX Subsection "Basic Operation"
|
||||
\&\fBllvmc\fR always takes the following basic actions:
|
||||
.IP "* Command line options and filenames are collected." 4
|
||||
.IX Item "Command line options and filenames are collected."
|
||||
The command line options provide the marching orders to \fBllvmc\fR on what actions
|
||||
it should perform. This is the \fIrequest\fR the user is making of \fBllvmc\fR and it
|
||||
is interpreted first.
|
||||
.IP "* Configuration files are read." 4
|
||||
.IX Item "Configuration files are read."
|
||||
Based on the options and the suffixes of the filenames presented, a set of
|
||||
configuration files are read to configure the actions \fBllvmc\fR will take.
|
||||
Configuration files are provided by either \s-1LLVM\s0 or the front end compiler tools
|
||||
that \fBllvmc\fR invokes. Users generally don't need to be concerned with the
|
||||
contents of the configuration files.
|
||||
.IP "* Determine actions to take." 4
|
||||
.IX Item "Determine actions to take."
|
||||
The tool chain needed to complete the task is determined. This is the primary
|
||||
work of \fBllvmc\fR. It breaks the request specified by the command line options
|
||||
into a set of basic actions to be done:
|
||||
.RS 4
|
||||
.IP "* Pre\-processing: gathering/filtering compiler input (optional)." 4
|
||||
.IX Item "Pre-processing: gathering/filtering compiler input (optional)."
|
||||
.PD 0
|
||||
.IP "* Translation: source language to bytecode conversion." 4
|
||||
.IX Item "Translation: source language to bytecode conversion."
|
||||
.IP "* Assembly: bytecode to native code conversion." 4
|
||||
.IX Item "Assembly: bytecode to native code conversion."
|
||||
.IP "* Optimization: conversion of bytecode to something that runs faster." 4
|
||||
.IX Item "Optimization: conversion of bytecode to something that runs faster."
|
||||
.IP "* Linking: combining multiple bytecodes to produce executable program." 4
|
||||
.IX Item "Linking: combining multiple bytecodes to produce executable program."
|
||||
.RE
|
||||
.RS 4
|
||||
.RE
|
||||
.IP "* Execute actions." 4
|
||||
.IX Item "Execute actions."
|
||||
.PD
|
||||
The actions determined previously are executed sequentially and then
|
||||
\&\fBllvmc\fR terminates.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.Sh "Control Options"
|
||||
.IX Subsection "Control Options"
|
||||
Control options tell \fBllvmc\fR what to do at a high level. The
|
||||
following control options are defined:
|
||||
.IP "\fB\-c\fR or \fB\-\-compile\fR" 4
|
||||
.IX Item "-c or --compile"
|
||||
This option specifies that the linking phase is not to be run. All
|
||||
previous phases, if applicable will run. This is generally how a given
|
||||
bytecode file is compiled and optimized for a source language module.
|
||||
.IP "\fB\-k\fR or \fB\-\-link\fR or default" 4
|
||||
.IX Item "-k or --link or default"
|
||||
This option (or the lack of any control option) specifies that all stages
|
||||
of compilation, optimization, and linking should be attempted. Source files
|
||||
specified on the command line will be compiled and linked with objects and
|
||||
libraries also specified.
|
||||
.IP "\fB\-S\fR" 4
|
||||
.IX Item "-S"
|
||||
This option specifies that compilation should end in the creation of
|
||||
an \s-1LLVM\s0 assembly file that can be later converted to an \s-1LLVM\s0 object
|
||||
file.
|
||||
.IP "\fB\-E\fR" 4
|
||||
.IX Item "-E"
|
||||
This option specifies that no compilation or linking should be
|
||||
performed. Only pre\-processing, if applicable to the language being
|
||||
compiled, is performed. For languages that support it, this will
|
||||
result in the output containing the raw input to the compiler.
|
||||
.Sh "Optimization Options"
|
||||
.IX Subsection "Optimization Options"
|
||||
Optimization with \fBllvmc\fR is based on goals and specified with
|
||||
the following \-O options. The specific details of which
|
||||
optimizations run is controlled by the configuration files because
|
||||
each source language will have different needs.
|
||||
.IP "\fB\-O1\fR or \fB\-O0\fR (default, fast compilation)" 4
|
||||
.IX Item "-O1 or -O0 (default, fast compilation)"
|
||||
Only those optimizations that will hasten the compilation (mostly by reducing
|
||||
the output) are applied. In general these are extremely fast and simple
|
||||
optimizations that reduce emitted code size. The goal here is not to make the
|
||||
resulting program fast but to make the compilation fast. If not specified,
|
||||
this is the default level of optimization.
|
||||
.IP "\fB\-O2\fR (basic optimization)" 4
|
||||
.IX Item "-O2 (basic optimization)"
|
||||
This level of optimization specifies a balance between generating good code
|
||||
that will execute reasonably quickly and not spending too much time optimizing
|
||||
the code to get there. For example, this level of optimization may include
|
||||
things like global common subexpression elimination, aggressive dead code
|
||||
elimination, and scalar replication.
|
||||
.IP "\fB\-O3\fR (aggressive optimization)" 4
|
||||
.IX Item "-O3 (aggressive optimization)"
|
||||
This level of optimization aggressively optimizes each set of files compiled
|
||||
together. However, no link-time inter-procedural optimization is performed.
|
||||
This level implies all the optimizations of the \fB\-O1\fR and \fB\-O2\fR optimization
|
||||
levels, and should also provide loop optimizations and compile time
|
||||
inter-procedural optimizations. Essentially, this level tries to do as much
|
||||
as it can with the input it is given but doesn't do any link time \s-1IPO\s0.
|
||||
.IP "\fB\-O4\fR (link time optimization)" 4
|
||||
.IX Item "-O4 (link time optimization)"
|
||||
In addition to the previous three levels of optimization, this level of
|
||||
optimization aggressively optimizes each program at link time. It employs
|
||||
basic analysis and basic link-time inter-procedural optimizations,
|
||||
considering the program as a whole.
|
||||
.IP "\fB\-O5\fR (aggressive link time optimization)" 4
|
||||
.IX Item "-O5 (aggressive link time optimization)"
|
||||
This is the same as \fB\-O4\fR except it employs aggressive analyses and
|
||||
aggressive inter-procedural optimization.
|
||||
.IP "\fB\-O6\fR (profile guided optimization: not implemented)" 4
|
||||
.IX Item "-O6 (profile guided optimization: not implemented)"
|
||||
This is the same as \fB\-O5\fR except that it employs profile-guided
|
||||
re-optimization of the program after it has executed. Note that this implies
|
||||
a single level of re-optimization based on runtime profile analysis. Once
|
||||
the re-optimization has completed, the profiling instrumentation is
|
||||
removed and final optimizations are employed.
|
||||
.IP "\fB\-O7\fR (lifelong optimization: not implemented)" 4
|
||||
.IX Item "-O7 (lifelong optimization: not implemented)"
|
||||
This is the same as \fB\-O5\fR and similar to \fB\-O6\fR except that re-optimization
|
||||
is performed through the life of the program. That is, each run will update
|
||||
the profile by which future re-optimizations are directed.
|
||||
.Sh "Input Options"
|
||||
.IX Subsection "Input Options"
|
||||
.IP "\fB\-l\fR \fI\s-1LIBRARY\s0\fR" 4
|
||||
.IX Item "-l LIBRARY"
|
||||
This option instructs \fBllvmc\fR to locate a library named \fI\s-1LIBRARY\s0\fR and search
|
||||
it for unresolved symbols when linking the program.
|
||||
.IP "\fB\-L\fR \fIpath\fR" 4
|
||||
.IX Item "-L path"
|
||||
This option instructs \fBllvmc\fR to add \fIpath\fR to the list of places in which
|
||||
the linker will
|
||||
.IP "\fB\-x\fR \fI\s-1LANGUAGE\s0\fR" 4
|
||||
.IX Item "-x LANGUAGE"
|
||||
This option instructs \fBllvmc\fR to regard the following input files as
|
||||
containing programs in the language \fI\s-1LANGUAGE\s0\fR. Normally, input file languages
|
||||
are identified by their suffix but this option will override that default
|
||||
behavior. The \fB\-x\fR option stays in effect until the end of the options or
|
||||
a new \fB\-x\fR option is encountered.
|
||||
.Sh "Output Options"
|
||||
.IX Subsection "Output Options"
|
||||
.IP "\fB\-m\fR\fIarch\fR" 4
|
||||
.IX Item "-march"
|
||||
This option selects the back end code generator to use. The \fIarch\fR portion
|
||||
of the option names the back end to use.
|
||||
.IP "\fB\-\-native\fR" 4
|
||||
.IX Item "--native"
|
||||
Normally, \fBllvmc\fR produces bytecode files at most stages of compilation.
|
||||
With this option, \fBllvmc\fR will arrange for native object files to be
|
||||
generated with the \fB\-c\fR option, native assembly files to be generated
|
||||
with the \fB\-S\fR option, and native executables to be generated with the
|
||||
\&\fB\-\-link\fR option. In the case of the \fB\-E\fR option, the output will not
|
||||
differ as there is no \fInative\fR version of pre-processed output.
|
||||
.IP "\fB\-o\fR \fIfilename\fR" 4
|
||||
.IX Item "-o filename"
|
||||
Specify the output file name. The contents of the file depend on other
|
||||
options.
|
||||
.Sh "Information Options"
|
||||
.IX Subsection "Information Options"
|
||||
.IP "\fB\-n\fR or \fB\-\-no\-op\fR" 4
|
||||
.IX Item "-n or --no-op"
|
||||
This option tells \fBllvmc\fR to do everything but actually execute the
|
||||
resulting tools. In combination with the \fB\-v\fR option, this causes \fBllvmc\fR
|
||||
to merely print out what it would have done.
|
||||
.IP "\fB\-v\fR or \fB\-\-verbose\fR" 4
|
||||
.IX Item "-v or --verbose"
|
||||
This option will cause \fBllvmc\fR to print out (on standard output) each of the
|
||||
actions it takes to accomplish the objective. The output will immediately
|
||||
precede the invocation of other tools.
|
||||
.IP "\fB\-\-stats\fR" 4
|
||||
.IX Item "--stats"
|
||||
Print all statistics gathered during the compilation to the standard error.
|
||||
Note that this option is merely passed through to the sub-tools to do with
|
||||
as they please.
|
||||
.IP "\fB\-\-time\-passes\fR" 4
|
||||
.IX Item "--time-passes"
|
||||
Record the amount of time needed for each optimization pass and print it
|
||||
to standard error. Like \fB\-\-stats\fR this option is just passed through to
|
||||
the sub-tools to do with as they please.
|
||||
.IP "\fB\-\-time\-programs\fR" 4
|
||||
.IX Item "--time-programs"
|
||||
Record the amount of time each program (compilation tool) takes and print
|
||||
it to the standard error.
|
||||
.Sh "Language Specific Options"
|
||||
.IX Subsection "Language Specific Options"
|
||||
.IP "\fB\-T,pre\fR=\fIoptions\fR" 4
|
||||
.IX Item "-T,pre=options"
|
||||
Pass an arbitrary option to the pre\-processor.
|
||||
.IP "\fB\-T,opt\fR=\fIoptions\fR" 4
|
||||
.IX Item "-T,opt=options"
|
||||
Pass an arbitrary option to the optimizer.
|
||||
.IP "\fB\-T,lnk\fR=\fIoptions\fR" 4
|
||||
.IX Item "-T,lnk=options"
|
||||
Pass an arbitrary option to the linker.
|
||||
.IP "\fB\-T,asm\fR=\fIoptions\fR" 4
|
||||
.IX Item "-T,asm=options"
|
||||
Pass an arbitrary option to the code generator.
|
||||
.Sh "C/\*(C+ Specific Options"
|
||||
.IX Subsection "C/ Specific Options"
|
||||
.IP "\fB\-I\fR\fIpath\fR" 4
|
||||
.IX Item "-Ipath"
|
||||
This option is just passed through to a C or \*(C+ front end compiler to tell it
|
||||
where include files can be found.
|
||||
.IP "\fB\-D\fR\fIsymbol\fR" 4
|
||||
.IX Item "-Dsymbol"
|
||||
This option is just passed through to a C or \*(C+ front end compiler to tell it
|
||||
to define a symbol.
|
||||
.Sh "Miscellaneous Options"
|
||||
.IX Subsection "Miscellaneous Options"
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print a summary of command line options.
|
||||
.IP "\fB\-\-version\fR" 4
|
||||
.IX Item "--version"
|
||||
This option will cause \fBllvmc\fR to print out its version number and terminate.
|
||||
.Sh "Advanced Options"
|
||||
.IX Subsection "Advanced Options"
|
||||
You better know what you're doing if you use these options. Improper use
|
||||
of these options can produce drastically wrong results.
|
||||
.IP "\fB\-\-config\-dir\fR \fIdirname\fR" 4
|
||||
.IX Item "--config-dir dirname"
|
||||
This option tells \fBllvmc\fR to read configuration data from the \fIdirectory\fR
|
||||
named \fIdirname\fR. Data from such directories will be read in the order
|
||||
specified on the command line after all other standard configuration files have
|
||||
been read. This allows users or groups of users to conveniently create
|
||||
their own configuration directories in addition to the standard ones to which
|
||||
they may not have write access.
|
||||
.Sh "Unimplemented Options"
|
||||
.IX Subsection "Unimplemented Options"
|
||||
The options below are not currently implemented in \fBllvmc\fR but will be
|
||||
eventually. They are documented here as \*(L"future design\*(R".
|
||||
.IP "\fB\-\-show\-config\fR \fI[suffixes...]\fR" 4
|
||||
.IX Item "--show-config [suffixes...]"
|
||||
When this option is given, the only action taken by \fBllvmc\fR is to show its
|
||||
final configuration state in the form of a configuration file. No compilation
|
||||
tasks will be conducted when this option is given; processing will stop once
|
||||
the configuration has been printed. The optional (comma separated) list of
|
||||
suffixes controls what is printed. Without any suffixes, the configuration
|
||||
for all languages is printed. With suffixes, only the languages pertaining
|
||||
to those file suffixes will be printed. The configuration information is
|
||||
printed after all command line options and configuration files have been
|
||||
read and processed. This allows the user to verify that the correct
|
||||
configuration data has been read by \fBllvmc\fR.
|
||||
.IP "\fB\-\-config\fR :\fIsection\fR:\fIname\fR=\fIvalue\fR" 4
|
||||
.IX Item "--config :section:name=value"
|
||||
This option instructs \fBllvmc\fR to accept \fIvalue\fR as the value for configuration
|
||||
item \fIname\fR in the section named \fIsection\fR. This is a quick way to override
|
||||
a configuration item on the command line without resorting to changing the
|
||||
configuration files.
|
||||
.IP "\fB\-\-config\-only\-from\fR \fIdirname\fR" 4
|
||||
.IX Item "--config-only-from dirname"
|
||||
This option tells \fBllvmc\fR to skip the normal processing of configuration
|
||||
files and only configure from the contents of the \fIdirname\fR directory. Multiple
|
||||
\&\fB\-\-config\-only\-from\fR options may be given in which case the directories are
|
||||
read in the order given on the command line.
|
||||
.IP "\fB\-\-emit\-raw\-code\fR" 4
|
||||
.IX Item "--emit-raw-code"
|
||||
No optimization is done whatsoever. The compilers invoked by \fBllvmc\fR with
|
||||
this option given will be instructed to produce raw, unoptimized code. This
|
||||
option is useful only to front end language developers and therefore does not
|
||||
participate in the list of \fB\-O\fR options. This is distinctly different from
|
||||
the \fB\-O0\fR option (a synonym for \fB\-O1\fR) because those optimizations will
|
||||
reduce code size to make compilation faster. With \fB\-\-emit\-raw\-code\fR, only
|
||||
the full raw code produced by the compiler will be generated.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBllvmc\fR succeeds, it will exit with 0. Otherwise, if an error
|
||||
occurs, it will exit with a non-zero value and no compilation actions
|
||||
will be taken. If one of the compilation tools returns a non-zero
|
||||
status, pending actions will be discarded and \fBllvmc\fR will return the
|
||||
same result code as the failing compilation tool.
|
||||
.SH "DEFICIENCIES"
|
||||
.IX Header "DEFICIENCIES"
|
||||
\&\fBllvmc\fR is considered an experimental \s-1LLVM\s0 tool because it has these
|
||||
deficiencies:
|
||||
.IP "Insufficient support for native linking" 4
|
||||
.IX Item "Insufficient support for native linking"
|
||||
Because \fBllvm-ld\fR doesn't handle native linking, neither can \fBllvmc\fR
|
||||
.IP "Poor configuration support" 4
|
||||
.IX Item "Poor configuration support"
|
||||
The support for configuring new languages, etc. is weak. There are many
|
||||
command line configurations that cannot be achieved with the current
|
||||
support. Furthermore the grammar is cumbersome for configuration files.
|
||||
Please see <http://llvm.org/PR686> for further details.
|
||||
.IP "Does not handle target specific configurations" 4
|
||||
.IX Item "Does not handle target specific configurations"
|
||||
This is one of the major deficiencies, also addressed in
|
||||
<http://llvm.org/PR686>
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
llvm-as, llvm-dis, llc, llvm-link
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,194 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVMGCC 1"
|
||||
.TH LLVMGCC 1 "2007-02-11" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm\-gcc \- LLVM C front\-end
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvm-gcc\fR [\fIoptions\fR] \fIfilename\fR
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
The \fBllvm-gcc\fR command is the \s-1LLVM\s0 C front end. It is a modified
|
||||
version of gcc that compiles C/ObjC programs into native objects, \s-1LLVM\s0
|
||||
bytecode or \s-1LLVM\s0 assembly language, depending upon the options.
|
||||
.PP
|
||||
By default, \fBllvm-gcc\fR compiles to native objects just like \s-1GCC\s0 does. If the
|
||||
\&\fB\-emit\-llvm\fR option is given then it will generate \s-1LLVM\s0 bytecode files instead.
|
||||
If \fB\-S\fR (assembly) is also given, then it will generate \s-1LLVM\s0 assembly.
|
||||
.PP
|
||||
Being derived from the \s-1GNU\s0 Compiler Collection, \fBllvm-gcc\fR has many
|
||||
of gcc's features and accepts most of gcc's options. It handles a
|
||||
number of gcc's extensions to the C programming language.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print a summary of command line options.
|
||||
.IP "\fB\-S\fR" 4
|
||||
.IX Item "-S"
|
||||
Do not generate an \s-1LLVM\s0 bytecode file. Rather, compile the source
|
||||
file into an \s-1LLVM\s0 assembly language file.
|
||||
.IP "\fB\-c\fR" 4
|
||||
.IX Item "-c"
|
||||
Do not generate a linked executable. Rather, compile the source
|
||||
file into an \s-1LLVM\s0 bytecode file. This bytecode file can then be
|
||||
linked with other bytecode files later on to generate a full \s-1LLVM\s0
|
||||
executable.
|
||||
.IP "\fB\-o\fR \fIfilename\fR" 4
|
||||
.IX Item "-o filename"
|
||||
Specify the output file to be \fIfilename\fR.
|
||||
.IP "\fB\-I\fR \fIdirectory\fR" 4
|
||||
.IX Item "-I directory"
|
||||
Add a directory to the header file search path. This option can be
|
||||
repeated.
|
||||
.IP "\fB\-L\fR \fIdirectory\fR" 4
|
||||
.IX Item "-L directory"
|
||||
Add \fIdirectory\fR to the library search path. This option can be
|
||||
repeated.
|
||||
.IP "\fB\-l\fR\fIname\fR" 4
|
||||
.IX Item "-lname"
|
||||
Link in the library lib\fIname\fR.[bc | a | so]. This library should
|
||||
be a bytecode library.
|
||||
.IP "\fB\-emit\-llvm\fR" 4
|
||||
.IX Item "-emit-llvm"
|
||||
Make the output be \s-1LLVM\s0 bytecode (or assembly) instead of native object (or
|
||||
assembly).
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBllvm-gcc\fR succeeds, it will exit with 0. Otherwise, if an error
|
||||
occurs, it will exit with a non-zero value.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
llvm\-g++
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,194 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LLVMGXX 1"
|
||||
.TH LLVMGXX 1 "2007-02-11" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
llvm\-g++ \- LLVM C++ front\-end
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBllvm\-g++\fR [\fIoptions\fR] \fIfilename\fR
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
The \fBllvm\-g++\fR command is the \s-1LLVM\s0 \*(C+ front end. It is a modified
|
||||
version of g++ that compiles \*(C+/ObjC++ programs into native code,
|
||||
\&\s-1LLVM\s0 bytecode or assembly language, depending upon the options.
|
||||
.PP
|
||||
By default, \fBllvm\-g++\fR compiles to native objects just like \s-1GCC\s0 does. If the
|
||||
\&\fB\-emit\-llvm\fR option is given then it will generate \s-1LLVM\s0 bytecode files instead.
|
||||
If \fB\-S\fR (assembly) is also given, then it will generate \s-1LLVM\s0 assembly.
|
||||
.PP
|
||||
Being derived from the \s-1GNU\s0 Compiler Collection, \fBllvm\-g++\fR has many
|
||||
of g++'s features and accepts most of g++'s options. It handles a
|
||||
number of g++'s extensions to the \*(C+ programming language.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print a summary of command line options.
|
||||
.IP "\fB\-S\fR" 4
|
||||
.IX Item "-S"
|
||||
Do not generate an \s-1LLVM\s0 bytecode file. Rather, compile the source
|
||||
file into an \s-1LLVM\s0 assembly language file.
|
||||
.IP "\fB\-c\fR" 4
|
||||
.IX Item "-c"
|
||||
Do not generate a linked executable. Rather, compile the source
|
||||
file into an \s-1LLVM\s0 bytecode file. This bytecode file can then be
|
||||
linked with other bytecode files later on to generate a full \s-1LLVM\s0
|
||||
executable.
|
||||
.IP "\fB\-o\fR \fIfilename\fR" 4
|
||||
.IX Item "-o filename"
|
||||
Specify the output file to be \fIfilename\fR.
|
||||
.IP "\fB\-I\fR \fIdirectory\fR" 4
|
||||
.IX Item "-I directory"
|
||||
Add a directory to the header file search path. This option can be
|
||||
repeated.
|
||||
.IP "\fB\-L\fR \fIdirectory\fR" 4
|
||||
.IX Item "-L directory"
|
||||
Add \fIdirectory\fR to the library search path. This option can be
|
||||
repeated.
|
||||
.IP "\fB\-l\fR\fIname\fR" 4
|
||||
.IX Item "-lname"
|
||||
Link in the library lib\fIname\fR.[bc | a | so]. This library should
|
||||
be a bytecode library.
|
||||
.IP "\fB\-emit\-llvm\fR" 4
|
||||
.IX Item "-emit-llvm"
|
||||
Make the output be \s-1LLVM\s0 bytecode (or assembly) instead of native object (or
|
||||
assembly).
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBllvm\-g++\fR succeeds, it will exit with 0. Otherwise, if an error
|
||||
occurs, it will exit with a non-zero value.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
llvm-gcc
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,246 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "OPT 1"
|
||||
.TH OPT 1 "2007-02-02" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
opt \- LLVM optimizer
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBopt\fR [\fIoptions\fR] [\fIfilename\fR]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
The \fBopt\fR command is the modular \s-1LLVM\s0 optimizer and analyzer. It takes \s-1LLVM\s0
|
||||
bytecode as input, runs the specified optimizations or analyses on it, and then
|
||||
outputs the optimized \s-1LLVM\s0 bytecode or the analysis results. The function of
|
||||
\&\fBopt\fR depends on whether the \fB\-analyze\fR option is given.
|
||||
.PP
|
||||
When \fB\-analyze\fR is specified, \fBopt\fR performs various analyses of \s-1LLVM\s0
|
||||
bytecode. It will usually print the results on standard output, but in a few
|
||||
cases, it will print output to standard error or generate a file with the
|
||||
analysis output, which is usually done when the output is meant for another
|
||||
program.
|
||||
.PP
|
||||
While \fB\-analyze\fR is \fInot\fR given, \fBopt\fR attempts to produce an optimized
|
||||
bytecode file. The optimizations available via \fBopt\fR depend upon what
|
||||
libraries were linked into it as well as any additional libraries that have
|
||||
been loaded with the \fB\-load\fR option. Use the \fB\-help\fR option to determine
|
||||
what optimizations you can use.
|
||||
.PP
|
||||
If \fIfilename\fR is omitted from the command line or is \fI\-\fR, \fBopt\fR reads its
|
||||
input from standard input. The input must be an \s-1LLVM\s0 bytecode file.
|
||||
.PP
|
||||
If an output filename is not specified with the \fB\-o\fR option, \fBopt\fR
|
||||
writes its output to the standard output.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-f\fR" 4
|
||||
.IX Item "-f"
|
||||
Force overwrite. Normally, \fBopt\fR will refuse to overwrite an
|
||||
output file that already exists. With this option, \fBopt\fR will
|
||||
overwrite the output file and replace it with new bytecode.
|
||||
.IP "\fB\-help\fR" 4
|
||||
.IX Item "-help"
|
||||
Print a summary of command line options.
|
||||
.IP "\fB\-o\fR \fIfilename\fR" 4
|
||||
.IX Item "-o filename"
|
||||
Specify the output filename.
|
||||
.IP "\fB\-{passname}\fR" 4
|
||||
.IX Item "-{passname}"
|
||||
\&\fBopt\fR provides the ability to run any of \s-1LLVM\s0's optimization or analysis passes
|
||||
in any order. The \fB\-help\fR option lists all the passes available. The order in
|
||||
which the options occur on the command line are the order in which they are
|
||||
executed (within pass constraints).
|
||||
.IP "\fB\-std\-compile\-opts\fR" 4
|
||||
.IX Item "-std-compile-opts"
|
||||
This is short hand for a standard list of \fIcompile time optimization\fR passes.
|
||||
This is typically used to optimize the output from the llvm-gcc front end. It
|
||||
might be useful for other front end compilers as well. To discover the full set
|
||||
of options available, use the following command:
|
||||
.Sp
|
||||
.Vb 1
|
||||
\& llvm-as < /dev/null | opt -std-compile-opts -disable-output -debug-pass=Arguments
|
||||
.Ve
|
||||
.IP "\fB\-disable\-inlining\fR" 4
|
||||
.IX Item "-disable-inlining"
|
||||
This option is only meaningful when \fB\-std\-compile\-opts\fR is given. It simply
|
||||
removes the inlining pass from the standard list.
|
||||
.IP "\fB\-disable\-opt\fR" 4
|
||||
.IX Item "-disable-opt"
|
||||
This option is only meaningful when \fB\-std\-compile\-opts\fR is given. It disables
|
||||
most, but not all, of the \fB\-std\-compile\-opts\fR. The ones that remain are
|
||||
\&\fB\-verify\fR, \fB\-lower\-setjmp\fR, and \fB\-funcresolve\fR.
|
||||
.IP "\fB\-strip\-debug\fR" 4
|
||||
.IX Item "-strip-debug"
|
||||
This option causes opt to strip debug information from the module before
|
||||
applying other optimizations. It is essentially the same as \fB\-strip\fR but it
|
||||
ensures that stripping of debug information is done first.
|
||||
.IP "\fB\-verify\-each\fR" 4
|
||||
.IX Item "-verify-each"
|
||||
This option causes opt to add a verify pass after every pass otherwise specified
|
||||
on the command line (including \fB\-verify\fR). This is useful for cases where it
|
||||
is suspected that a pass is creating an invalid module but it is not clear which
|
||||
pass is doing it. The combination of \fB\-std\-compile\-opts\fR and \fB\-verify\-each\fR
|
||||
can quickly track down this kind of problem.
|
||||
.IP "\fB\-profile\-info\-file\fR \fIfilename\fR" 4
|
||||
.IX Item "-profile-info-file filename"
|
||||
Specify the name of the file loaded by the \-profile\-loader option.
|
||||
.IP "\fB\-stats\fR" 4
|
||||
.IX Item "-stats"
|
||||
Print statistics.
|
||||
.IP "\fB\-time\-passes\fR" 4
|
||||
.IX Item "-time-passes"
|
||||
Record the amount of time needed for each pass and print it to standard
|
||||
error.
|
||||
.IP "\fB\-debug\fR" 4
|
||||
.IX Item "-debug"
|
||||
If this is a debug build, this option will enable debug printouts
|
||||
from passes which use the \fI\s-1\fIDEBUG\s0()\fI\fR macro. See the \fB\s-1LLVM\s0 Programmer's
|
||||
Manual\fR, section \fI#DEBUG\fR for more information.
|
||||
.IP "\fB\-load\fR=\fIplugin\fR" 4
|
||||
.IX Item "-load=plugin"
|
||||
Load the dynamic object \fIplugin\fR. This object should register new optimization
|
||||
or analysis passes. Once loaded, the object will add new command line options to
|
||||
enable various optimizations or analyses. To see the new complete list of
|
||||
optimizations, use the \fB\-help\fR and \fB\-load\fR options together. For example:
|
||||
.Sp
|
||||
.Vb 1
|
||||
\& opt -load=plugin.so -help
|
||||
.Ve
|
||||
.IP "\fB\-p\fR" 4
|
||||
.IX Item "-p"
|
||||
Print module after each transformation.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBopt\fR succeeds, it will exit with 0. Otherwise, if an error
|
||||
occurs, it will exit with a non-zero value.
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,198 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "STKRC 1"
|
||||
.TH STKRC 1 "2006-03-13" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
stkrc \- Stacker Compiler
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBstkrc\fR [\fIoptions\fR] [\fIfilename\fR]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
The \fBstkrc\fR command is the compiler for the Stacker language. Stacker is a
|
||||
simple stack based, Forth-like language that was written as a demonstration
|
||||
language for \s-1LLVM\s0. For details on the language, please see
|
||||
<http://llvm.org/docs/Stacker.html> . The \fBstkrc\fR compiler is fairly
|
||||
minimal. It compiles to bytecode only and doesn't perform any optimizations.
|
||||
The output of stkrc (a bytecode file) can be piped through other \s-1LLVM\s0 tools
|
||||
for optimization and linking.
|
||||
.PP
|
||||
If \fIfilename\fR is omitted or is \f(CW\*(C`\-\*(C'\fR, then \fBstkrc\fR reads its input
|
||||
from standard input. This is useful for combining the tool into a pipeline.
|
||||
.PP
|
||||
If an output file is not specified with the \fB\-o\fR option, then
|
||||
\&\fBllvm-as\fR sends its output to a file or standard output by following
|
||||
these rules:
|
||||
.IP "\(bu" 4
|
||||
If the input is standard input, then the output is standard output.
|
||||
.IP "\(bu" 4
|
||||
If the input is a file that ends with \f(CW\*(C`.st\*(C'\fR, then the output file is of
|
||||
the same name, except that the suffix is changed to \f(CW\*(C`.bc\*(C'\fR.
|
||||
.IP "\(bu" 4
|
||||
If the input is a file that does not end with the \f(CW\*(C`.st\*(C'\fR suffix, then the
|
||||
output file has the same name as the input file, except that the \f(CW\*(C`.bc\*(C'\fR
|
||||
suffix is appended.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-o\fR \fIfilename\fR" 4
|
||||
.IX Item "-o filename"
|
||||
Specify the output file name. If \fIfilename\fR is \f(CW\*(C`\-\*(C'\fR, then \fBllvm-as\fR
|
||||
sends its output to standard output.
|
||||
.IP "\fB\-stats\fR" 4
|
||||
.IX Item "-stats"
|
||||
Print statistics acquired during compilation.
|
||||
.IP "\fB\-time\-passes\fR" 4
|
||||
.IX Item "-time-passes"
|
||||
Record the amount of time needed for each pass and print it to standard
|
||||
error.
|
||||
.IP "\fB\-f\fR" 4
|
||||
.IX Item "-f"
|
||||
Force the output to be written. Normally, \fBstkrc\fR won't overwrite an existing
|
||||
bytecode file. This option overrides that behavior.
|
||||
.IP "\fB\-s\fR \fIstacksize\fR" 4
|
||||
.IX Item "-s stacksize"
|
||||
Specify the stack size for the program. The default stack size, 1024, should be
|
||||
sufficient for most programs. For very large programs, especially those that
|
||||
recurse a lot, you might want to provide a larger value. Each unit of this
|
||||
value consumes 8 bytes of memory.
|
||||
.IP "\fB\-help\fR" 4
|
||||
.IX Item "-help"
|
||||
Print a summary of command line options.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBstkrc\fR succeeds, it will exit with 0. Otherwise, if an error
|
||||
occurs, it will exit with a non-zero value, usually 1.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
llvm-as, <http://llvm.org/docs/Stacker.html>
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by the \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
@@ -0,0 +1,215 @@
|
||||
.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.14
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
.ne 5
|
||||
.PP
|
||||
\fB\\$1\fR
|
||||
.PP
|
||||
..
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "TBLGEN 1"
|
||||
.TH TBLGEN 1 "2006-06-02" "CVS" "LLVM Command Guide"
|
||||
.SH "NAME"
|
||||
tblgen \- Target Description To C++ Code Generator
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
\&\fBtblgen\fR [\fIoptions\fR] [\fIfilename\fR]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
\&\fBtblgen\fR translates from target description (.td) files into \*(C+ code that can
|
||||
be included in the definition of an \s-1LLVM\s0 target library. Most users of \s-1LLVM\s0 will
|
||||
not need to use this program. It is only for assisting with writing an \s-1LLVM\s0
|
||||
target backend.
|
||||
.PP
|
||||
The input and output of \fBtblgen\fR is beyond the scope of this short
|
||||
introduction. Please see the \fICodeGeneration\fR page in the \s-1LLVM\s0 documentation.
|
||||
.PP
|
||||
The \fIfilename\fR argument specifies the name of a Target Description (.td) file
|
||||
to read as input.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
Print a summary of command line options.
|
||||
.IP "\fB\-o\fR \fIfilename\fR" 4
|
||||
.IX Item "-o filename"
|
||||
Specify the output file name. If \fIfilename\fR is \f(CW\*(C`\-\*(C'\fR, then \fBtblgen\fR
|
||||
sends its output to standard output.
|
||||
.IP "\fB\-I\fR \fIdirectory\fR" 4
|
||||
.IX Item "-I directory"
|
||||
Specify where to find other target description files for inclusion. The
|
||||
\&\fIdirectory\fR value should be a full or partial path to a directory that contains
|
||||
target description files.
|
||||
.IP "\fB\-asmwriternum\fR \fIN\fR" 4
|
||||
.IX Item "-asmwriternum N"
|
||||
Make \-gen\-asm\-writer emit assembly writer number \fIN\fR.
|
||||
.IP "\fB\-class\fR \fIclass Name\fR" 4
|
||||
.IX Item "-class class Name"
|
||||
Print the enumeration list for this class.
|
||||
.IP "\fB\-print\-records\fR" 4
|
||||
.IX Item "-print-records"
|
||||
Print all records to standard output (default).
|
||||
.IP "\fB\-print\-enums\fR" 4
|
||||
.IX Item "-print-enums"
|
||||
Print enumeration values for a class
|
||||
.IP "\fB\-gen\-emitter\fR" 4
|
||||
.IX Item "-gen-emitter"
|
||||
Generate machine code emitter.
|
||||
.IP "\fB\-gen\-register\-enums\fR" 4
|
||||
.IX Item "-gen-register-enums"
|
||||
Generate the enumeration values for all registers.
|
||||
.IP "\fB\-gen\-register\-desc\fR" 4
|
||||
.IX Item "-gen-register-desc"
|
||||
Generate a register info description for each register.
|
||||
.IP "\fB\-gen\-register\-desc\-header\fR" 4
|
||||
.IX Item "-gen-register-desc-header"
|
||||
Generate a register info description header for each register.
|
||||
.IP "\fB\-gen\-instr\-enums\fR" 4
|
||||
.IX Item "-gen-instr-enums"
|
||||
Generate enumeration values for instructions.
|
||||
.IP "\fB\-gen\-instr\-desc\fR" 4
|
||||
.IX Item "-gen-instr-desc"
|
||||
Generate instruction descriptions.
|
||||
.IP "\fB\-gen\-asm\-writer\fR" 4
|
||||
.IX Item "-gen-asm-writer"
|
||||
Generate the assembly writer.
|
||||
.IP "\fB\-gen\-dag\-isel\fR" 4
|
||||
.IX Item "-gen-dag-isel"
|
||||
Generate a \s-1DAG\s0 (Directed Acycle Graph) instruction selector.
|
||||
.IP "\fB\-gen\-subtarget\fR" 4
|
||||
.IX Item "-gen-subtarget"
|
||||
Generate subtarget enumerations.
|
||||
.IP "\fB\-gen\-intrinsic\fR" 4
|
||||
.IX Item "-gen-intrinsic"
|
||||
Generate intrinsic information.
|
||||
.IP "\fB\-version\fR" 4
|
||||
.IX Item "-version"
|
||||
Show the version number of this program.
|
||||
.SH "EXIT STATUS"
|
||||
.IX Header "EXIT STATUS"
|
||||
If \fBtblgen\fR succeeds, it will exit with 0. Otherwise, if an error
|
||||
occurs, it will exit with a non-zero value.
|
||||
.SH "AUTHORS"
|
||||
.IX Header "AUTHORS"
|
||||
Maintained by The \s-1LLVM\s0 Team (<http://llvm.org>).
|
||||
Reference in new issue
Block a user