LLI(1) User Commands LLI(1)NAME
lli - manual page for lli 4.0
DESCRIPTION
OVERVIEW: llvm interpreter & dynamic compiler
USAGE: lli [options] <input bitcode> <program arguments>...
OPTIONS:
General options:
-O=<char> - Optimization level.
[-O0, -O1, -O2, or -O3] (default = '-O2')
-aarch64-neon-syntax - Choose style of NEON
code to emit from AArch64 backend:
=generic
- Emit generic NEON assembly
=apple - Emit Apple-style NEON assembly
-amdgpu-dump-rtmd - Dump AMDGPU runtime
metadata
-amdgpu-spill-sgpr-to-smem - Use scalar stores to
spill SGPRs if supported by subtarget
-amdgpu-vgpr-index-mode - Use GPR indexing mode
instead of movrel for vector indexing
-arm-execute-only-
-arm-implicit-it - Allow conditional
instructions outdside of an IT block
=always
- Accept in both ISAs, emit implicit ITs in Thumb
=never - Warn in ARM, reject in Thumb
=arm - Accept in ARM, reject in Thumb
=thumb - Warn in ARM, emit implicit ITs in Thumb
-bounds-checking-single-trap - Use one trap block
per function
-code-model - Choose code model
=default
- Target default JIT code model
=small - Small code model
=kernel
- Kernel code model
=medium
- Medium code model
=large - Large code model
-color - use colored syntax
highlighting (default=autodetect)
-cvp-dont-process-adds-
-disable-lazy-compilation - Disable JIT lazy com‐
pilation
-disable-spill-fusing - Disable fusing of
spill code into instructions
-enable-cache-manager - Use cache manager to
save/load mdoules
-enable-implicit-null-checks - Fold null checks into
faulting memory operations
-enable-load-pre-
-enable-name-compression - Enable name string
compression
-enable-objc-arc-opts - enable/disable all
ARC Optimizations
-enable-scoped-noalias-
-enable-tbaa-
-entry-function=<function> - Specify the entry
function (default = 'main') of the executable
-exhaustive-register-search - Exhaustive Search for
registers bypassing the depth and interference cutoffs of last
chance recoloring
-expensive-combines - Enable expensive
instruction combines
-extra-archive=<input archive> - Extra archive files
to be loaded
-extra-module=<input bitcode> - Extra modules to be
loaded
-extra-object=<input object> - Extra object files to
be loaded
-fake-argv0=<executable> - Override the
'argv[0]' value passed into the executing program
-filter-print-funcs=<function names> - Only print IR for
functions whose name match this for all
print-[before|after][-all] options
-float-abi - Choose float ABI type
=default
- Target default float ABI type
=soft - Soft float ABI (implied by -soft-float)
=hard - Hard float ABI (uses FP registers)
-force-interpreter - Force interpretation:
disable JIT
-gpsize=<uint> - Global Pointer
Addressing Size.
The default size is 8.
-hash-based-counter-split - Rename counter vari‐
able of a comdat function based on cfg hash
-ignore-empty-index-file - Ignore an empty index
file and perform non-ThinLTO compilation
-imp-null-check-page-size=<int> - The page size of the
target in bytes
-imp-null-max-insts-to-consider=<uint> - The max number of
instructions to consider hoisting loads over (the algorithm is
quadratic over this number)
-internalize-public-api-file=<filename> - A file containing
list of symbol names to preserve
-internalize-public-api-list=<list> - A list of symbol
names to preserve
-jit-kind - Choose underlying JIT
kind.
=mcjit
- MCJIT
=orc-mcjit
- Orc-based MCJIT replacement
=orc-lazy
- Orc-based lazy JIT.
-join-liveintervals - Coalesce copies
(default=true)
-limit-float-precision=<uint> - Generate low-preci‐
sion inline sequences for some float libcalls
-load=<pluginfilename> - Load the specified
plugin
-lto-pass-remarks-output=<filename> - Output filename for
pass remarks
-march=<string> - Architecture to gen‐
erate assembly for (see --version)
-mattr=<a1,+a2,-a3,...> - Target specific
attributes (-mattr=help for details)
-mcjit-remote-process=<filename> - Specify the filename
of the process to launch for remote MCJIT execution.
If none is specified, remote execution will be simulated
in-process.
-mcpu=<cpu-name> - Target a specific cpu
type (-mcpu=help for details)
-merror-missing-parenthesis - Error for missing
parenthesis around predicate registers
-merror-noncontigious-register - Error for register
names that aren't contigious
-mfuture-regs - Enable future regis‐
ters
-mips-compact-branches - MIPS Specific: Com‐
pact branch policy.
=never
- Do not use compact branches if possible.
=optimal
- Use compact branches where appropiate (default).
=always
- Always use compact branches if possible.
-mips16-constant-islands - Enable mips16 con‐
stant islands.
-mips16-hard-float - Enable mips16 hard
float.
-mno-compound - Disable looking for
compound instructions for Hexagon
-mno-fixup - Disable fixing up
resolved relocations for Hexagon
-mno-ldc1-sdc1 - Expand double preci‐
sion loads and stores to their single precision counterparts
-mno-pairing - Disable looking for
duplex instructions for Hexagon
-mtriple=<string> - Override target
triple for module
-mwarn-missing-parenthesis - Warn for missing
parenthesis around predicate registers
-mwarn-noncontigious-register - Warn for register
names that arent contigious
-mwarn-sign-mismatch - Warn for mismatching
a signed and unsigned value
-no-discriminators - Disable generation of
discriminator information.
-nvptx-sched4reg - NVPTX Specific:
schedule for register pressue
-object-cache-dir=<string> - Directory to store
cached object files (must be user writable)
-print-after-all - Print IR after each
pass
-print-before-all - Print IR before each
pass
-print-machineinstrs=<pass-name> - Print machine instrs
-r600-ir-structurize - Use StructurizeCFG IR
pass
-rdf-dump-
-rdf-limit=<uint> -
-regalloc - Register allocator to
use
=default
- pick register allocator based on -O option
=pbqp - PBQP register allocator
=greedy
- greedy register allocator
=fast - fast register allocator
=basic - basic register allocator
-relocation-model - Choose relocation
model
=static
- Non-relocatable code
=pic - Fully relocatable, position independent code
=dynamic-no-pic
- Relocatable external references, non-relocatable code
-remote-mcjit - Execute MCJIT'ed code
in a separate process.
-rewrite-map-file=<filename> - Symbol Rewrite Map
-rng-seed=<seed> - Seed for the random
number generator
-sample-profile-check-record-coverage=<N> - Emit a warning if
less than N% of records in the input profile are matched to the
IR.
-sample-profile-check-sample-coverage=<N> - Emit a warning if
less than N% of samples in the input profile are matched to the
IR.
-sample-profile-inline-hot-threshold=<N> - Inlined functions
that account for more than N% of all samples collected in the
parent function, will be inlined again.
-sample-profile-max-propagate-iterations=<uint> - Maximum number of
iterations to go through when propagating sample block/edge
weights through the CFG.
-soft-float - Generate software
floating point library calls
-stackmap-version=<int> - Specify the stackmap
encoding version (default = 2)
-static-func-full-module-prefix - Use full module build
paths in the profile counter names for static functions.
-stats - Enable statistics
output from program (available with Asserts)
-stats-json - Display statistics as
json data
-summary-file=<string> - The summary file to
use for function importing.
-threads=<int> -
-time-passes - Time each pass,
printing elapsed time for each on exit
-verify-debug-info-
-verify-dom-info - Verify dominator info
(time consuming)
-verify-loop-info - Verify loop info
(time consuming)
-verify-loop-lcssa - Verify loop lcssa
form (time consuming)
-verify-machine-dom-info - Verify machine domi‐
nator info (time consuming)
-verify-regalloc - Verify during regis‐
ter allocation
-verify-region-info - Verify region info
(time consuming)
-verify-scev - Verify ScalarEvolu‐
tion's backedge taken counts (slow)
-verify-scev-maps - Verify no dangling
value in ScalarEvolution's ExprValueMap (slow)
-vp-counters-per-site=<number> - The average number of
profile counters allocated per value profiling site.
-vp-static-alloc - Do static counter
allocation for value profiler
-x86-asm-syntax - Choose style of code
to emit from X86 backend:
=att - Emit AT&T-style assembly
=intel - Emit Intel-style assembly
Generic Options:
-help - Display available
options (-help-hidden for more)
-help-list - Display list of
available options (-help-list-hidden for more)
-version - Display the version
of this program
SEE ALSO
The full documentation for lli is maintained as a Texinfo manual. If
the info and lli programs are properly installed at your site, the com‐
mand
info lli
should give you access to the complete manual.
lli 4.0 October 2017 LLI(1)