343 Commits

Author SHA1 Message Date
Julian Seward
172505c978 Update copyright dates.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6488
2007-01-08 06:01:59 +00:00
Julian Seward
1083ded7e2 Non-functional commit: track IR renaming in vex r1689.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6416
2006-12-24 02:24:11 +00:00
Julian Seward
62d6f5c373 Fix 'make html-docs' and 'make print-docs'.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6389
2006-12-10 02:59:16 +00:00
Nicholas Nethercote
2c3a6359bb Use the newly-added dopyIRBBExceptStmts() in tools.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6372
2006-11-25 22:38:11 +00:00
Josef Weidendorfer
cbe9835fa9 Cachegrind/Callgrind: Fix cache parameter detection
On Intel processors, CPUIDs cache parameter code 0x49 is
reused both for L2 and L3 parameters.
Thanks to Ulrich Drepper.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6369
2006-11-23 13:04:30 +00:00
Nicholas Nethercote
38011f7248 Fix obscure bug in cache simulation, found by Ulrich Drepper.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6365
2006-11-22 11:38:07 +00:00
Nicholas Nethercote
49597e705c Update for recent removal of Cachegrind tech docs.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6336
2006-10-21 23:18:57 +00:00
Nicholas Nethercote
df0cb32d94 Link to dissertation with a proper link.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6334
2006-10-21 23:00:59 +00:00
Nicholas Nethercote
525ca8b1ee 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
2006-10-21 22:22:59 +00:00
Nicholas Nethercote
f280fb47d2 - 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
2006-10-21 18:22:35 +00:00
Julian Seward
12ef34f623 Track SysRes change.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6294
2006-10-17 02:15:17 +00:00
Julian Seward
713b2d46c0 Merge r6086:
Makefile.am changes for AIX5.  Almost all boilerplate stuff fitting in
with the existing factorisation scheme.  The only change of interest
is that configure.in now generates automake symbols of name
VGP_platform and VGO_os, whereas previously it just made VG_platform
which was a bit inconsistent with the VGP/VGO/VGA scheme used in C
code.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6242
2006-10-17 00:56:43 +00:00
Julian Seward
f4560d1332 Move functions which deal with bad command line options from m_main
into m_options.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6233
2006-10-15 01:25:13 +00:00
Julian Seward
ae8215b3ac Create a new module, m_vki, and move all knowledge about the kernel
interface, except for the syscall numbers, into that.  Mostly this
means moving include/vki-*.h to include/vki/vki-*.h.

include/pub_tool_basics.h previously dragged in the entire kernel
interface.  I've done away with that, so that modules which need to
see the kernel interface now have to include pub_{core,tool}_vki.h
explicitly.  This is why there are many modified .c files -- they have
all acquired an extra #include line.

This certainly breaks all platforms except x86.  Will fix shortly.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6225
2006-10-14 19:26:10 +00:00
Josef Weidendorfer
fd997073d2 Cachegrind: Update cache parameter detection
This updates the automatic detection of cache parameters
for x86 and amd64 according to revision 21 of
Intels x86 Architecture Software Developer Manual, Volume 2a.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6211
2006-10-12 14:23:38 +00:00
Julian Seward
8ab1a1392d Print the same text as micro_ops_warn on x86; doing otherwise defeats the
stderr filter for said text and so makes the test fail on Pentium-4's in
64-bit mode.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5995
2006-08-01 17:26:38 +00:00
Julian Seward
ad67fd79fe Update copyright dates.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5954
2006-06-05 23:21:15 +00:00
Nicholas Nethercote
8e42c9224c - Fix indentation in one section of Cachegrind
- In the same section, use VG_(percentify) to avoid overflow when computing
  information for -v printing.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5857
2006-04-18 22:34:48 +00:00
Julian Seward
72341b358b Index the BB_info table by redirected guest address, not
non-redirected guest address.  This is a small but significant change
needed to make function wrapping work.  The problem is that with
function wrapping two different translations are associated with the
non-redirected address (of a wrapped function entry point), and so
cachegrind asserts.  Whereas the redirected guest addresses reflect
the reality of only one translation associated with each address.  So
use them instead.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5582
2006-01-22 01:12:51 +00:00
Julian Seward
15519cf976 Test to check that cachegrind's BB_info management system isn't
confused by function wrapping.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5579
2006-01-22 01:08:40 +00:00
Julian Seward
f0d678baab These files all speak about instrumentation functions.
Instrumentation functions now take a callback closure structure
(VgCallbackClosure*), so this commit changes the signatures
accordingly.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5535
2006-01-17 02:06:39 +00:00
Julian Seward
dd3b4bf6f2 amd64-linux adjustments as a followup to r5493.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5494
2006-01-04 02:55:03 +00:00
Julian Seward
32f134b8c1 Somewhat rehash the biarch-build machinery so as to (1) formalise the
distinction between primary and secondary build targets, and (2) make
it independent of the default behaviour of gcc (iow, what gcc does
when you specify neither -m32 nor -m64).

As a result, an out-of-the-box build on ppc64-linux now builds a
system which is basically for 64-bit PowerPC, but also has the ability
to run 32-bit ppc-linux binaries (exactly the same arrangement as you
get when building on amd64-linux).

