diff --git a/docs/CommandGuide/llvmgcc.pod b/docs/CommandGuide/llvmgcc.pod new file mode 100644 index 00000000000..4cbf7283801 --- /dev/null +++ b/docs/CommandGuide/llvmgcc.pod @@ -0,0 +1,88 @@ + +=pod + +=head1 NAME + +llvmgcc - LLVM C front-end + +=head1 SYNOPSIS + +llvmgcc [options] filename + +=head1 DESCRIPTION + +The B 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 B<-S> option is specified, B will use the +L program to perform some optimizations and create an +LLVM bytecode file. Unless the B<-c> option is specified, B +will also use the L 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, B 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. + +=head1 OPTIONS + +=over + +=item B<--help> + +Print a summary of command line options. + +=item B<-S> + +Do not generate an LLVM bytecode file. Rather, compile the source +file into an LLVM assembly language file. + +=item B<-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. + +=item B<-o> I + +Specify the output file to be I. + +=item B<-I> I + +Add a directory to the header file search path. This option can be +repeated. + +=item B<-L> I + +Add I to the library search path. This option can be +repeated. + +=item B<-l>I + +Link in the library libI.[bc | a | so]. This library should +be a bytecode library. + +=item B<-Wl,>I