OVERVIEW: llvm system compiler
USAGE: llc [options]
OPTIONS:
Color Options:
--color - Use colors in output (default=autodetect)
General options:
-I - include search path
-O - Optimization level. [-O0, -O1, -O2, or -O3] (default = '-O2')
--addrsig - Emit an address-significance table
--align-loops= - Default alignment for loops
--asm-show-inst - Emit internal instruction representation to assembly file
--asm-verbose - Add comments to directives.
--basic-block-sections= | labels | none> - Emit basic blocks into separate sections
--cfg-hide-cold-paths= - Hide blocks with relative frequency below the given value
--cfg-hide-deoptimize-paths -
--cfg-hide-unreachable-paths -
--code-model= - Choose code model
=tiny - Tiny code model
=small - Small code model
=kernel - Kernel code model
=medium - Medium code model
=large - Large code model
--data-sections - Emit data into separate sections
--debug-entry-values - Enable debug info for the debug entry values.
--debugger-tune= - Tune debug info for a particular debugger
=gdb - gdb
=lldb - lldb
=dbx - dbx
=sce - SCE targets (e.g. PS4)
--debugify-func-limit= - Set max number of processed functions per pass.
--debugify-level= - Kind of debug info to add
=locations - Locations only
=location+variables - Locations and Variables
--debugify-quiet - Suppress verbose debugify output
--denormal-fp-math= - Select which denormal numbers the code is permitted to require
=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
--denormal-fp-math-f32= - Select which denormal numbers the code is permitted to require for float
=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-i2p-p2i-opt - Disables inttoptr/ptrtoint roundtrip optimization
--disable-simplify-libcalls - Disable simplify-libcalls
--disable-tail-calls - Never emit tail calls
--dot-cfg-mssa= - file name for generated dot file
--dwarf-version= - Dwarf version
--dwarf64 - Generate debugging info in the 64-bit DWARF format
--emit-call-site-info - Emit call site debug information, if debug information is enabled.
--emit-dwarf-unwind= - Whether to emit DWARF EH frame entries.
=always - Always emit EH frame entries
=no-compact-unwind - Only emit EH frame entries when compact unwind is not available
=default - Use target platform default
--emulated-tls - Use emulated TLS model
--enable-approx-func-fp-math - Enable FP math optimizations that assume approx func
--enable-gvn-memdep -
--enable-jmc-instrument - Instrument functions with a call to __CheckForDebuggerJustMyCode
--enable-load-in-loop-pre -
--enable-load-pre -
--enable-loop-simplifycfg-term-folding -
--enable-name-compression - Enable name/filename 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-split-backedge-in-load-pre -
--enable-unsafe-fp-math - Enable optimizations that may decrease FP precision
--exception-model= - exception model
=default - 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
--experimental-debug-variable-locations - Use experimental new value-tracking variable locations
--fatal-warnings - Treat warnings as errors
--filetype= - Choose a file type (not all types are supported by all targets):
=asm - Emit an assembly ('.s') file
=obj - Emit a native object ('.o') file
=null - Emit nothing, for performance testing
--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-dwarf-frame-section - Always emit a debug frame section.
--fp-contract= - Enable aggressive formation of fused FP ops
=fast - 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= - Specify frame pointer elimination optimization
=all - Disable frame pointer elimination
=non-leaf - Disable frame pointer elimination for non-leaf frame
=none - Enable frame pointer elimination
--fs-profile-debug-bw-threshold= - Only show debug message if the source branch weight is greater than this value.
--fs-profile-debug-prob-diff-threshold= - Only show debug message if the branch probility is greater than this value (in percentage).
--function-sections - Emit functions into separate sections
--generate-merged-base-profiles - When generating nested context-sensitive profiles, always generate extra base profile for function with all its context profiles merged into it.
--ignore-xcoff-visibility - Not emit the visibility attribute for asm in AIX OS or give all symbols 'unspecified' visibility in XCOFF object file
--incremental-linker-compatible - When used with filetype=obj, emit an object file which can be used with an incremental linker
--load= - Load the specified plugin
--lower-global-dtors-via-cxa-atexit - Lower llvm.global_dtors (global destructors) via __cxa_atexit
--march= - Architecture to generate code for (see --version)
--matrix-default-layout= - Sets the default matrix layout
=column-major - Use column-major layout
=row-major - Use row-major layout
--matrix-print-after-transpose-opt -
--mattr= - Target specific attributes (-mattr=help for details)
--mc-relax-all - When used with filetype=obj, relax all fixups in the emitted object file
--mcpu= - Target a specific cpu type (-mcpu=help for details)
--meabi= - Set EABI type (default depends on triple):
=default - Triple default EABI version
=4 - EABI version 4
=5 - EABI version 5
=gnu - EABI GNU
--mir-strip-debugify-only - Should mir-strip-debug only strip debug info from debugified modules by default
--misexpect-tolerance= - Prevents emiting diagnostics when profile counts are within N% of the threshold..
--mtriple= - Override target triple for module
--no-deprecated-warn - Suppress all deprecated warnings
--no-discriminators - Disable generation of discriminator information.
--no-type-check - Suppress type errors (Wasm)
--no-warn - Suppress all warnings
--no-xray-index - Don't emit xray_fn_idx section
--nozero-initialized-in-bss - Don't place zero-initialized symbols into bss section
-o - Output filename
--opaque-pointers - Use opaque pointers
--pass-remarks-filter= - Only record optimization remarks from passes whose names match the given regular expression
--pass-remarks-format= - The format used for serializing remarks (default: YAML)
--pass-remarks-output= - Output filename for pass remarks
--relax-elf-relocations - Emit GOTPCRELX/REX_GOTPCRELX instead of GOTPCREL on x86-64 ELF
--relocation-model= - Choose relocation model
=static - 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
--run-pass= - Run compiler only for specified passes (comma separated list)
--safepoint-ir-verifier-print-only -
--sample-profile-check-record-coverage= - Emit a warning if less than N% of records in the input profile are matched to the IR.
--sample-profile-check-sample-coverage= - Emit a warning if less than N% of samples in the input profile are matched to the IR.
--sample-profile-max-propagate-iterations= - Maximum number of iterations to go through when propagating sample block/edge weights through the CFG.
--split-dwarf-file= - Specify the name of the .dwo file to encode in the DWARF output
--split-dwarf-output= - .dwo output filename
--split-machine-functions - Split out cold basic blocks from machine functions based on profile information
--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
--strict-dwarf - use strict dwarf
--swift-async-fp= - Determine when the Swift async frame pointer should be set
=auto - Determine based on deployment target
=always - Always set the bit
=never - Never set the bit
--tailcallopt - Turn fastcc calls into tail calls by (potentially) changing ABI.
--thread-model= - Choose threading model
=posix - POSIX thread model
=single - Single thread model
--time-trace - Record time trace
--time-trace-file= - Specify time trace file destination
--tls-size= - Bit size of immediate TLS offsets
--unique-basic-block-section-names - Give unique names to every basic block section
--unique-section-names - Give unique names to every section
--use-ctors - Use .ctors instead of .init_array.
--vec-extabi - Enable the AIX Extended Altivec ABI.
--verify-region-info - Verify region info (time consuming)
-x - Input language ('ir' or 'mir')
--xcoff-traceback-table - Emit the XCOFF traceback table
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