# 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 compiles C/ObjC programs into native objects, LLVM bitcode or LLVM assembly language, depending upon the options.

By default, llvm-gcc compiles to native objects just like GCC does. If the -emit-llvm option is given then it will generate LLVM bitcode files instead. If -S (assembly) is also given, then it will generate LLVM assembly.

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 bitcode 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 bitcode file. This bitcode file can then be linked with other bitcode 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 bitcode library.

-emit-llvm

  Make the output be LLVM bitcode (or assembly) instead of native object (or assembly).

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

# AUTHORS

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