NAME

llvm-gcc - LLVM C front-end


SYNOPSIS

llvm-gcc [options] filename


DESCRIPTION

The llvm-gcc command is the LLVM C front end. It is a modified version of gcc that takes C programs and compiles them into LLVM bytecode or assembly language, depending upon the options.

Unless the -S option is specified, llvm-gcc will use the gccas program to perform some optimizations and create an LLVM bytecode file. Unless the -c option is specified, llvm-gcc will also use the gccld program to perform further optimizations and link the resulting bytecode file(s) with support libraries to create an executable program.

Being derived from the GNU Compiler Collection, llvm-gcc 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.


OPTIONS

--help
Print a summary of command line options.

-S
Do not generate an LLVM bytecode file. Rather, compile the source file into an LLVM assembly language file.

-c
Do not generate a linked executable. Rather, compile the source file into an LLVM bytecode file. This bytecode file can then be linked with other bytecode files later on to generate a full LLVM executable.

-o filename
Specify the output file to be filename.

-I directory
Add a directory to the header file search path. This option can be repeated.

-L directory
Add directory to the library search path. This option can be repeated.

-lname
Link in the library libname.[bc | a | so]. This library should be a bytecode library.

-Wa,option
Pass option to gccas

-Wl,option
Pass option to gccld

-Wa,-disable-inlining -Wl,-disable-inlining
Fully disable all inlining

-emit-llvm
Emit llvm files (bytecode instead of object files, and .ll files instead of native assembly files if used with -S)


EXIT STATUS

If llvm-gcc succeeds, it will exit with 0. Otherwise, if an error occurs, it will exit with a non-zero value.


SEE ALSO

llvm-g++, gccas, gccld


AUTHORS

Maintained by the LLVM Team (http://llvm.org).