9 <h1>LLVM: <tt>llvmg++</tt> tool</h1>
17 <tt>llvmg++ [options] filename</tt>
21 The <tt>llvmg++</tt> command is the LLVM C++ front end. It is a modified
22 version of g++ that takes C++ programs and compiles them into LLVM bytecode or
23 assembly language, depending upon the options.
26 Unless the <tt>-S</tt> option is specified, <tt>llvmg++</tt> will use the
27 <a href="gccas.html"><tt>gccas</tt></a> program to perform some optimizations
28 and create an LLVM bytecode file. Unless the <tt>-c</tt> option is specified,
29 <tt>llvmg++</tt> will also use the <a href="gccld.html"><tt>gccld</tt></a>
30 program to perform further optimizations and link the resulting bytecode
31 file(s) with support libraries to create an executable program.
34 Being derived from the <a href="http://gcc.gnu.org">GNU Compiler Collection</a>,
35 <tt>llvmg++</tt> has many of g++'s features and accepts most of g++'s options.
36 It handles a number of g++'s extensions to the C++ programming language.
39 Below you will find several commonly used options:
48 Do not generate an LLVM bytecode file. Rather, compile the source file
49 into an LLVM assembly language file.
54 Do not generate a linked executable. Rather, compile the source file
55 into an LLVM bytecode file. This bytecode file can then be linked with
56 other bytecode files later on to generate a full LLVM executable.
59 <li> -o <i>filename</i>
61 Specify the output file to be <i>filename</i>.
64 <li> -I <i>directory</i>
66 Add a directory to the header file search path. This option can be
70 <li> -L <i>directory</i>
72 Add <i>directory</i> to the library search path. This option can be
78 Link in the library lib<i>name</i>.[bc | a | so]. This library should
79 be a bytecode library.
84 Pass <i>option</i> to the linker (usually gccld).
93 If <tt>llvmg++</tt> succeeds, it will exit with 0. Otherwise, if an error
94 occurs, it will exit with a non-zero value.
99 <A HREF="llvmgcc.html"><tt>llvmg++</tt></A>,
100 <A HREF="gccas.html"><tt>gccas</tt></A>,
101 <A HREF="gccld.html"><tt>gccld</tt></A>
104 Maintained by the <a href="http://llvm.cs.uiuc.edu">LLVM Team</a>.