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