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

-l name

  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

# 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).