has changed since they were generated. Also remove one
(tc23_bogus_condwait.stderr.exp-glibc25-x86) that was a duplicate.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9378
line if the results are unchanged from 24 hours ago. Makes it easier to see
(or filter) if results are unchanged.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9334
--enable-only32bit builds on my Ubuntu box:
- For all tests, replace all operator new/new[]/delete/delete[] variants
with a common form, eg. "...operator new...". This makes
exp-ptrcheck/tests/ccc and memcheck/tests/mismatches pass.
- For Helgrind tests, replace all libpthread paths with "/...libpthread...",
as is done for libc paths. This avoids problems when /lib32/libpthread.so
is the path. No extra tests pass, but many of them get a lot closer to
passing.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9333
- It heavily refactors the code: uses better names for things, splits up
complex functions that behaved very differently depending on how they were
called, removes some redundancies, and generally makes it much simpler and
easier to follow.
- It adds lots of comments, both inline, and also a big explanatory one at
the top which makes it clear exactly how the leak checker works and also
exactly what is meant by definite, possible, and indirect leaks. It also
has some ideas for future improvements.
- All tabs have been converted to spaces.
It also improves the functionality:
- Previously if you did --leak-check=summary, indirect and suppressed
blocks were counted as definite leaks. Now they are done properly, and so
the summary results from --leak-check=summary match those from
--leak-check=yes.
- Previously, some possibly reachable blocks were miscategorised as
definitely reachable, because only the pointer to the block itself was
considered, not any preceding pointers in the chain. This is now fixed.
- Added memcheck/tests/leak-cases, which fully tests all the possible
combinations of directly/indirectly reachable and possibly/definitely
reachable.
And it improves the manual quite a bit, and the FAQ a little bit.
This doesn't fix the leak checker to handle MALLOCLIKE_BLOCK works that have
been taken from within malloc'd blocks, but I think I know how to do it and
hope to do so in a subsequent commit.
It also changes all instances of "<constant>memcheck</constant>" in the
Memcheck manual to "Memcheck", for consistency and because "Memcheck" is
easier to write. There's one similar case for DRD but I didn't change that.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9330
as they may be different to those for other sections of the ELF file
if we have separated debug information and the main file has been
prelinked since they were split. Fixes bug #185816.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9329
- Removed DRD_() wrapper from around local functions and variables.
- Removed some obsolete code.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9320
- by vg_regtest for determining if a directory name matches an architecture;
- by various .vgtest files for detecting x86/AMD64 features.
This commit splits it in two for the two different purposes, which makes
things clearer.
Specific changes
- Moved the x86/AMD64 feature detection stuff out of arch_test.c, and
into the new x86_amd64_feature.c. Updated the relevant .vgtest files for
the change.
- In vg_regtest, now a prereq command must return 0 (prereq satisfied) or 1
(prereq not satisfied). Anything else makes vg_regtest abort. This
makes obvious any problems with prereq tests rather than just making the
tests skip innocuously. (We previously had exactly such a problem on the
DARWIN branch; the x86 feature detection tests caused segfaults so the
tests were incorrectly skipped. This change will catch any similar future
problem.)
- Changed os_test from a script to a C program, matching cpu_test.
- Removed some unintentional darwin stuff from platform_test.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9316