97 Commits

Author SHA1 Message Date
Nicholas Nethercote
d5fa01883e Added 2nd expected stderr output for trivialleak; often one of the 1000 blocks
by chance retains a pointer.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2355
2004-04-10 00:53:45 +00:00
Tom Hughes
91e78b3482 Added more floating point instruction tests.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2347
2004-03-31 22:47:52 +00:00
Tom Hughes
99e443c3f5 For FPU/MMX/SSE instructions which don't reference any memory, make memcheck
look at whether the eflags are read or written and generate UCode to validate
and/or mark as valid the eflags when necessary.

CCMAIL: 78514-done@bugs.kde.org


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2344
2004-03-28 11:26:29 +00:00
Tom Hughes
3330a9f65b Added more floating point instruction tests.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2343
2004-03-28 10:33:51 +00:00
Tom Hughes
2f1fb3e5f9 Added tests for floating point multiple and divide instructions.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2340
2004-03-28 00:30:57 +00:00
Tom Hughes
cd101bf7b2 Extended instruction test system to handle x87 floating point instructions
and started working on adding tests for the x87 instruction set.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2338
2004-03-27 18:02:37 +00:00
Tom Hughes
34c0bbafdd Ignore valgrind core files.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2329
2004-03-16 11:05:16 +00:00
Tom Hughes
4ab4db0743 Filter out the ": core dumped" message from test results as the user
running the tests might have a ulimit set that prevents the core dumps.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2327
2004-03-16 11:03:09 +00:00
Jeremy Fitzhardinge
82aaa16ef9 Fix "make distcheck", and also make sure that the generated archive
contains everything needed to "make regtest".  Bump the version.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2308
2004-03-12 10:51:39 +00:00
Tom Hughes
af675e0fea Anonymise path names for libc's built with debg symbols.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2305
2004-03-09 09:59:26 +00:00
Tom Hughes
4468065436 Add an alternate (appropriately filtered) result for some systems.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2304
2004-03-09 09:16:35 +00:00
Tom Hughes
5c5cc2d261 Fix expected standard error output for mmxext tests to resolve
differences in the amount of whitespace left with different skins.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2303
2004-03-09 08:50:02 +00:00
Jeremy Fitzhardinge
5c00880d69 Use Tom's instruction set tests on all tools which do instrumentation, so
we can make it's OK for all instructions.  Helgrind is badly broken in this
test (bug 69856).


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2301
2004-03-09 01:44:11 +00:00
Tom Hughes
41028e4b60 Add some alternate regression test results for older libc's.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2294
2004-03-07 19:40:33 +00:00
Nicholas Nethercote
39c1f4e7fc Update and add various .cvsignore files.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2260
2004-02-22 19:34:55 +00:00
Nicholas Nethercote
49c135649d Now doing pre_mem_read()s on the args to execve(), so eg. Memcheck can check
them.  Added a regtest for this.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2244
2004-02-12 14:34:14 +00:00
Nicholas Nethercote
71828e0592 Make output more thread-independent.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2220
2004-01-21 17:40:16 +00:00
Nicholas Nethercote
791e61f316 Change test so output doesn't depend on thread scheduling.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2219
2004-01-21 17:34:56 +00:00
Jeremy Fitzhardinge
f4cf196dad Make badrw.c conform to C89; split things onto separate lines so it's
clear what the messages are talking about.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2192
2004-01-07 08:47:03 +00:00
Dirk Mueller
c8bff3b75e CVS_SILENT ignore
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2173
2004-01-03 15:22:09 +00:00
Dirk Mueller
1811b4b5c0 Fix compilation on FreeBSD. extracted from patch by Doug Rabson <dfr@nlsystems.com>
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2167
2004-01-03 14:18:02 +00:00
Jeremy Fitzhardinge
918c3a7b7e This jumbo-checkin is the Full Virtualization checkin. This eliminates
Valgrind's dependency on the dynamic linker for getting started, and
instead takes things into its own hands.