There are various twists and turns.  multiple-architectures.txt is
updated all the gory details.

This will break amd64 builds until such time as
<tool>/tests/{amd64,x86}/Makefile.am are fixed up (shortly).



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5493
2006-01-04 01:20:28 +00:00
Nicholas Nethercote
7683c8c703 Fix a nasty 64-bit-uncleanness bug in OSet spotted by Julian -- for fast
comparisons it was only considering the bottom 32-bits of the key.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5427
2005-12-24 03:10:56 +00:00
Julian Seward
ad2d83c77b ppc64-linux fixes.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5421
2005-12-23 12:47:42 +00:00
Nicholas Nethercote
9f216ffd28 Add the name of the input file to cg_annotate's output.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5401
2005-12-22 06:14:42 +00:00
Nicholas Nethercote
ddb8c4241a 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
2005-12-21 19:45:29 +00:00
Nicholas Nethercote
3866282110 Remove all remaining profiling gunk.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5388
2005-12-19 22:48:39 +00:00
Nicholas Nethercote
ac3c9c7f27 Fix minor Cachegrind bug that was occasionally causing misattributions of
counts when a function name was used in more than one module.  This showed
up for "???" functions when profiling Valgrind itself.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5319
2005-12-08 23:18:50 +00:00
Nicholas Nethercote
fe3cc3bdf9 Change hp2ps to output .ps files in the same dir that the .hp input files
are in.  This fixes bug #117686.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5287
2005-12-05 20:45:59 +00:00
Donna Robinson
9888e86b06 Tidying up stuff re generating manpage from *.xml docs
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5277
2005-12-03 23:02:33 +00:00
Julian Seward
f75620d58a Add directories missed in r5250 (ppc64 first checkin).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5251
2005-11-29 13:53:48 +00:00
Julian Seward
8ba9a34088 Add framework for ppc64 support. Apologies in advance for the
inevitable breakage to other platforms.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5250
2005-11-29 13:05:56 +00:00
Donna Robinson
81d6ed4433 Minor doc tweaks, mostly white space
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5201
2005-11-18 22:09:58 +00:00
Nicholas Nethercote
f21af77397 document
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5175
2005-11-17 19:32:59 +00:00
Nicholas Nethercote
bc6e62240e Change the cannot-detect-cache-config message on PPC32 so we can filter
for it more precisely and thus tell if the auto-detection ever fails on
x86/AMD64.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5173
2005-11-17 19:28:18 +00:00
Julian Seward
847c90dbfd Filter out I-have-no-idea-what-your-caches-are message, so these tests
don't fail on ppc32.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5159
2005-11-17 10:56:08 +00:00
Julian Seward
d07dbe4a52 Complete documentation trawl for 3.1.0.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5137
2005-11-15 20:56:23 +00:00
Nicholas Nethercote
3ef437fe82 Inline cachesim_*_doref(). This gains about 5--10% in speed.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5117
2005-11-13 17:57:32 +00:00
Nicholas Nethercote
a47e49800f Remove commented-out x86/AMD64 stuff from PPC32 file.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5103
2005-11-12 21:57:09 +00:00
Tom Hughes
0d655cf263 Add -m32 for assembly code when possible.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5089
2005-11-11 14:57:12 +00:00
Tom Hughes
8cc5ae14db Allow 32 bit x86 tests to run on amd64 machines.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5087
2005-11-11 14:33:43 +00:00
Nicholas Nethercote
3035e5abee Cachegrind was aborting if it hit a client request. Now it doesn't.
This fixes #116057, I think.  I added a regtest so it won't regress again.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5072
2005-11-10 15:20:37 +00:00
Tom Hughes
b5c033e906 Dual architecture support - this commit is a major rework of the build
system that allows multiple copies of valgrind to be built so that we
can build both x86 and amd64 versions of the tools on amd64 machines.

The launcher is then modified to look at the program being run and
decide which tool to use to run it.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5027
2005-11-07 15:24:38 +00:00
Julian Seward
d5afec1f4b Make ULong_width(0) return 1 instead of 1431655765. This stops
cachegrind segfaulting if it can't open its output file.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4973
2005-11-01 02:20:19 +00:00
Julian Seward
ebb032b983 Don't assume the first statement is an IRMark, since it could instead
be part of a self-check.  Instead, copy verbatim any IR preamble
preceding the first IMark.  This stops cachegrind asserting on
self-checking translations.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4967
2005-10-23 12:06:55 +00:00
Julian Seward
1a90cce793 Oops, un-break cachegrind regtesting following r4951.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4953
2005-10-20 00:30:30 +00:00
Julian Seward
9f24dcde2a Clarify the P4 warning message a bit.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4951
2005-10-19 23:49:45 +00:00
Julian Seward
fb8743cd20 rm unused var
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4950
2005-10-19 23:49:20 +00:00
Julian Seward
1813e8fdcd Change the core-tool interface so that tools are fully aware of both
the guest extents for the presented translation and also its original
un-redirected guest address.  These changes are needed in particular
to make cachegrind's code cache management work properly.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4943
2005-10-18 12:04:18 +00:00