| <html> | |
| <title> | |
| LLVM: llvmgcc tool | |
| </title> | |
| <body bgcolor=white> | |
| <center> | |
| <h1>LLVM: <tt>llvmgcc</tt> tool</h1> | |
| </center> | |
| <HR> | |
| <h3>NAME</h3> | |
| <tt>llvmgcc</tt> | |
| <h3> | |
| SYNOPSIS | |
| </h3> | |
| <tt>llvmgcc [options] filename</tt> | |
| <h3> | |
| DESCRIPTION | |
| </h3> | |
| The <tt>llvmgcc</tt> command is the LLVM C front end. It is a modified version | |
| of the <a href="http://gcc.gnu.org">GNU Compiler Collection</a> (GCC) that takes | |
| C programs and compiles them into LLVM bytecode or assembly language, depending | |
| upon the options. | |
| <p> | |
| Unless the <tt>-S</tt> option is specified, <tt>llvmgcc</tt> will use the | |
| <a href="gccas.html"><tt>gccas</tt></a> program to perform some optimizations | |
| and create an LLVM bytecode file. Unless the <tt>-c</tt> option is specified, | |
| <tt>llvmgcc</tt> will also use the <a href="gccld.html"><tt>gccld</tt></a> | |
| program to perform further optimizations and link the resulting bytecode | |
| file(s) with support libraries to create an executable program. | |
| <p> | |
| Being derived from GCC, llvmgcc has many of GCC's features and accepts most of | |
| GCC's options. It handles a number of GCC's extensions to the C programming | |
| language. | |
| <p> | |
| Below you will find several commonly used options: | |
| <h3> | |
| OPTIONS | |
| </h3> | |
| <ul> | |
| <li> -S | |
| <br> | |
| Do not generate an LLVM bytecode file. Rather, compile the source file | |
| into an LLVM assembly language file. | |
| <p> | |
| <li> -c | |
| <br> | |
| Do not generate a linked bytecode executable. Rather, compile the source | |
| file into an LLVM bytecode file. This bytecode file can then be linked | |
| with other bytecode files later to generate a full LLVM executable. | |
| <p> | |
| <li> -o <i>filename</i> | |
| <br> | |
| Specify the output file to be <i>filename</i>. | |
| <p> | |
| <li> -I <i>directory</i> | |
| <br> | |
| Add a directory to the header file search path. This option can be | |
| repeated. | |
| <p> | |
| <li> -L <i>directory</i> | |
| <br> | |
| Add <i>directory</i> to the library search path. This option can be | |
| repeated. | |
| <p> | |
| <li> -l<i>name</i> | |
| <br> | |
| Link in the library lib<i>name</i>.[bc | a | so]. This library should | |
| be a bytecode library. | |
| <p> | |
| <li>-Wl,<i>option</i> | |
| <br> | |
| Pass <i>option</i> to the linker program, <a | |
| href="gccld.html"><tt>gccld</tt></a>. | |
| <p> | |
| </ul> | |
| <h3> | |
| EXIT STATUS | |
| </h3> | |
| If <tt>llvmgcc</tt> succeeds, it will exit with 0. Otherwise, if an error | |
| occurs, it will exit with a non-zero value. | |
| <h3> | |
| SEE ALSO | |
| </h3> | |
| <A HREF="llvmgxx.html"><tt>llvmg++</tt></A>, | |
| <A HREF="gccas.html"><tt>gccas</tt></A>, | |
| <A HREF="gccld.html"><tt>gccld</tt></A>, | |
| and the Info documentation for <tt>gcc</tt>. | |
| <HR> | |
| Maintained by the <a href="http://llvm.cs.uiuc.edu">LLVM Team</a>. | |
| </body> | |
| </html> | |