1 llvm-profdata - Profile data tool
2 =================================
7 :program:`llvm-profdata` *command* [*args...*]
12 The :program:`llvm-profdata` tool is a small utility for working with profile
18 * :ref:`merge <profdata-merge>`
19 * :ref:`show <profdata-show>`
21 .. program:: llvm-profdata merge
31 :program:`llvm-profdata merge` [*options*] [*filename[:weight]...*]
36 :program:`llvm-profdata merge` takes several profile data files
37 generated by PGO instrumentation and merges them together into a single
38 indexed profile data file.
40 The profile counts in each input file can be scaled (multiplied) by specifying
41 ``<filename>:<weight>``, where `<weight>` is a decimal integer >= 1.
42 A default weight of 1 is assumed if only `<filename>` is given.
49 Print a summary of command line options.
51 .. option:: -output=output, -o=output
53 Specify the output file name. *Output* cannot be ``-`` as the resulting
54 indexed profile data can't be written to standard output.
56 .. option:: -instr (default)
58 Specify that the input profile is an instrumentation-based profile.
62 Specify that the input profile is a sample-based profile.
64 The format of the generated file can be generated in one of three ways:
66 .. option:: -binary (default)
68 Emit the profile using a binary encoding. For instrumentation-based profile
69 the output format is the indexed binary format.
73 Emit the profile in text mode. This option can also be used with both
74 sample-based and instrumentation-based profile. When this option is used
75 the profile will be dumped in the text format that is parsable by the profile
80 Emit the profile using GCC's gcov format (Not yet supported).
82 .. program:: llvm-profdata show
92 :program:`llvm-profdata show` [*options*] [*filename*]
97 :program:`llvm-profdata show` takes a profile data file and displays the
98 information about the profile counters for this file and
99 for any of the specified function(s).
101 If *filename* is omitted or is ``-``, then **llvm-profdata show** reads its
102 input from standard input.
107 .. option:: -all-functions
109 Print details for every function.
113 Print the counter values for the displayed functions.
115 .. option:: -function=string
117 Print details for a function if the function's name contains the given string.
121 Print a summary of command line options.
123 .. option:: -output=output, -o=output
125 Specify the output file name. If *output* is ``-`` or it isn't specified,
126 then the output is sent to standard output.
128 .. option:: -instr (default)
130 Specify that the input profile is an instrumentation-based profile.
134 Instruct the profile dumper to show profile counts in the text format of the
135 instrumentation-based profile data representation. By default, the profile
136 information is dumped in a more human readable form (also in text) with
141 Specify that the input profile is a sample-based profile.
146 :program:`llvm-profdata` returns 1 if the command is omitted or is invalid,
147 if it cannot read input files, or if there is a mismatch between their data.