blob: 90ad729ec10b2584be007e652eb030ff0210302c [file] [edit]
llvm-profgen - LLVM SPGO profile generation tool
================================================
.. program:: llvm-profgen
SYNOPSIS
--------
:program:`llvm-profgen` [*commands*] [*options*]
DESCRIPTION
-----------
The :program:`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 perf-script trace created by Linux perf tool with `script`
command(the raw perf.data should be profiled with -b).
.. option:: --perfdata=<perfdata>, --pd
Path of raw perf data created by Linux perf tool (it should be profiled
with -b).
.. option:: --unsymbolized-profile=<unsymbolized profile>, --up
Path of the unsymbolized profile created by ``llvm-profgen`` with
``--skip-symbolization``.
.. option:: --llvm-sample-profile=<llvm sample profile>
Path of the LLVM sample profile.
.. note::
Only one of ``--perfscript``, ``--perfdata``, ``--unsymbolized-profile``,
or ``--llvm-sample-profile`` may be specified at a time.
.. option:: --binary=<string[,string,...]>
Path of the input profiled binary files.
.. option:: --output=<string>
Path of the output profile file.
OPTIONS
-------
:program:`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:: --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=<debug-binary>
Path of debug info binary. ``llvm-profgen`` will load the DWARF info from
it instead of the executable binary.
.. option:: --pid
Process Id for the profiled executable binary.
.. option:: --output=<output>
Path of the output profile file.
.. option:: --data-access-perftrace=<data-access-perftrace>
File path of a Linux perf raw trace (generated by ``perf report -D``)
consisting of memory access events.