summaryrefslogtreecommitdiffstats
path: root/usr.bin/clang/lli/lli.1
diff options
context:
space:
mode:
Diffstat (limited to 'usr.bin/clang/lli/lli.1')
-rw-r--r--usr.bin/clang/lli/lli.1350
1 files changed, 350 insertions, 0 deletions
diff --git a/usr.bin/clang/lli/lli.1 b/usr.bin/clang/lli/lli.1
new file mode 100644
index 0000000..16b8374
--- /dev/null
+++ b/usr.bin/clang/lli/lli.1
@@ -0,0 +1,350 @@
+.\" $FreeBSD$
+.TH "LLI" "1" "2013-04-11" "3.3" "LLVM"
+.SH NAME
+lli \- directly execute programs from LLVM bitcode
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.\" Man page generated from reStructuredText.
+.
+.SH SYNOPSIS
+.sp
+\fBlli\fP [\fIoptions\fP] [\fIfilename\fP] [\fIprogram args\fP]
+.SH DESCRIPTION
+.sp
+\fBlli\fP directly executes programs in LLVM bitcode format. It takes a program
+in LLVM bitcode format and executes it using a just\-in\-time compiler, if one is
+available for the current architecture, or an interpreter. \fBlli\fP takes all of
+the same code generator options as llc|llc, but they are only effective when
+\fBlli\fP is using the just\-in\-time compiler.
+.sp
+If \fIfilename\fP is not specified, then \fBlli\fP reads the LLVM bitcode for the
+program from standard input.
+.sp
+The optional \fIargs\fP specified on the command line are passed to the program as
+arguments.
+.SH GENERAL OPTIONS
+.sp
+\fB\-fake\-argv0\fP=\fIexecutable\fP
+.INDENT 0.0
+.INDENT 3.5
+Override the \fBargv[0]\fP value passed into the executing program.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-force\-interpreter\fP=\fI{false,true}\fP
+.INDENT 0.0
+.INDENT 3.5
+If set to true, use the interpreter even if a just\-in\-time compiler is available
+for this architecture. Defaults to false.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-help\fP
+.INDENT 0.0
+.INDENT 3.5
+Print a summary of command line options.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-load\fP=\fIpluginfilename\fP
+.INDENT 0.0
+.INDENT 3.5
+Causes \fBlli\fP to load the plugin (shared object) named \fIpluginfilename\fP and use
+it for optimization.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-stats\fP
+.INDENT 0.0
+.INDENT 3.5
+Print statistics from the code\-generation passes. This is only meaningful for
+the just\-in\-time compiler, at present.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-time\-passes\fP
+.INDENT 0.0
+.INDENT 3.5
+Record the amount of time needed for each code\-generation pass and print it to
+standard error.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-version\fP
+.INDENT 0.0
+.INDENT 3.5
+Print out the version of \fBlli\fP and exit without doing anything else.
+.UNINDENT
+.UNINDENT
+.SH TARGET OPTIONS
+.sp
+\fB\-mtriple\fP=\fItarget triple\fP
+.INDENT 0.0
+.INDENT 3.5
+Override the target triple specified in the input bitcode file with the
+specified string. This may result in a crash if you pick an
+architecture which is not compatible with the current system.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-march\fP=\fIarch\fP
+.INDENT 0.0
+.INDENT 3.5
+Specify the architecture for which to generate assembly, overriding the target
+encoded in the bitcode file. See the output of \fBllc \-help\fP for a list of
+valid architectures. By default this is inferred from the target triple or
+autodetected to the current architecture.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-mcpu\fP=\fIcpuname\fP
+.INDENT 0.0
+.INDENT 3.5
+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\fP
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-mattr\fP=\fIa1,+a2,\-a3,...\fP
+.INDENT 0.0
+.INDENT 3.5
+Override or control specific attributes of the target, such as whether SIMD
+operations are enabled or not. The default set of attributes is set by the
+current CPU. For a list of available attributes, use:
+\fBllvm\-as < /dev/null | llc \-march=xyz \-mattr=help\fP
+.UNINDENT
+.UNINDENT
+.SH FLOATING POINT OPTIONS
+.sp
+\fB\-disable\-excess\-fp\-precision\fP
+.INDENT 0.0
+.INDENT 3.5
+Disable optimizations that may increase floating point precision.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-enable\-no\-infs\-fp\-math\fP
+.INDENT 0.0
+.INDENT 3.5
+Enable optimizations that assume no Inf values.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-enable\-no\-nans\-fp\-math\fP
+.INDENT 0.0
+.INDENT 3.5
+Enable optimizations that assume no NAN values.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-enable\-unsafe\-fp\-math\fP
+.INDENT 0.0
+.INDENT 3.5
+Causes \fBlli\fP to enable optimizations that may decrease floating point
+precision.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-soft\-float\fP
+.INDENT 0.0
+.INDENT 3.5
+Causes \fBlli\fP to generate software floating point library calls instead of
+equivalent hardware instructions.
+.UNINDENT
+.UNINDENT
+.SH CODE GENERATION OPTIONS
+.sp
+\fB\-code\-model\fP=\fImodel\fP
+.INDENT 0.0
+.INDENT 3.5
+Choose the code model from:
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+default: Target default code model
+small: Small code model
+kernel: Kernel code model
+medium: Medium code model
+large: Large code model
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-disable\-post\-RA\-scheduler\fP
+.INDENT 0.0
+.INDENT 3.5
+Disable scheduling after register allocation.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-disable\-spill\-fusing\fP
+.INDENT 0.0
+.INDENT 3.5
+Disable fusing of spill code into instructions.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-enable\-correct\-eh\-support\fP
+.INDENT 0.0
+.INDENT 3.5
+Make the \-lowerinvoke pass insert expensive, but correct, EH code.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-jit\-enable\-eh\fP
+.INDENT 0.0
+.INDENT 3.5
+Exception handling should be enabled in the just\-in\-time compiler.
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-join\-liveintervals\fP
+.INDENT 0.0
+.INDENT 3.5
+Coalesce copies (default=true).
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-nozero\-initialized\-in\-bss\fP Don\(aqt place zero\-initialized symbols into the BSS section.
+.sp
+\fB\-pre\-RA\-sched\fP=\fIscheduler\fP
+.INDENT 0.0
+.INDENT 3.5
+Instruction schedulers available (before register allocation):
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+=default: Best scheduler for the target
+=none: No scheduling: breadth first sequencing
+=simple: Simple two pass scheduling: minimize critical path and maximize processor utilization
+=simple\-noitin: Simple two pass scheduling: Same as simple except using generic latency
+=list\-burr: Bottom\-up register reduction list scheduling
+=list\-tdrr: Top\-down register reduction list scheduling
+=list\-td: Top\-down list scheduler \-print\-machineinstrs \- Print generated machine code
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-regalloc\fP=\fIallocator\fP
+.INDENT 0.0
+.INDENT 3.5
+Register allocator to use (default=linearscan)
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+=bigblock: Big\-block register allocator
+=linearscan: linear scan register allocator =local \- local register allocator
+=simple: simple register allocator
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-relocation\-model\fP=\fImodel\fP
+.INDENT 0.0
+.INDENT 3.5
+Choose relocation model from:
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+=default: Target default relocation model
+=static: Non\-relocatable code =pic \- Fully relocatable, position independent code
+=dynamic\-no\-pic: Relocatable external references, non\-relocatable code
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-spiller\fP
+.INDENT 0.0
+.INDENT 3.5
+Spiller to use (default=local)
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+=simple: simple spiller
+=local: local spiller
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.UNINDENT
+.UNINDENT
+.sp
+\fB\-x86\-asm\-syntax\fP=\fIsyntax\fP
+.INDENT 0.0
+.INDENT 3.5
+Choose style of code to emit from X86 backend:
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+=att: Emit AT&T\-style assembly
+=intel: Emit Intel\-style assembly
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.UNINDENT
+.UNINDENT
+.SH EXIT STATUS
+.sp
+If \fBlli\fP 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
+.sp
+llc|llc
+.SH AUTHOR
+Maintained by The LLVM Team (http://llvm.org/).
+.SH COPYRIGHT
+2003-2013, LLVM Project
+.\" Generated by docutils manpage writer.
+.
OpenPOWER on IntegriCloud