llvm-profgen1
Llvm spgo profile generation tool
Usage
llvm-profgen [commands]
[options]
Overview
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:
-
--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).
-
--etm=<string> -
Path of the ETM trace file created by ARM CoreSight trace tools. Requires the OpenCSD library version 1.5.4 or higher to be enabled during the build.
-
--perfdata=<perfdata>, --pd -
Path of raw perf data created by Linux perf tool (it should be profiled with -b).
- --unsymbolized-profile=<unsymbolized profile>, --up
-
Path of the unsymbolized profile created by
llvm-profgenwith--skip-symbolization.
- --llvm-sample-profile=<llvm sample profile>
-
Path of the LLVM sample profile.
Note:
Only one of --perfscript, --perfdata, --unsymbolized-profile, --llvm-sample-profile, or --etm may be specified at a time.
-
--binary=<string[,string,...]> -
Path of the input profiled binary files.
-
--output=<string> -
Path of the output profile file.
Options
llvm-profgen supports the following options:
-
--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.
-
--show-mmap-events -
Print mmap events.
-
--show-disassembly -
Print disassembled code.
-
--x86-asm-syntax=[att|intel] -
Specify whether to print assembly code in AT&T syntax (the default) or Intel syntax.
-
--debug-binary=<debug-binary> -
Path of debug info binary.
llvm-profgenwill load the DWARF info from it instead of the executable binary.
-
--target-triple=<triple> -
Override the target triple for the binary. This is useful for ETM trace decoding to specify the correct Arm M-profile target.
-
--pid -
Process Id for the profiled executable binary.
-
--output=<output> -
Path of the output profile file.
-
--data-access-perftrace=<data-access-perftrace> -
File path of a Linux perf raw trace (generated by perf report -D) consisting of memory access events.