06766bdbcfe770592c0c91353cfa9e8f4d1ee4e6 |
|
23-Jun-2014 |
florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update the copyright notice in files ending in '.in' because the script change-copyright-year did not handle them. Update the script as well. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14087 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
69d495de9c26f1b99c9af8b2d366a09f23b47b76 |
|
30-Jun-2010 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Added cg_diff. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11193 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
1e0fe3ab738d721916f17db7dc0778a60e8bfbc2 |
|
22-Jun-2010 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Fix bug in the previous commit. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11185 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
93d1f17702fd595371c8cdf4a5e2bc1161535ef9 |
|
22-Jun-2010 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Allow negative numbers in the cachegrind.out.* file. Also protect against division-by-zero. Both are required for cg_diff (not yet committed) to work properly. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11184 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
a602792e053149ba35f1a76e854d222b244f7ca8 |
|
22-Jun-2010 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Make better use of references, allowing data structure updates to be more localised. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11183 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
ab773b01aac4201b41232376daf4c89d763775bd |
|
10-Aug-2009 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Make usage messages given by -h and man pages consistent for the scripts. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10756 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
3da819679b958ad50409c9206481840c2442c3ff |
|
07-Aug-2009 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Thoroughly overhauled the Cachegrind manual chapter, mostly by putting things in a more sensible order. Also tweaked the Massif chapter a bit more. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10730 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
374a36dbfb6d08ed8d77c31a88e198a861ffadf0 |
|
23-Nov-2007 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Fixed up the log file mess throughout, including the docs. This killed --log-file-qualifier and --log-file-exactly. Updated NEWS some in preparation for 3.3.0. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7202 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
61e11d07831d802030821cd3f25a2a7bcdac0928 |
|
18-Sep-2007 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
minor tweak git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6851 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
f3b61d6527aa24d2bd5e8f74be7dd40b26b1fe1f |
|
17-Sep-2007 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Add directory-reading of debug info to cachegrind. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6839 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
8693e01a5f4687187a98bc0c46ea68f864b1d621 |
|
08-Feb-2007 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Add a new flag --cachegrind-log-file to cg_annotate, which tells it precisely the name of the profile data file it should use (instead of assuming cachegrind.out.<pid> where <pid> is specified by the --<pid> flag). The old mechanism is still supported though. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6573 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
534f7814eee61f8ad2e36a733e36d58d59a574f8 |
|
22-Oct-2006 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Removed the file format description from cg_annotate.in, because it's in the Cachegrind docs. Removed the Cachegrind tech docs, because they're so out of date to be useless. My PhD dissertation gives a much better description of how Cachegrind works. (I mentioned this in the Cachegrind user manual.) The only still-useful part of Cachegrind's tech docs, the output file format description, I moved into the Cachegrind user manual. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6332 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
dac0cdac0f7155750b93e8c95aab98d97e17a7b2 |
|
21-Oct-2006 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
- Update comments about Cachegrind file format. - Be slightly more strict in accepting Cachegrind input files. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6330 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
78cce3fe9136d0ff41b9a38e99df81c6eddd2579 |
|
22-Dec-2005 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Add the name of the input file to cg_annotate's output. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5401 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
920050d2479666a4c41910b22d05be53c3434c78 |
|
21-Dec-2005 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Fixed cg_annotate bug -- when using the --sort option the primary threshold was set to zero and so no annotation was done. Also put the file format into this file, and some other tiny changes. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5396 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
45f4e7c91119c7d01a59f5e827c67841632c9314 |
|
27-Sep-2005 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
This commit merges in changes from branches/ASPACEM (specifically, changes from r4341 through r4787 inclusive). That branch is now dead. Please do not commit anything else to it. For the most part the merge was not troublesome. The main areas of uncertainty are: - build system: I had to import by hand Makefile.core-AM_CPPFLAGS.am and include it in a couple of places. Building etc seems to still work, but I haven't tried building the documentation. - syscall wrappers: Following analysis by Greg & Nick, a whole lot of stuff was moved from -generic to -linux after the branch was created. I think that is satisfactorily glued back together now. - Regtests: although this appears to work, no .out files appear, which is strange, and makes it hard to diagnose regtest failures. In particular memcheck/tests/x86/scalar.stderr.exp remains in a conflicted state. - amd64 is broken (slightly), and ppc32 will be unbuildable. I'll attend to the former shortly. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4789 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
bd77403dc7f5c34d994f490b50ce7461c2edcea7 |
|
04-Aug-2005 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Replace out-of-date email address. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4322 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
2bc10126a94b421a490b2759dc50ab67ec4ee116 |
|
08-May-2005 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
A crucial, crucial change: update my email address. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3632 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
5361242f022b38fadb4cdf02428cea8b8d901a90 |
|
12-Mar-2005 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update copyright notice for 2005 on all relevant files. Don't bother trying to be selective about it. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3303 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
9313ac4501443976bc792928b6100e98b556bc3b |
|
06-Jul-2004 |
nethercote <nethercote@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Completely overhauled Cachegrind's data structures. With the new scheme, there are two main structures: 1. The CC table holds a cost centre (CC) for every distinct source code line, as found using debug/symbol info. It's arranged by files, then functions, then lines. 2. The instr-info-table holds certain important pieces of info about each instruction -- instr_addr, instr_size, data_size, its line-CC. A pointer to the instr's info is passed to the simulation functions, which is shorter and quicker than passing the pieces individually. This is nice and simple. Previously, there was a single data structure (the BBCC table) which mingled the two purposes (maintaining CCs and caching instruction info). The CC stuff was done at the level of instructions, and there were different CC types for different kinds of instructions, and it was pretty yucky. The two simple data structures together are much less complex than the original single data structure. As a result, we have the following general improvements: - Previously, when code was unloaded all its hit/miss counts were stuck in a single "discard" CC, and so that code would not be annotated. Now this code is profiled and annotatable just like all other code. - Source code size is 27% smaller. cg_main.c is now 1472 lines, down from 2174. Some (1/3?) of this is from removing the special handling of JIFZ and general compaction, but most is from the data structure changes. Happily, a lot of the removed code was nasty. - Object code size (vgskin_cachegrind.so) is 15% smaller. - cachegrind.out.pid size is about 90+% smaller(!) Annotation time is accordingly *much* faster. Doing cost-centres at the level of source code lines rather than instructions makes a big difference, since there's typically 2--3 instructions per source line. Even better, when debug info is not present, entire functions (and even files) get collapsed into a single "???" CC. (This behaviour is no different to what happened before, it's just the collapsing used to occur in the annotation script, rather than within Cachegrind.) This is a huge win for stripped libraries. - Memory consumption is about 10--20% less, due to fewer CCs. - Speed is not much changed -- the changes were not in the intensive parts, so the only likely change is a cache improvement due to using less memory. SPEC experiments go -3 -- 10% faster, with the "average" being unchanged or perhaps a tiny bit faster. I've tested it reasonably thoroughly, it seems extremely similar result as the old version, which is highly encouraging. (The results aren't quite the same, because they are so sensitive to memory layout; even tiny changes to Cachegrind affect the results slightly.) Some particularly nice changes that happened: - No longer need an instrumentation prepass; this is because CCs are not stored grouped by BB, and they're all the same size now. (This makes various bits of code much simpler than before). - The actions to take when a BB translation is discarded (due to the translation table getting full) are much easier -- just chuck all the instr-info nodes for the BB, without touching the CCs. - Dumping the cachegrind.out.pid file at the end is much simpler, just because the CC data structure is much neater. Some other, specific changes: - Removed the JIFZ special handling, which never did what it was intended to do and just complicated things. This changes the results for REP-prefixed instructions very slightly, but it's not important. - Abbreviated the FP/MMX/SSE crap by being slightly laxer with size checking -- not an issue, since this checking was just a pale imitation of the stricter checking done in codegen anyway. - Removed "fi" and "fe" handling from cg_annotate, no longer needed due to neatening of the CC-table. - Factorised out some code a bit, so fewer monolithic slabs, particularly in SK_(instrument)(). - Just improved formatting and compacted code in general in various places. - Removed the long-commented-out sanity checking code at the bottom. Phew. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2458 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
bb1c99123c95fb9a4a2617d6e1d09559ac68db80 |
|
04-Jan-2004 |
nethercote <nethercote@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Updated copyright dates for 2004. Also added a couple of missing headers and footers to some new files. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2177 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
137bc55f216bc7d9528f159a78cdf9025e0b02ff |
|
14-Nov-2003 |
nethercote <nethercote@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Started to rescind the name "skin", replacing it with "tool". Did this in all the places that normal users will see: - command line: --tool=foo (although --skin=foo still works) - docs: removed all traces (included renaming coregrind_skins.html to coregrind_tools.html) - in the usage messages - in error messages Also did in in some places that I judged were unlikely to cause clashes with existing workspaces: - in the header comments of many files (eg. "This file is part of Memcheck, a Valgrind tool for...") - in the regtests script - in the .supp files - in AUTHORS - in README_MISSING_SYSCALL_OR_IOCTL Also update the AUTHORS file to mention Jeremy. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2027 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
01f192e7356a44dc6f2176caecd11a4698857f63 |
|
04-Jul-2003 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Operator change. No difference in behaviour, but avoids a warning with Perl 5.8.0. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1713 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
c68dfbbc5e8a5c7d772e41d6548bdf40c089e6e9 |
|
29-Apr-2003 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Couple of minor fixes: - don't keel over if run on an empty file - abort if the "summary:" line is missing; previously it gave a warning and tried to keep going but then other things broke. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1572 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
0e1b514ab8e837f75a207a037ea53a6a721e9d28 |
|
15-Apr-2003 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Updated copyright notices for 2003. Only 4 months late. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1526 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
2f68595ed11429b7eed8a07871a2d5842e1ed5f4 |
|
22-Dec-2002 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Don't assume Perl lives in /usr/bin; do a proper test for it. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1389 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
4eef8d3e7a26eee39879907bf35cefe2a702c1df |
|
14-Nov-2002 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Changed some out-of-date instances of "vg_annotate" into "cg_annotate". git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1316 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
c953984b8ee34ac55830b9871138b409d9d9476c |
|
02-Oct-2002 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Updated file descriptions in the copyright notices to reflect the core/skin split. Each skin now has its own two-line description. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1166 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
e49d8e7dfd3a9c96feb9935b5920973dfc0b170a |
|
23-Sep-2002 |
njn25 <njn25@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Files updated, added and removed in order to turn the ERASER branch into HEAD git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1086 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
9b3366a1a6a54a59a5deba5f70b7f850b5c02737 |
|
10-Jun-2002 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
vg_annotate.in: - fixed a bug that was breaking the --threshold option. vg_cachesim.c: - fixed a bug that meant instructions that didn't have a line number in the debug info were being written in cachegrind.out with whatever was the last known line number. Now using 0. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@403 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
7cf0bd3f98c4140abadc3ecc58f03895ae08efa5 |
|
08-Jun-2002 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Removed the need for the user to generate a cache simulation -- now do automatic cache configuration detection using the CPUID instruction. This can be overridden from the command-line if necessary. vg_include.h: - added the cache_t type and UNDEFINED_CACHE macro - added command line args (of type cache_t) allowing manual override of I1/D1/L2 configuration - added log2(), which is generally useful vg_main.c, valgrind.in, cachegrind.in: - added handling of the new --{I1,D1,L2}=<size>,<assoc>,<line_size> options vg_cachesim.c: - lots of stuff for auto-detecting cache configuration with CPUID. Only handles Intel and AMD chips at the moment, and possibly not all of them. Falls back onto defaults if anything goes wrong, and the configs can be manually overridden from the command line anyway. - now not printing cache summary stats if verbosity == 0. Still writing cachegrind.out, though. vg_cachesim_gen.c: - new file containing stuff shared by the I1/D1/L2 simulations vg_cachesim_{I1,D1,L2}: - removed most of it; each now just calls a macro defined in vg_cachesim_gen.c vg_cachegen: - has been cvs removed as it is no longer needed. Makefile.am: - added vg_cachesim_gen.c - removed vg_cachegen configure.in: - removed vg_cachegen git-svn-id: svn://svn.valgrind.org/valgrind/trunk@400 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
3c23d434e811d997f4210a07400d2c81b4ab4184 |
|
02-Jun-2002 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Update author attributions. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@350 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
b94e77a2ed7338727e241972dead3fc1d06a6e86 |
|
15-May-2002 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Fix incredibly stupid bug. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@270 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
bff88769e202d503681e5f6cec1e93ca2d24e938 |
|
13-May-2002 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Expanded --sort option to take threshold args with the event names. Lets you do things like "show functions covering 99% of all D2mr events *and* 99% of all D2mw events" - before you could only choose the threshold for one. Useful for me, but probably no-one else. Still mentioned it in the docs, though. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@269 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
75b30a91480764135058e7f70d4bdbbe0a32d1db |
|
03-May-2002 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Removed description of cachegrind.out file format, since it's now in the tech docs. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@199 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
d722c20de24326e0634996be89e9af98688c00cd |
|
01-May-2002 |
daywalker <daywalker@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
fix for auto-annotating C++ method names (they have :'s in it) git-svn-id: svn://svn.valgrind.org/valgrind/trunk@191 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
602392b1f2902bda01bfc185c67b77aa700ec61a |
|
30-Apr-2002 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Right-justifying event names instead of left-justifying; easier to read when large numbers are involved and the columns are wide. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@174 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
aa6feccbe4ff707eceb21a79eafda247e08e5f46 |
|
29-Apr-2002 |
sewardj <sewardj@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
Config/build/install vg_annotate and vg_cachegen correctly. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@169 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|
4f9c93451bfd464ec0500c284b9d136ffdee8959 |
|
29-Apr-2002 |
njn <njn@a5019735-40e9-0310-863c-91ae7b9d1cf9> |
New files: - vg_cachesim.c - vg_cachesim_{I1,D1,L2}.c - vg_annotate.in - vg_cachegen.in Changes to existing files: - valgrind/valgrind.in, added option: --cachesim=no|yes [no] - Makefile/Makefile.am: * added vg_cachesim.c to valgrind_so_SOURCES var * added vg_cachesim_I1.c, vg_cachesim_D1.c, vg_cachesim_L2.c to noinst_HEADERS var * added vg_annotate, vg_cachegen to 'bin_SCRIPTS' var, and added empty targets for them - vg_main.c: * added two offsets for cache sim functions (put in positions 17a,17b) * added option handling (detection of --cachesim=yes which turns off of --instrument); * added calls to cachesim initialisation/finalisation functions - vg_mylibc: added some system call wrappers (for chmod, open_write, etc) for file writing - vg_symtab2.c: * allow it to read symbols if either of --instrument or --cachesim is used * made vg_symtab2.c:vg_what_{line,fn}_is_this extern, renaming it as VG_(what_line_is_this) (and added to vg_include.h) * completely rewrote the read loop in vg_read_lib_symbols, fixing several bugs. Much better now, although probably not perfect. It's also relatively fragile -- I'm using the "die immediately if anything unexpected happens" approach. - vg_to_ucode.c: * in VG_(disBB), patching in x86 instruction size into extra4b field of JMP instructions at the end of basic blocks if --cachesim=yes. Shifted things around to do this; also had to fiddle around with single-step stuff to get this to work, by not sticking extra JMPs on the end of the single-instruction block if there was already one there (to avoid breaking an assertion in vg_cachesim.c). Did a similar thing to avoid an extra JMP on huge basic blocks that are split. - vg_translate.c: * if --cachesim=yes call the cachesim instrumentation phase * made some functions extern and renamed: allocCodeBlock() --> VG_(allocCodeBlock)() freeCodeBlock() --> VG_(freeCodeBlock)() copyUInstr() --> VG_(copyUInstr)() (added to vg_include.h too) - vg_include.c: declared * cachesim offsets * exports of vg_cachesim.c * added four new profiling events (increasing VGP_M_CCS to 24 -- I kept the spare ones) * added comment about UInstr.extra4b field being used for instr size in JMPs for cache simulation - docs/manual.html: * Added --cachesim option to section 2.5. * Added cache profiling stuff as section 7. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@168 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/cachegrind/cg_annotate.in
|