<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>