X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=docs%2FCommandGuide%2Fllvmc.pod;h=d237ca4c14fa41261f09ddd1f8e71cf229eb562a;hb=a23650bc0161716aadba97e2e5f92eac7c11d80b;hp=c81031bc61ab862e8405ee06d21d16284186e1f5;hpb=dbb61d1bac9c3070f82c7e022d9218d188f3c43d;p=oota-llvm.git diff --git a/docs/CommandGuide/llvmc.pod b/docs/CommandGuide/llvmc.pod index c81031bc61a..d237ca4c14f 100644 --- a/docs/CommandGuide/llvmc.pod +++ b/docs/CommandGuide/llvmc.pod @@ -42,28 +42,46 @@ S<-load $LLVM_DIR/Release/lib/LLVMCSimple.so>. Enable verbose mode, i.e. print out all executed commands. +=item B<--check-graph> + +Check the compilation for common errors like mismatched output/input language +names, multiple default edges and cycles. Because of plugins, these checks can't +be performed at compile-time. Exit with code zero if no errors were found, and +return the number of found errors otherwise. Hidden option, useful for debugging +LLVMC plugins. + =item B<--view-graph> -Show a graphical representation of the compilation graph. Requires -that you have I and I programs installed. Hidden option, -useful for debugging. +Show a graphical representation of the compilation graph and exit. Requires that +you have I and I programs installed. Hidden option, useful for +debugging LLVMC plugins. =item B<--write-graph> -Write a I file in the current directory with -the compilation graph description in the Graphviz format. Hidden -option, useful for debugging. +Write a I file in the current directory with the +compilation graph description in Graphviz format (identical to the file used by +the B<--view-graph> option). The B<-o> option can be used to set the output file +name. Hidden option, useful for debugging LLVMC plugins. =item B<--save-temps> -Write temporary files to the current directory and do not delete them -on exit. Hidden option, useful for debugging. +Write temporary files to the current directory and do not delete them on +exit. This option can also take an argument: the I<--save-temps=obj> switch will +write files into the directory specified with the I<-o> option. The +I<--save-temps=cwd> and I<--save-temps> switches are both synonyms for the +default behaviour. + +=item B<--temp-dir> I + +Store temporary files in the given directory. This directory is deleted on exit +unless I<--save-temps> is specified. If I<--save-temps=obj> is also specified, +I<--temp-dir> is given the precedence. -=item B<--help> +=item B<-help> Print a summary of command-line options and exit. -=item B<--help-hidden> +=item B<-help-hidden> Print a summary of command-line options and exit. Print help even for options intended for developers. @@ -72,8 +90,24 @@ options intended for developers. Print version information and exit. +=item B<@>I + +Read command-line options from I. The options read are inserted +in place of the original @I option. If I does not exist, or +cannot be read, then the option will be treated literally, and not +removed. + +Options in I are separated by whitespace. A whitespace character +may be included in an option by surrounding the entire option in +either single or double quotes. Any character (including a backslash) +may be included by prefixing the character to be included with a +backslash. The file may itself contain additional @I options; +any such options will be processed recursively. + + =back + =head2 Control Options By default, LLVMC is built with some standard configuration libraries @@ -81,26 +115,58 @@ that define the following options: =over +=item B<-clang> + +Use Clang instead of llvm-gcc. + +=item B<-opt> + +Enable optimization passes with B. To pass options to the B program +use the B<-Wo,> option. + =item B<-I> I -Add a directory to the header file search path. This option can be -repeated. +Add a directory to the header file search path. =item B<-L> I -Add I to the library search path. This option can be -repeated. +Add I to the library search path. + +=item B<-F> I + +Add I to the framework search path. =item B<-l>I Link in the library libI.[bc | a | so]. This library should be a bitcode library. +=item B<-framework> I + +Link in the library libI.[bc | a | so]. This library should +be a bitcode library. + =item B<-emit-llvm> -Make the output be LLVM bitcode (with B<-c>) or assembly (with B<-s>) instead -of native object (or assembly). If B<-emit-llvm> is given without either B<-c> -or B<-S> it has no effect. +Output LLVM bitcode (with B<-c>) or assembly (with B<-S>) instead of native +object (or assembly). If B<-emit-llvm> is given without either B<-c> or B<-S> +it has no effect. + +=item B<-Wa> + +Pass options to assembler. + +=item B<-Wl> + +Pass options to linker. + +=item B<-Wo> + +Pass options to opt. + +=item B<-Wllc> + +Pass options to llc (code generator). =back