The
pmcannotate
utility can produce both C sources or assembly sources of a program with
a line-by-line based profiling.
The profiling information is retrieved through a
pmcstat(8)
raw output while the program operations are retrieved through the
objdump(1)
tool.
When calling
pmcannotate
the raw output is passed through the
pmcout.out
argument, while the program is passed through the
binaryobj
argument.
As long as
pmcannotate
relies on
objdump(1)
and
pmcstat(8)
to work, it will fail if one of them is not available.