This checkin doesn't add much in the way of new functionality, but it
is the basis for all future work on Valgrind.  It allows us much more
flexibility in implementation, and well as increasing the reliability
of Valgrind by protecting it more from its clients.

This patch requires some changes to tools to update them to the changes
in the tool API, but they are straightforward.  See the posting "Heads
up: Full Virtualization" on valgrind-developers for a more complete
description of this change and its effects on you.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2118
2003-12-16 02:05:15 +00:00
Jeremy Fitzhardinge
e77d4b8d7e When merging multiple symbols with the same address, rather than always
choosing the longest symbol, choose the longest ignoring any of the libc
junk prefixes like __libc_, __, __GI_*, etc.  This makes the symbol
presented to the user in messages and used in *.supp files more consistent
and comprehensible.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2114
2003-12-15 09:00:21 +00:00
Nicholas Nethercote
fed872284b Tools using shadow memory can't handle the first 64KB being mapped, because
they rely on this area being unmapped for their quick sanity check.  This
commit make Valgrind refuse to mmap() this area.  Added a regtest for it.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2085
2003-12-02 14:56:04 +00:00
Nicholas Nethercote
fd5b4b7fa0 Make --leak-check observe -q properly -- only prints out errors, not general
info and summaries.

MERGE TO STABLE


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2082
2003-12-02 10:17:44 +00:00
Jeremy Fitzhardinge
146f036495 *8 is probably overkill
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2058
2003-11-21 09:22:06 +00:00
Jeremy Fitzhardinge
26e917971b fprintf needs more than 8k of stack, so boost the sigaltstack size.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2057
2003-11-21 09:06:50 +00:00
Dirk Mueller
7b252e6097 updating .cvsignore
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2038
2003-11-19 00:55:44 +00:00
Nicholas Nethercote
e9a3bff869 Changed error messages: subsidiary explanations within an error message are now
indented one space;  previously it was mixed, but Memcheck/Addrcheck indented
"Address" lines 3, which made them hard to see in the stack trace.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2021
2003-11-13 17:53:43 +00:00
Nicholas Nethercote
d7bfd760a8 Changed error messages: now don't print anything below main() unless the new
option --show-below-main is on.  It's on by default.  It also affects
suppressions generated with --gen-suppressions=yes.  Updated reg tests
accordingly.

Also updated docs for this.  And added some missing command-line args to docs.
Also compartmentalised the options a little in the docs, and rearranged the
order of options in the usage message, in anticipation of a bigger
rearrangement that will be necessary soon -- to distinguish options used by all
skins from those used by error-checking skins, to skin-specific ones.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2020
2003-11-13 17:35:04 +00:00
Jeremy Fitzhardinge
64b0808872 Only set the thread's status to WaitSys if we're actually waiting for
a proxyLWP to complete a syscall.

Update sigaltstack test to use mmap to allocate the stack.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2016
2003-11-09 09:51:33 +00:00
Nicholas Nethercote
bbfc62ea8c Fixed bug in overlap check in strncpy() -- it was assuming the src was 'n'
bytes longs, when it could be shorter, which could cause false positives.

Added an example of this to the regtest.

MERGE TO STABLE


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1983
2003-11-02 17:43:27 +00:00
Nicholas Nethercote
6afbad116a Added a regtest that uses pthreads -- there weren't any.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1966
2003-10-30 09:11:03 +00:00
Jeremy Fitzhardinge
32c9b08d6e We expect new output with the syscalls changes.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1924
2003-10-14 21:11:29 +00:00
Nicholas Nethercote
4a64211e76 Whoops, forgot to commit changes to Makefile.am when I added the 'new_nothrow'
test.

MERGE TO STABLE


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1901
2003-10-10 11:01:44 +00:00
Nicholas Nethercote
e5cca0566e Added interceptions for:
operator new(unsigned, std::nothrow_t const&)
  operator new[](unsigned, std::nothrow_t const&)

because they weren't being intercepted, and called malloc(), which caused bogus
mismatch errors.

Added a regression test for it, too.

