llvm-profdata - Profile data tool
=================================

SYNOPSIS
--------

:program:`llvm-profdata` *command* [*args...*]

DESCRIPTION
-----------

The :program:`llvm-profdata` tool is a small utility for working with profile
data files.

COMMANDS
--------

* `merge <profdata_merge_>`_
* `show <profdata_show_>`_

.. program:: llvm-profdata merge

.. _profdata_merge:

MERGE
-----

SYNOPSIS
^^^^^^^^

:program:`llvm-profdata merge` [*options*] [*filenames...*]

DESCRIPTION
^^^^^^^^^^^

:program:`llvm-profdata merge` takes several profile data files
generated by PGO instrumentation and merges them together into a single
indexed profile data file.

OPTIONS
^^^^^^^

.. option:: -help

 Print a summary of command line options.

.. option:: -output=output, -o=output

 Specify the output file name.  *Output* cannot be ``-`` as the resulting
 indexed profile data can't be written to standard output.

.. program:: llvm-profdata show

.. _profdata_show:

SHOW
----

SYNOPSIS
^^^^^^^^

:program:`llvm-profdata show` [*options*] [*filename*]

DESCRIPTION
^^^^^^^^^^^

:program:`llvm-profdata show` takes a profile data file and displays the
information about the profile counters for this file and
for any of the specified function(s).

If *filename* is omitted or is ``-``, then **llvm-profdata show** reads its
input from standard input.

OPTIONS
^^^^^^^

.. option:: -all-functions

 Print details for every function.

.. option:: -counts

 Print the counter values for the displayed functions.

.. option:: -function=string

 Print details for a function if the function's name contains the given string.

.. option:: -help

 Print a summary of command line options.

.. option:: -output=output, -o=output

 Specify the output file name.  If *output* is ``-`` or it isn't specified,
 then the output is sent to standard output.

EXIT STATUS
-----------

:program:`llvm-profdata` returns 1 if the command is omitted or is invalid,
if it cannot read input files, or if there is a mismatch between their data.
