# NAME

llvm-g++ - LLVM C++ front-end

# SYNOPSIS

llvm-g++ [options] filename

# DESCRIPTION

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

Unless the -S option is specified, llvm-g++ will use the gccas program to perform some optimizations and create an LLVM bytecode file. Unless the -c option is specified, llvm-g++ 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-g++ has many of g++'s features and accepts most of g++'s options. It handles a number of g++'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-g++ succeeds, it will exit with 0. Otherwise, if an error occurs, it will exit with a non-zero value.

# SEE ALSO

llvm-gcc, the gccas manpage, the gccld manpage

# AUTHORS

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