.\" Automatically generated by Pod::Man 2.1801 (Pod::Simple 3.05) .\" .\" Standard preamble: .\" ======================================================================== .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. \*(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- .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\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" 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 "2010-05-06" "CVS" "LLVM Command Guide" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" llvmc \- The LLVM Compiler Driver (WIP) .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. .SH "OPTIONS" .IX Header "OPTIONS" .SS "Built-in Options" .IX Subsection "Built-in Options" \&\s-1LLVMC\s0 has some built-in options that can't be overridden in the configuration libraries. .IP "\fB\-o\fR \fIfilename\fR" 4 .IX Item "-o filename" Output file name. .IP "\fB\-x\fR \fIlanguage\fR" 4 .IX Item "-x language" Specify the language of the following input files until the next \fB\-x\fR option. .IP "\fB\-load\fR \fIplugin_name\fR" 4 .IX Item "-load plugin_name" Load the specified plugin \s-1DLL\s0. Example: \&\-load\ \f(CW$LLVM_DIR\fR/Release/lib/LLVMCSimple.so. .IP "\fB\-v\fR or \fB\-\-verbose\fR" 4 .IX Item "-v or --verbose" Enable verbose mode, i.e. print out all executed commands. .IP "\fB\-\-check\-graph\fR" 4 .IX Item "--check-graph" Check the compilation for common errors like mismatched output/input language names, multiple default edges and cycles. Because of plugins, these checks can't be performed at compile-time. Exit with code zero if no errors were found, and return the number of found errors otherwise. Hidden option, useful for debugging \&\s-1LLVMC\s0 plugins. .IP "\fB\-\-view\-graph\fR" 4 .IX Item "--view-graph" Show a graphical representation of the compilation graph and exit. Requires that you have \fIdot\fR and \fIgv\fR programs installed. Hidden option, useful for debugging \s-1LLVMC\s0 plugins. .IP "\fB\-\-write\-graph\fR" 4 .IX Item "--write-graph" Write a \fIcompilation\-graph.dot\fR file in the current directory with the compilation graph description in Graphviz format (identical to the file used by the \fB\-\-view\-graph\fR option). The \fB\-o\fR option can be used to set the output file name. Hidden option, useful for debugging \s-1LLVMC\s0 plugins. .IP "\fB\-\-save\-temps\fR" 4 .IX Item "--save-temps" Write temporary files to the current directory and do not delete them on exit. This option can also take an argument: the \fI\-\-save\-temps=obj\fR switch will write files into the directory specified with the \fI\-o\fR option. The \&\fI\-\-save\-temps=cwd\fR and \fI\-\-save\-temps\fR switches are both synonyms for the default behaviour. .IP "\fB\-\-temp\-dir\fR \fIdirectory\fR" 4 .IX Item "--temp-dir directory" Store temporary files in the given directory. This directory is deleted on exit unless \fI\-\-save\-temps\fR is specified. If \fI\-\-save\-temps=obj\fR is also specified, \&\fI\-\-temp\-dir\fR is given the precedence. .IP "\fB\-help\fR" 4 .IX Item "-help" Print a summary of command-line options and exit. .IP "\fB\-help\-hidden\fR" 4 .IX Item "-help-hidden" Print a summary of command-line options and exit. Print help even for options intended for developers. .IP "\fB\-\-version\fR" 4 .IX Item "--version" Print version information and exit. .IP "\fB@\fR\fIfile\fR" 4 .IX Item "@file" Read command-line options from \fIfile\fR. The options read are inserted in place of the original @\fIfile\fR option. If \fIfile\fR does not exist, or cannot be read, then the option will be treated literally, and not removed. .Sp Options in \fIfile\fR are separated by whitespace. A whitespace character may be included in an option by surrounding the entire option in either single or double quotes. Any character (including a backslash) may be included by prefixing the character to be included with a backslash. The file may itself contain additional @\fIfile\fR options; any such options will be processed recursively. .SS "Control Options" .IX Subsection "Control Options" By default, \s-1LLVMC\s0 is built with some standard configuration libraries that define the following options: .IP "\fB\-clang\fR" 4 .IX Item "-clang" Use Clang instead of llvm-gcc. .IP "\fB\-opt\fR" 4 .IX Item "-opt" Enable optimization passes with \fBopt\fR. To pass options to the \fBopt\fR program use the \fB\-Wo,\fR option. .IP "\fB\-I\fR \fIdirectory\fR" 4 .IX Item "-I directory" Add a directory to the header file search path. .IP "\fB\-L\fR \fIdirectory\fR" 4 .IX Item "-L directory" Add \fIdirectory\fR to the library search path. .IP "\fB\-F\fR \fIdirectory\fR" 4 .IX Item "-F directory" Add \fIdirectory\fR to the framework search path. .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 bitcode library. .IP "\fB\-framework\fR \fIname\fR" 4 .IX Item "-framework name" Link in the library lib\fIname\fR.[bc | a | so]. This library should be a bitcode library. .IP "\fB\-emit\-llvm\fR" 4 .IX Item "-emit-llvm" Output \s-1LLVM\s0 bitcode (with \fB\-c\fR) or assembly (with \fB\-S\fR) instead of native object (or assembly). If \fB\-emit\-llvm\fR is given without either \fB\-c\fR or \fB\-S\fR it has no effect. .IP "\fB\-Wa\fR" 4 .IX Item "-Wa" Pass options to assembler. .IP "\fB\-Wl\fR" 4 .IX Item "-Wl" Pass options to linker. .IP "\fB\-Wo\fR" 4 .IX Item "-Wo" Pass options to opt. .IP "\fB\-Wllc\fR" 4 .IX Item "-Wllc" Pass options to llc (code generator). .SH "EXIT STATUS" .IX Header "EXIT STATUS" If \fBllvmc\fR succeeds, it will exit with code 0. Otherwise, if an error occurs, it will exit with a non-zero value. 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 "SEE ALSO" .IX Header "SEE ALSO" llvm-gcc, llvm\-g++, llvm-as, llvm-dis, llc, llvm-link .SH "AUTHORS" .IX Header "AUTHORS" Maintained by the \s-1LLVM\s0 Team ().