aboutsummaryrefslogtreecommitdiff
path: root/docs/CommandGuide
diff options
context:
space:
mode:
Diffstat (limited to 'docs/CommandGuide')
-rw-r--r--docs/CommandGuide/llc.html81
-rw-r--r--docs/CommandGuide/lli.html35
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] &lt; filename&gt;
+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=&lt;plugin.so&gt;
<br>
- Load the specified plugin
+ Load the specified plugin.
<p>
<li>-m&lt;arch&gt;
<br>
Specify the architecture for which to generate assembly. Valid
- <p>
architectures are:
<dl compact>
@@ -103,12 +158,12 @@ OPTIONS
<li>-o &lt;filename&gt;
<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] &lt; filename&gt;
+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