.\" 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>).
