Bug found by, and fix based on a patch by Mark Wielaard
Callgrind format specification was inconsistent with
what Callgrind generates, and what callgrind_annotate
accepted. Now, callgrind_annotate accepts the examples
in the format specification.
* Callgrind writes 'cfi=' lines for when a call target goes
into another source file. According to the spec, 'cfl=' is
used for this. Change the spec to allow both, and change
callgrind_annotate to accept both.
* The spec requires just an "events:" line as minimum header
to render the file as correct according to the specification.
callgrind_annotate also expected a 'cmd=' line. Fixed.
* The 'summary:' line is optional in the spec. Fixed in
callgrind_annotate. If not provided, summary is calculated
from all cost lines.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13310
Correct a beginners PERL bug ;-)
Need to create new arrays, not just copying references to ARRAYs
around, which are modified later on...
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11497
* Patch from bug 198649 (callgrind_annotate doesn't cumulate counters)
When there were multiple call sites in one line, the aggregated
call count/cost numbers in the source annotation were wrong
* Callgrind often produces absolute file names.
Make it work with relative file names requested for annotation from
the command lines.
* More in sync with parser in KCachegrind: make summary line optional.
We can also use the "totals:" line for this.
* Count of numbers in summary can be smaller then number of events given
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10777
and created man pages for them. Renamed the XML files in the process for
consistency.
- Inlined cg-entities.xml into vg-entities.xml.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10742
- extend some to 2007
- use njn@valgrind.org instead of njn25@cam.ac.uk
- use "tool" instead of "skin"
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6703
This callgrind option produces lines starting e.g. with
"jfi" in the profile data files, which specifies a
source file change between a jump source and jump target.
This itself is meaningless for callgrind_annotate, as
it can not show jump information in its annotation.
However, such "jfi" lines can contain important mapping
info for a (file ID, file name) tuple - which leads to
further warnings and problems if ignored.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6064
I just noticed that this is still a little wrong, as counts for e.g.
"strcmp" from libc and "strcmp" from ld.so will make up only one entry,
with the object name randomly choosen... but otherwise, it matches
with the data shown by KCachegrind.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6044