llvm-profgen - LLVM SPGO profile generation tool¶
:::{program} llvm-profgen :::
SYNOPSIS¶
llvm-profgen [commands] [options]
DESCRIPTION¶
The llvm-profgen utility generates a profile data file from given perf script data files for sample-based profile guided optimization(SPGO).
COMMANDS¶
At least one of the following commands are required:
:::{option} –perfscript=<string[,string,…]>
Path of a trace created by the Linux perf script command. For LBR or BRBE
input, the raw perf data must contain branch stacks, for example from recording
with -b.
:::
:::{option} –etm=
:::{option} –perfdata=-b.
:::
:::{option} –unsymbolized-profile=llvm-profgen with
--skip-symbolization.
:::
:::{option} –llvm-sample-profile=
:::{note}
Only one of --perfscript, --perfdata, --unsymbolized-profile,
--llvm-sample-profile, or --etm may be specified at a time.
:::
:::{option} –binary=<string[,string,…]> Path of the input profiled binary files. :::
:::{option} –output=
OPTIONS¶
llvm-profgen supports the following options:
:::{option} –format=[text|binary|extbinary|compbinary|gcc]
Specify the format of the generated profile. Supported <format> are text,
binary, extbinary, compbinary, gcc, see llvm-profdata for more
descriptions of the format.
:::
:::{option} –show-mmap-events Print mmap events. :::
:::{option} –warn-not-symbolized Warn when an address covered by a recorded mmap range cannot be symbolized. :::
:::{option} –show-disassembly Print disassembled code. :::
:::{option} –x86-asm-syntax=[att|intel] Specify whether to print assembly code in AT&T syntax (the default) or Intel syntax. :::
:::{option} –debug-binary=llvm-profgen will load the DWARF info from
it instead of the executable binary.
:::
:::{option} –target-triple=
:::{option} –pid Process Id for the profiled executable binary. :::
:::{option} –output=
:::{option} –data-access-perftrace=perf report -D)
consisting of memory access events.
:::
