lli-9 (1) Linux Manual Page
lli – manual page for lli 9
Description
OVERVIEW: llvm interpreter & dynamic compilerUSAGE: lli [options] <input bitcode> <program arguments>…
OPTIONS:
Color Options:
- –color – Use colors in output (default=autodetect)
- -O=<char> – Optimization level. [-O0, -O1, -O2, or -O3] (default = ‘-O2’)
- –aarch64-neon-syntax=<value> – Choose style of NEON code to emit from AArch64 backend:
- =generic
- –aarch64-neon-syntax=<value> – Choose style of NEON code to emit from AArch64 backend:
- – Emit generic NEON assembly
- =apple
- – Emit Apple-style NEON assembly
- –addrsig – Emit an address-significance table
- –amdgpu-disable-loop-alignment – Do not align and prefetch loops
- –amdgpu-disable-power-sched – Disable scheduling to minimize mAI power bursts
- –amdgpu-dpp-combine – Enable DPP combiner
- –amdgpu-dump-hsa-metadata – Dump AMDGPU HSA Metadata
- –amdgpu-enable-global-sgpr-addr – Enable use of SGPR regs for GLOBAL LOAD/STORE instructions
- –amdgpu-enable-merge-m0 – Merge and hoist M0 initializations
- –amdgpu-sdwa-peephole – Enable SDWA peepholer
- –amdgpu-spill-sgpr-to-smem – Use scalar stores to spill SGPRs if supported by subtarget
- –amdgpu-verify-hsa-metadata – Verify AMDGPU HSA Metadata
- –amdgpu-vgpr-index-mode – Use GPR indexing mode instead of movrel for vector indexing
- –arm-add-build-attributes –
- –arm-implicit-it=<value> – Allow conditional instructions outdside of an IT block
- =always
- –amdgpu-disable-loop-alignment – Do not align and prefetch loops
- – 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
- –asm-show-inst – Emit internal instruction representation to assembly file
- –atomic-counter-update-promoted – Do counter update using atomic fetch add
- –atomic-counter-update-promoted – Do counter update using atomic fetch add
- for promoted counters only
- for promoted counters only
- –bounds-checking-single-trap – Use one trap block per function
- –code-model=<value> – Choose code model
- =tiny
- –code-model=<value> – Choose code model
- – Tiny code model
- =small
- – Small code model
- =kernel
- – Kernel code model
- =medium
- – Medium code model
- =large
- – Large code model
- –compile-threads=<uint> – Choose the number of compile threads (jit-kind=orc-lazy only)
- –cost-kind=<value> – Target cost kind
- =throughput
- –cost-kind=<value> – Target cost kind
- – Reciprocal throughput
- =latency
- – Instruction latency
- =code-size
- – Code size
- –cvp-dont-add-nowrap-flags –
- –data-sections – Emit data into separate sections
- –debug-entry-values – Emit debug info about parameter’s entry values
- –debugger-tune=<value> – Tune debug info for a particular debugger
- =gdb
- –data-sections – Emit data into separate sections
- – gdb
- =lldb
- – lldb
- =sce
- – SCE targets (e.g. PS4)
- –denormal-fp-math=<value> – Select which denormal numbers the code is permitted to require
- =ieee
- =ieee
- – IEEE 754 denormal numbers
- =preserve-sign
- – the sign of a flushed-to-zero number is preserved in the sign of 0
- =positive-zero
- – denormals are flushed to positive zero
- –disable-lazy-compilation – Disable JIT lazy compilation
- –disable-promote-alloca-to-lds – Disable promote alloca to LDS
- –disable-promote-alloca-to-vector – Disable promote alloca to vector
- –disable-tail-calls – Never emit tail calls
- –do-counter-promotion – Do counter register promotion
- –dwarf-version=<int> – Dwarf version
- –emscripten-cxx-exceptions-whitelist=<string> – The list of function names in which Emscripten-style exception handling is enabled (see emscripten EMSCRIPTEN_CATCHING_WHITELIST options)
- –emulated-tls – Use emulated TLS model
- –enable-cache-manager – Use cache manager to save/load modules
- –enable-cse-in-irtranslator – Should enable CSE in irtranslator
- –enable-cse-in-legalizer – Should enable CSE in Legalizer
- –enable-emscripten-cxx-exceptions – WebAssembly Emscripten-style exception handling
- –enable-emscripten-sjlj – WebAssembly Emscripten-style setjmp/longjmp handling
- –enable-gvn-memdep –
- –enable-load-pre –
- –enable-loop-simplifycfg-term-folding –
- –enable-name-compression – Enable name string compression
- –enable-no-infs-fp-math – Enable FP math optimizations that assume no +-Infs
- –enable-no-nans-fp-math – Enable FP math optimizations that assume no NaNs
- –enable-no-signed-zeros-fp-math – Enable FP math optimizations that assume the sign of 0 is insignificant
- –enable-no-trapping-fp-math – Enable setting the FP exceptions build attribute not to use exceptions
- –enable-unsafe-fp-math – Enable optimizations that may decrease FP precision
- –entry-function=<function> – Specify the entry function (default = ‘main’) of the executable
- –exception-model=<value> – exception model
- =default
- –disable-promote-alloca-to-lds – Disable promote alloca to LDS
- – default exception handling model
- =dwarf
- – DWARF-like CFI based exception handling
- =sjlj
- – SjLj exception handling
- =arm
- – ARM EHABI exceptions
- =wineh
- – Windows exception model
- =wasm
- – WebAssembly exception handling
- –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
- –fatal-warnings – Treat warnings as errors
- –filetype=<value> – Choose a file type (not all types are supported by all targets):
- =asm
- –extra-archive=<input archive> – Extra archive files to be loaded
- – Emit an assembly (‘.s’) file
- =obj
- – Emit a native object (‘.o’) file
- =null
- – Emit nothing, for performance testing
- –float-abi=<value> – Choose float ABI type
- =default
- =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
- –fp-contract=<value> – Enable aggressive formation of fused FP ops
- =fast
- –fp-contract=<value> – Enable aggressive formation of fused FP ops
- – Fuse FP ops whenever profitable
- =on
- – Only fuse ‘blessed’ FP ops.
- =off
- – Only fuse FP ops when the result won’t be affected.
- –frame-pointer=<value> – Specify frame pointer elimination optimization
- =all
- =all
- – Disable frame pointer elimination
- =non-leaf
- – Disable frame pointer elimination for non-leaf frame
- =none
- – Enable frame pointer elimination
- –function-sections – Emit functions into separate sections
- –gpsize=<uint> – Global Pointer Addressing Size.
- –gpsize=<uint> – Global Pointer Addressing Size.
- The default size is 8.
- The default size is 8.
- –hash-based-counter-split – Rename counter variable of a comdat function based on cfg hash
- –import-all-index – Import all external functions in index.
- –incremental-linker-compatible – When used with filetype=obj, emit an object file which can be used with an incremental linker
- –instcombine-code-sinking – Enable code sinking
- –instcombine-guard-widening-window=<uint> – How wide an instruction window to bypass looking for another guard
- –instcombine-max-num-phis=<uint> – Maximum number phis to handle in intptr/ptrint folding
- –instcombine-maxarray-size=<uint> – Maximum array size considered when doing a combine
- –instrprof-atomic-counter-update-all – Make all profile counter updates atomic (for testing only)
- –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
- –iterative-counter-promotion – Allow counter promotion across the whole loop nest.
- –jd=<string> – Specifies the JITDylib to be used for any subsequent -extra-module arguments.
- –jit-kind=<value> – Choose underlying JIT kind.
- =mcjit
- –import-all-index – Import all external functions in index.
- – MCJIT
- =orc-mcjit
- – Orc-based MCJIT replacement (deprecated)
- =orc-lazy
- – Orc-based lazy JIT.
- –load=<pluginfilename> – Load the specified plugin
- –lto-pass-remarks-filter=<regex> – Only record optimization remarks from passes whose names match the given regular expression
- –lto-pass-remarks-format=<format> – The format used for serializing remarks (default: YAML)
- –lto-pass-remarks-output=<filename> – Output filename for pass remarks
- –march=<string> – Architecture to generate code for (see –version)
- –mattr=<a1,+a2,-a3,…> – Target specific attributes (-mattr=,help/ for details)
- –max-counter-promotions=<int> – Max number of allowed counter promotions
- –max-counter-promotions-per-loop=<uint> – Max number counter promotions per loop to avoid increasing register pressure too much
- –mc-relax-all – When used with filetype=obj, relax all fixups in the emitted object file
- –mcjit-remote-process=<filename> – Specify the filename of the process to launch for remote MCJIT execution.
- –lto-pass-remarks-filter=<regex> – Only record optimization remarks from passes whose names match the given regular expression
- If none is specified, remote execution will be simulated in-process.
- If none is specified, remote execution will be simulated in-process.
- –mcpu=<cpu-name> – Target a specific cpu type (-mcpu=,help/ for details)
- –meabi=<value> – Set EABI type (default depends on triple):
- =default
- –meabi=<value> – Set EABI type (default depends on triple):
- – Triple default EABI version
- =4
- – EABI version 4
- =5
- – EABI version 5
- =gnu
- – EABI GNU
- –memop-size-large=<uint> – Set large value thresthold in memory intrinsic size profiling. Value of 0 disables the large value profiling.
- –memop-size-range=<string> – Set the range of size in memory intrinsic calls to be profiled precisely, in a format of <start_val>:<end_val>
- –merror-missing-parenthesis – Error for missing parenthesis around predicate registers
- –merror-noncontigious-register – Error for register names that aren’t contigious
- –mhvx – Enable Hexagon Vector eXtensions
- –mhvx=<value> – Enable Hexagon Vector eXtensions
- =v60
- –memop-size-range=<string> – Set the range of size in memory intrinsic calls to be profiled precisely, in a format of <start_val>:<end_val>
- – Build for HVX v60
- =v62
- – Build for HVX v62
- =v65
- – Build for HVX v65
- =v66
- – Build for HVX v66
- –mips-compact-branches=<value> – MIPS Specific: Compact branch policy.
- =never
- =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 constant 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 precision 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-deprecated-warn – Suppress all deprecated warnings
- –no-discriminators – Disable generation of discriminator information.
- –no-warn – Suppress all warnings
- –nozero-initialized-in-bss – Don’t place zero-initialized symbols into bss section
- –nvptx-sched4reg – NVPTX Specific: schedule for register pressue
- –object-cache-dir=<string> – Directory to store cached object files (must be user writable)
- –per-module-lazy – Performs lazy compilation on whole module boundaries rather than individual functions
- –pie-copy-relocations – PIE Copy Relocations
- –poison-checking-function-local – Check that returns are non-poison (for testing)
- –r600-ir-structurize – Use StructurizeCFG IR pass
- –rdf-dump –
- –rdf-limit=<uint> –
- –relax-elf-relocations – Emit GOTPCRELX/REX_GOTPCRELX instead of GOTPCREL on x86-64 ELF
- –relocation-model=<value> – Choose relocation model
- =static
- –mips16-hard-float – Enable mips16 hard float.
- – Non-relocatable code
- =pic
- – Fully relocatable, position independent code
- =dynamic-no-pic
- – Relocatable external references, non-relocatable code
- =ropi
- – Code and read-only data relocatable, accessed PC-relative
- =rwpi
- – Read-write data relocatable, accessed relative to static base
- =ropi-rwpi
- – Combination of ropi and rwpi
- –remarks-section – Emit a section containing remark diagnostics metadata
- –remote-mcjit – Execute MCJIT’ed code in a separate process.
- –safepoint-ir-verifier-print-only –
- –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-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
- –speculative-counter-promotion-max-exiting=<uint> – The max number of exiting blocks of a loop to allow
- –remote-mcjit – Execute MCJIT’ed code in a separate process.
- speculative counter promotion
- speculative counter promotion
- –speculative-counter-promotion-to-loop – 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.
- –stack-alignment=<uint> – Override default stack alignment
- –stack-size-section – Emit a section containing stack size metadata
- –stack-symbol-ordering – Order local stack symbols.
- –stackrealign – Force align the stack to the minimum alignment
- –summary-file=<string> – The summary file to use for function importing.
- –tailcallopt – Turn fastcc calls into tail calls by (potentially) changing ABI.
- –thread-entry=<string> – calls the given entry-point on a new thread (jit-kind=orc-lazy only)
- –thread-model=<value> – Choose threading model
- =posix
- –stack-size-section – Emit a section containing stack size metadata
- – POSIX thread model
- =single
- – Single thread model
- –threads=<int> –
- –time-trace-granularity=<uint> – Minimum time granularity (in microseconds) traced by time profiler
- –unique-section-names – Give unique names to every section
- –use-ctors – Use .ctors instead of .init_array.
- –verify-region-info – Verify region info (time consuming)
- –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
- –time-trace-granularity=<uint> – Minimum time granularity (in microseconds) traced by time profiler
- –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
- –help-list – Display list of available options (–help-list-hidden for more)