MERGE TO STABLE (although the change to vg_replace_malloc.c won't quite be a
cut and paste job, because of prior changes made to it in the head
but not the stable branch;  merge will still be easy, though)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1899
2003-10-09 15:40:38 +00:00
Nicholas Nethercote
bc7e854aee The name-mangled versions of __builtin_new() and __builtin_vec_new() now
don't just call the unmangled versions, but do the appropriate stuff
themselves directly (this was necessary for Massif).  This means that stack
traces for them have one fewer function.  And I was able to gather up several
very similar functions into a macro, reducing the amount of code, which was
nice.  Had to update one regtest's expected output accordingly.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1875
2003-09-30 16:52:47 +00:00
Nicholas Nethercote
a2edbd2aad Fix broken regtest.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1857
2003-09-29 14:45:44 +00:00
Nicholas Nethercote
0db1843d96 Made Addrcheck distinguish between invalid reads and invalid writes (previously
was just saying "invalid memory access").

Added a regression test for this, for memcheck and addrcheck.  Also made
Addrcheck use Memcheck's fprw regtest.  Was able to remove the not-very-useful
'true' test for Addrcheck now that it has a couple of real tests.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1815
2003-09-05 23:29:33 +00:00
Nicholas Nethercote
aae64e3630 Forgot to add these files for the writev regression test.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1814
2003-09-05 23:02:38 +00:00
Nicholas Nethercote
138ada5bc2 Fixed readv() and writev() so they won't fall over if they are given a negative
count.  Added a regression test for it.

Updated the basic test stderr filter to strip out line numbers from
vg_intercept.c

MERGE TO STABLE


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1812
2003-09-04 21:57:45 +00:00
Nicholas Nethercote
7b2a49544e Fixed brk(); it was almost completely broken.
Added a regression test for it.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1810
2003-09-04 20:57:51 +00:00
Nicholas Nethercote
c2bfdc506c Changed the behaviour of realloc() in Memcheck, Addrcheck and Helgrind.
Previously, when realloc() was asked to make a block bigger, the ExeContext
describing where that block was allocated was increased;  however, if the block
became smaller or stayed the same size, the original ExeContext remained.  This
is correct in one way (that's where the memory manager actually parcelled out
the block) but it's not very intuitive.  This commit changes things so the
ExeContext of a block is always changed upon realloc().  I added a regression
test for it too.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1783
2003-07-24 17:39:59 +00:00
Nicholas Nethercote
aca466757f Changed behaviour of VALGRIND_COUNT_LEAKS slightly. Previously, the numbers it
returned (bytes leaked, dubious, etc) were incremented for every leak check
performed.  So if you called VALGRIND_DO_LEAK_CHECK twice in a row, the totals
would be updated twice by the same amount.  This was a bit silly.  So now
COUNT_LEAKS just returns the numbers of bytes leaked found from the previous
leak check.  I even updated the docs, and changed the regression test so old
version fail but the new version passes (by doing two DO_LEAK_CHECKS in a row).


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1778
2003-07-22 22:03:58 +00:00
Nicholas Nethercote
ca84f991d3 Added overlap checking to Addrcheck, mostly just moving things around. In
particular, renamed mc_replace_strmem.c as mac_replace_strmem.c;  the 'mac'
prefix indicates it's shared between Memcheck and Addrcheck.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1774
2003-07-22 09:12:33 +00:00
Julian Seward
a22d206634 Make sure all the regression tests get included in the tarball created
by 'make dist'.  Being the release dude is so exciting!


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1761
2003-07-16 19:03:10 +00:00
Julian Seward
c31032d863 Run -q
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1757
2003-07-13 22:35:55 +00:00
Julian Seward
ad483fa714 Add test for correct errno handling in threaded programs.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1755
2003-07-13 11:13:37 +00:00
Julian Seward
3fd7b59db2 Dodge around more glibc variants.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1740
2003-07-08 00:13:51 +00:00
Julian Seward
4cdfda823b Fix a whole lot more regression tests on Red Hat 7.3.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1739
2003-07-07 23:56:10 +00:00