LLVM: llvmgcc tool
NAME
llvmgcc
SYNOPSIS
llvmgcc [options] filename
DESCRIPTION
The llvmgcc command is the LLVM C front end. It is a modified version
of the GNU Compiler Collection (GCC) that takes
C programs and compiles them into LLVM bytecode or assembly language, depending
upon the options.
Unless the -S option is specified, llvmgcc will use the
gccas program to perform some optimizations
and create an LLVM bytecode file. Unless the -c option is specified,
llvmgcc 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 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.
Below you will find several commonly used options:
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 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.
- -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.
- -Wl,option
Pass option to the linker program, gccld.
EXIT STATUS
If llvmgcc succeeds, it will exit with 0. Otherwise, if an error
occurs, it will exit with a non-zero value.
SEE ALSO
llvmg++,
gccas,
gccld,
and the Info documentation for gcc.
Maintained by the LLVM Team.