.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.11. .TH LLI "1" "December 2019" "lli 9" "User Commands" .SH NAME lli \- manual page for lli 9 .SH DESCRIPTION OVERVIEW: llvm interpreter & dynamic compiler .PP USAGE: lli [options] ... .PP OPTIONS: .PP Color Options: .HP \fB\-\-color\fR \- Use colors in output (default=autodetect) .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\-\-addrsig\fR \- Emit an address\-significance table .HP \fB\-\-amdgpu\-disable\-loop\-alignment\fR \- Do not align and prefetch loops .HP \fB\-\-amdgpu\-disable\-power\-sched\fR \- Disable scheduling to minimize mAI power bursts .HP \fB\-\-amdgpu\-dpp\-combine\fR \- Enable DPP combiner .HP \fB\-\-amdgpu\-dump\-hsa\-metadata\fR \- Dump AMDGPU HSA Metadata .HP \fB\-\-amdgpu\-enable\-global\-sgpr\-addr\fR \- Enable use of SGPR regs for GLOBAL LOAD/STORE instructions .HP \fB\-\-amdgpu\-enable\-merge\-m0\fR \- Merge and hoist M0 initializations .HP \fB\-\-amdgpu\-sdwa\-peephole\fR \- Enable SDWA peepholer .HP \fB\-\-amdgpu\-spill\-sgpr\-to\-smem\fR \- Use scalar stores to spill SGPRs if supported by subtarget .HP \fB\-\-amdgpu\-verify\-hsa\-metadata\fR \- Verify AMDGPU HSA Metadata .HP \fB\-\-amdgpu\-vgpr\-index\-mode\fR \- Use GPR indexing mode instead of movrel for vector indexing .HP \fB\-\-arm\-add\-build\-attributes\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\-\-asm\-show\-inst\fR \- Emit internal instruction representation to assembly file .TP \fB\-\-atomic\-counter\-update\-promoted\fR \- Do counter update using atomic fetch add for promoted counters only .HP \fB\-\-bounds\-checking\-single\-trap\fR \- Use one trap block per function .HP \fB\-\-code\-model=\fR \- Choose code model .TP =tiny \- Tiny code model .TP =small \- Small code model .TP =kernel \- Kernel code model .TP =medium \- Medium code model .TP =large \- Large code model .HP \fB\-\-compile\-threads=\fR \- Choose the number of compile threads (jit\-kind=orc\-lazy only) .HP \fB\-\-cost\-kind=\fR \- Target cost kind .TP =throughput \- Reciprocal throughput .TP =latency \- Instruction latency .TP =code\-size \- Code size .HP \fB\-\-cvp\-dont\-add\-nowrap\-flags\fR \- .HP \fB\-\-data\-sections\fR \- Emit data into separate sections .HP \fB\-\-debug\-entry\-values\fR \- Emit debug info about parameter's entry values .HP \fB\-\-debugger\-tune=\fR \- Tune debug info for a particular debugger .TP =gdb \- gdb .TP =lldb \- lldb .TP =sce \- SCE targets (e.g. PS4) .HP \fB\-\-denormal\-fp\-math=\fR \- Select which denormal numbers the code is permitted to require .TP =ieee \- IEEE 754 denormal numbers .TP =preserve\-sign \- the sign of a flushed\-to\-zero number is preserved in the sign of 0 .TP =positive\-zero \- denormals are flushed to positive zero .HP \fB\-\-disable\-lazy\-compilation\fR \- Disable JIT lazy compilation .HP \fB\-\-disable\-promote\-alloca\-to\-lds\fR \- Disable promote alloca to LDS .HP \fB\-\-disable\-promote\-alloca\-to\-vector\fR \- Disable promote alloca to vector .HP \fB\-\-disable\-tail\-calls\fR \- Never emit tail calls .HP \fB\-\-do\-counter\-promotion\fR \- Do counter register promotion .HP \fB\-\-dwarf\-version=\fR \- Dwarf version .HP \fB\-\-emscripten\-cxx\-exceptions\-whitelist=\fR \- The list of function names in which Emscripten\-style exception handling is enabled (see emscripten EMSCRIPTEN_CATCHING_WHITELIST options) .HP \fB\-\-emulated\-tls\fR \- Use emulated TLS model .HP \fB\-\-enable\-cache\-manager\fR \- Use cache manager to save/load modules .HP \fB\-\-enable\-cse\-in\-irtranslator\fR \- Should enable CSE in irtranslator .HP \fB\-\-enable\-cse\-in\-legalizer\fR \- Should enable CSE in Legalizer .HP \fB\-\-enable\-emscripten\-cxx\-exceptions\fR \- WebAssembly Emscripten\-style exception handling .HP \fB\-\-enable\-emscripten\-sjlj\fR \- WebAssembly Emscripten\-style setjmp/longjmp handling .HP \fB\-\-enable\-gvn\-memdep\fR \- .HP \fB\-\-enable\-load\-pre\fR \- .HP \fB\-\-enable\-loop\-simplifycfg\-term\-folding\fR \- .HP \fB\-\-enable\-name\-compression\fR \- Enable name string compression .HP \fB\-\-enable\-no\-infs\-fp\-math\fR \- Enable FP math optimizations that assume no +\-Infs .HP \fB\-\-enable\-no\-nans\-fp\-math\fR \- Enable FP math optimizations that assume no NaNs .HP \fB\-\-enable\-no\-signed\-zeros\-fp\-math\fR \- Enable FP math optimizations that assume the sign of 0 is insignificant .HP \fB\-\-enable\-no\-trapping\-fp\-math\fR \- Enable setting the FP exceptions build attribute not to use exceptions .HP \fB\-\-enable\-unsafe\-fp\-math\fR \- Enable optimizations that may decrease FP precision .HP \fB\-\-entry\-function=\fR \- Specify the entry function (default = 'main') of the executable .HP \fB\-\-exception\-model=\fR \- exception model .TP =default \- default exception handling model .TP =dwarf \- DWARF\-like CFI based exception handling .TP =sjlj \- SjLj exception handling .TP =arm \- ARM EHABI exceptions .TP =wineh \- Windows exception model .TP =wasm \- WebAssembly exception handling .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\-\-fatal\-warnings\fR \- Treat warnings as errors .HP \fB\-\-filetype=\fR \- Choose a file type (not all types are supported by all targets): .TP =asm \- Emit an assembly ('.s') file .TP =obj \- Emit a native object ('.o') file .TP =null \- Emit nothing, for performance testing .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 .HP \fB\-\-fp\-contract=\fR \- Enable aggressive formation of fused FP ops .TP =fast \- Fuse FP ops whenever profitable .TP =on \- Only fuse 'blessed' FP ops. .TP =off \- Only fuse FP ops when the result won't be affected. .HP \fB\-\-frame\-pointer=\fR \- Specify frame pointer elimination optimization .TP =all \- Disable frame pointer elimination .TP =non\-leaf \- Disable frame pointer elimination for non\-leaf frame .TP =none \- Enable frame pointer elimination .HP \fB\-\-function\-sections\fR \- Emit functions into separate sections .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\-\-import\-all\-index\fR \- Import all external functions in index. .HP \fB\-\-incremental\-linker\-compatible\fR \- When used with filetype=obj, emit an object file which can be used with an incremental linker .HP \fB\-\-instcombine\-code\-sinking\fR \- Enable code sinking .HP \fB\-\-instcombine\-guard\-widening\-window=\fR \- How wide an instruction window to bypass looking for another guard .HP \fB\-\-instcombine\-max\-num\-phis=\fR \- Maximum number phis to handle in intptr/ptrint folding .HP \fB\-\-instcombine\-maxarray\-size=\fR \- Maximum array size considered when doing a combine .HP \fB\-\-instrprof\-atomic\-counter\-update\-all\fR \- Make all profile counter updates atomic (for testing only) .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\-\-iterative\-counter\-promotion\fR \- Allow counter promotion across the whole loop nest. .HP \fB\-\-jd=\fR \- Specifies the JITDylib to be used for any subsequent \fB\-extra\-module\fR arguments. .HP \fB\-\-jit\-kind=\fR \- Choose underlying JIT kind. .TP =mcjit \- MCJIT .TP =orc\-mcjit \- Orc\-based MCJIT replacement (deprecated) .TP =orc\-lazy \- Orc\-based lazy JIT. .HP \fB\-\-load=\fR \- Load the specified plugin .HP \fB\-\-lto\-pass\-remarks\-filter=\fR \- Only record optimization remarks from passes whose names match the given regular expression .HP \fB\-\-lto\-pass\-remarks\-format=\fR \- The format used for serializing remarks (default: YAML) .HP \fB\-\-lto\-pass\-remarks\-output=\fR \- Output filename for pass remarks .HP \fB\-\-march=\fR \- Architecture to generate code for (see \fB\-\-version\fR) .HP \fB\-\-mattr=\fR \- Target specific attributes (\fB\-mattr\fR=\fI\,help\/\fR for details) .HP \fB\-\-max\-counter\-promotions=\fR \- Max number of allowed counter promotions .HP \fB\-\-max\-counter\-promotions\-per\-loop=\fR \- Max number counter promotions per loop to avoid increasing register pressure too much .HP \fB\-\-mc\-relax\-all\fR \- When used with filetype=obj, relax all fixups in the emitted object file .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\-\-meabi=\fR \- Set EABI type (default depends on triple): .TP =default \- Triple default EABI version .TP =4 \- EABI version 4 .TP =5 \- EABI version 5 .TP =gnu \- EABI GNU .HP \fB\-\-memop\-size\-large=\fR \- Set large value thresthold in memory intrinsic size profiling. Value of 0 disables the large value profiling. .HP \fB\-\-memop\-size\-range=\fR \- Set the range of size in memory intrinsic calls to be profiled precisely, in a format of : .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\-\-mhvx\fR \- Enable Hexagon Vector eXtensions .HP \fB\-\-mhvx=\fR \- Enable Hexagon Vector eXtensions .TP =v60 \- Build for HVX v60 .TP =v62 \- Build for HVX v62 .TP =v65 \- Build for HVX v65 .TP =v66 \- Build for HVX v66 .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\-deprecated\-warn\fR \- Suppress all deprecated warnings .HP \fB\-\-no\-discriminators\fR \- Disable generation of discriminator information. .HP \fB\-\-no\-warn\fR \- Suppress all warnings .HP \fB\-\-nozero\-initialized\-in\-bss\fR \- Don't place zero\-initialized symbols into bss section .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\-\-per\-module\-lazy\fR \- Performs lazy compilation on whole module boundaries rather than individual functions .HP \fB\-\-pie\-copy\-relocations\fR \- PIE Copy Relocations .HP \fB\-\-poison\-checking\-function\-local\fR \- Check that returns are non\-poison (for testing) .HP \fB\-\-r600\-ir\-structurize\fR \- Use StructurizeCFG IR pass .HP \fB\-\-rdf\-dump\fR \- .HP \fB\-\-rdf\-limit=\fR \- .HP \fB\-\-relax\-elf\-relocations\fR \- Emit GOTPCRELX/REX_GOTPCRELX instead of GOTPCREL on x86\-64 ELF .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 .TP =ropi \- Code and read\-only data relocatable, accessed PC\-relative .TP =rwpi \- Read\-write data relocatable, accessed relative to static base .TP =ropi\-rwpi \- Combination of ropi and rwpi .HP \fB\-\-remarks\-section\fR \- Emit a section containing remark diagnostics metadata .HP \fB\-\-remote\-mcjit\fR \- Execute MCJIT'ed code in a separate process. .HP \fB\-\-safepoint\-ir\-verifier\-print\-only\fR \- .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\-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 .TP \fB\-\-speculative\-counter\-promotion\-max\-exiting=\fR \- The max number of exiting blocks of a loop to allow speculative counter promotion .TP \fB\-\-speculative\-counter\-promotion\-to\-loop\fR \- When the option is false, if the target block is in a loop, the promotion will be disallowed unless the promoted counter update can be further/iteratively promoted into an acyclic region. .HP \fB\-\-stack\-alignment=\fR \- Override default stack alignment .HP \fB\-\-stack\-size\-section\fR \- Emit a section containing stack size metadata .HP \fB\-\-stack\-symbol\-ordering\fR \- Order local stack symbols. .HP \fB\-\-stackrealign\fR \- Force align the stack to the minimum alignment .HP \fB\-\-summary\-file=\fR \- The summary file to use for function importing. .HP \fB\-\-tailcallopt\fR \- Turn fastcc calls into tail calls by (potentially) changing ABI. .HP \fB\-\-thread\-entry=\fR \- calls the given entry\-point on a new thread (jit\-kind=orc\-lazy only) .HP \fB\-\-thread\-model=\fR \- Choose threading model .TP =posix \- POSIX thread model .TP =single \- Single thread model .HP \fB\-\-threads=\fR \- .HP \fB\-\-time\-trace\-granularity=\fR \- Minimum time granularity (in microseconds) traced by time profiler .HP \fB\-\-unique\-section\-names\fR \- Give unique names to every section .HP \fB\-\-use\-ctors\fR \- Use .ctors instead of .init_array. .HP \fB\-\-verify\-region\-info\fR \- Verify region info (time consuming) .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 .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