9 <h1>LLVM: <tt>llvmgcc</tt> tool</h1>
20 <tt>llvmgcc [options] filename</tt>
25 The <tt>llvmgcc</tt> command is the LLVM C front end. It is a modified version
26 of the <a href="http://gcc.gnu.org">GNU Compiler Collection</a> (GCC) that takes
27 C programs and compiles them into LLVM bytecode or assembly language, depending
31 Unless the <tt>-S</tt> option is specified, <tt>llvmgcc</tt> will use the
32 <a href="gccas.html"><tt>gccas</tt></a> program to perform some optimizations
33 and create an LLVM bytecode file. Unless the <tt>-c</tt> option is specified,
34 <tt>llvmgcc</tt> will also use the <a href="gccld.html"><tt>gccld</tt></a>
35 program to perform further optimizations and link the resulting bytecode
36 file(s) with support libraries to create an executable program.
39 Being derived from GCC, llvmgcc has many of GCC's features and accepts most of
40 GCC's options. It handles a number of GCC's extensions to the C programming
44 Below you will find several commonly used options:
53 Do not generate an LLVM bytecode file. Rather, compile the source file
54 into an LLVM assembly language file.
59 Do not generate a linked bytecode executable. Rather, compile the source
60 file into an LLVM bytecode file. This bytecode file can then be linked
61 with other bytecode files later to generate a full LLVM executable.
64 <li> -o <i>filename</i>
66 Specify the output file to be <i>filename</i>.
69 <li> -I <i>directory</i>
71 Add a directory to the header file search path. This option can be
75 <li> -L <i>directory</i>
77 Add <i>directory</i> to the library search path. This option can be
83 Link in the library lib<i>name</i>.[bc | a | so]. This library should
84 be a bytecode library.
89 Pass <i>option</i> to the linker program, <a
90 href="gccld.html"><tt>gccld</tt></a>.
98 If <tt>llvmgcc</tt> succeeds, it will exit with 0. Otherwise, if an error
99 occurs, it will exit with a non-zero value.
104 <A HREF="llvmgxx.html"><tt>llvmg++</tt></A>,
105 <A HREF="gccas.html"><tt>gccas</tt></A>,
106 <A HREF="gccld.html"><tt>gccld</tt></A>,
107 and the Info documentation for <tt>gcc</tt>.
110 Maintained by the <a href="http://llvm.cs.uiuc.edu">LLVM Team</a>.