diff --git a/docs/CommandGuide/lli.html b/docs/CommandGuide/lli.html
index ba920984e1c..70a42d645f6 100644
--- a/docs/CommandGuide/lli.html
+++ b/docs/CommandGuide/lli.html
@@ -25,15 +25,19 @@ SYNOPSIS
DESCRIPTION
-The lli command is the LLVM interpreter. It takes a program in LLVM
-bytecode format and executes it using an interpreter or a Just In Time (JIT)
-compiler. lli takes all of the same code generator option as the
-llc tool as well.
+lli directly executes programs in LLVM format.
+It takes a program in LLVM
+bytecode format and executes it using a just-in-time
+compiler, if one is available for the current architecture, or an interpreter.
+lli takes all of the same code generator options as the
+llc tool, but they are only applicable when
+the just-in-time compiler is being used.
-If filename is not specified, then lli reads its input from standard input.
+If filename is not specified, then lli reads the LLVM bytecode for
+the program from standard input.
-The optional "args" specified on the command line are passed to the executed
+The optional "args" specified on the command line are passed to the
program as arguments.
@@ -43,34 +47,74 @@ OPTIONS
- - -array-checks (interpreter specific)
+
- -array-checks
- Enable array bound checks.
+ Enable array bound checks. If an LLVM program attempts to access an
+ element of an array which is not within the size of that array,
+ lli will print an error message and call abort(3).
+ This is presently only applicable to the interpreter.
-
- -help
+
- -help
Print a summary of command line options.
-
- -stats
+
- -stats
- Print statistics.
+ Print statistics from the code-generation passes. This is only meaningful
+ for the just-in-time compiler, at present.
-
- -time-passes
+
- -time-passes
- Record the amount of time needed for each pass and print it to standard
- error.
+ Record the amount of time needed for each code-generation pass and print
+ it to standard error.
+
+
- -march=<arch>
+
+ Use the specified non-default architecture when selecting a code generator
+ for the just-in-time compiler. This may result in a crash if you pick an
+ architecture which is not compatible with the hardware you are running
+ lli on.
+
+
+
- -quiet, -q
+
+ Do not print any output about the return values of functions.
+ This is presently only applicable to the interpreter.
+
+
+
- -force-interpreter={false,true}
+
+ If set to true, use the interpreter even if a just-in-time compiler is
+ available for this architecture. Defaults to false.
+
+
+
- -trace
+
+ Print an LLVM-instruction-level dynamic execution trace. This is
+ presently only applicable to the interpreter.
+
+
+
- -f=<name>
+
+ Call the function named <name> to start the program.
+ Note: The function is assumed to have the C signature int
+ <name> (int, char **, char **).
+ If you try to use this option to call a function of incompatible type,
+ undefined behavior may result. Defaults to "main".
+
+
EXIT STATUS
-If lli succeeds, it will exit with 0. Otherwise, if an error occurs, it
-will exit with a non-zero value.
+If lli fails to load the program, it will exit with an exit code of 1.
+Otherwise, it will return the exit code of the program it executes.
SEE ALSO
@@ -81,4 +125,3 @@ SEE ALSO
Maintained by the LLVM Team.