diff options
Diffstat (limited to 'docs/CommandGuide')
-rw-r--r-- | docs/CommandGuide/llc.html | 81 | ||||
-rw-r--r-- | docs/CommandGuide/lli.html | 35 |
2 files changed, 100 insertions, 16 deletions
diff --git a/docs/CommandGuide/llc.html b/docs/CommandGuide/llc.html index 812f28a80b..26e680342c 100644 --- a/docs/CommandGuide/llc.html +++ b/docs/CommandGuide/llc.html @@ -20,7 +20,7 @@ llc SYNOPSIS </h3> -llc [options] < filename> +llc [options] [filename] <h3> DESCRIPTION </h3> @@ -28,6 +28,62 @@ DESCRIPTION The llc command compiles LLVM bytecode into assembly language for a specified architecture. The assembly language output can then be passed through a native assembler and linker to generate native code. +<p> +The choice of architecture for the output assembly code is determined as +follows: + +<ul> + <li> + If the user has specified an architecture with the -m option, use that + architecture. + <p> + + <li> + Examine the input LLVM bytecode file: + <ul> + <li> + If it specifies little endian and a pointer size of 32 bits, select the + x86 architecture. + <p> + + <li> + If it specifies big endian and a pointer size of 64 bit pointers, + select the SparcV9 architecture. + </ul> + <p> + + <li> + If llc was compiled on an architecture for which it can generate code, + select the architecture upon which llc was compiled. + <p> + + <li> + Print a message to the user asking him or her to specify the output + architecture explicitly. +</ul> + +<p> + +If filename is not specified, or if filename is -, llc reads its input from +standard input. Otherwise, it will read its input from filename. +<p> + +If the -o option is left unspecified, then llc will send its output to standard +output if the input is from standard input. If the -o option specifies -, then +the output will also be sent to standard output. +<p> + +If no -o option is specified and an input file other than - is specified, then +llc creates the output filename as follows: + +<ul> + <li> + If the file ends in .bc, then the .bc suffix is removed, and the .s suffix + is appended. + <p> + <li> + Otherwise, the .s suffix is appended to the input filename. +</ul> <h3> OPTIONS @@ -36,42 +92,42 @@ OPTIONS <ul> <li>-disable-fp-elim <br> - Disable frame pointer elimination optimization + Disable frame pointer elimination optimization. <p> <li>-disable-local-ra <br> - Use Simple RA instead of Local RegAlloc + Use Simple RA instead of Local RegAlloc. <p> <li>-disable-pattern-isel <br> - Use the 'simple' X86 instruction selector + Use the 'simple' X86 instruction selector. <p> <li>-disable-peephole <br> - Disable peephole optimization pass + Disable peephole optimization pass. <p> <li>-disable-preopt <br> - Disable optimizations prior to instruction selection + Disable optimizations prior to instruction selection. <p> <li>-disable-sched <br> - Disable local scheduling pass + Disable local scheduling pass. <p> <li>-disable-strip <br> - Do not strip the LLVM bytecode included in executable + Do not strip the LLVM bytecode included in executable. <p> <li>-enable-maps <br> - Emit LLVM-to-MachineCode mapping info to assembly + Emit LLVM-to-MachineCode mapping info to assembly. <p> <li>-f @@ -81,13 +137,12 @@ OPTIONS <li>-load=<plugin.so> <br> - Load the specified plugin + Load the specified plugin. <p> <li>-m<arch> <br> Specify the architecture for which to generate assembly. Valid - <p> architectures are: <dl compact> @@ -103,12 +158,12 @@ OPTIONS <li>-o <filename> <br> - Output filename + Specify the output filename. <p> <li>-print-machineinstrs <br> - Print generated machine code + Print generated machine code. <p> <li> -help diff --git a/docs/CommandGuide/lli.html b/docs/CommandGuide/lli.html index 8fb4370a96..2b504472be 100644 --- a/docs/CommandGuide/lli.html +++ b/docs/CommandGuide/lli.html @@ -20,14 +20,43 @@ lli SYNOPSIS </h3> -lli [options] < filename> +lli [options] [filename] [args ...] <h3> DESCRIPTION </h3> The lli command is the LLVM interpreter. It takes a program in LLVM bytecode -format and executes it, either using an interpreter or a Just In Time (JIT) -compiler. +format and executes it using an interpreter or a Just In Time (JIT) compiler. +<p> + +If filename is not specified, then lli reads its input from standard input. +<p> +The optional arguments specified on the command line are passed to the executed +program as arguments. +<p> + +<h3> +MAIN FUNCTION +</h3> + +The main() function of the bytecode program is where execution starts. It +is passed three arguments: + +<ul> + <li> + int argc - The number of command line arguments. + <p> + + <li> + char ** argv - The arguments to the program. + <p> + + <li> + char ** envp - An array of environment variables used by the program. +</ul> + +The first argument to the program is the name of the executed bytecode file +(with the .bc suffix removed). <h3> OPTIONS |