LLVM: lli tool
NAME
lli
SYNOPSIS
lli [options] [filename] [args ...]
DESCRIPTION
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 the LLVM bytecode for
the program from standard input.
The optional "args" specified on the command line are passed to the
program as arguments.
OPTIONS
- -array-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
Print a summary of command line options.
- -stats
Print statistics from the code-generation passes. This is only meaningful
for the just-in-time compiler, at present.
- -time-passes
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 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
llc
Maintained by the LLVM Team.