Commit Graph

426 Commits

Author SHA1 Message Date
Julian Seward
9ad4d494fa New options for Memcheck, --malloc-fill=<hexnumber> and
--fill-free=<hexnumber>, which cause malloc'd(etc) and free'd(etc)
blocks to be filled with the specified value.  This can apparently be
useful for shaking out hard-to-track-down memory corruption.  The
definedness/addressability of said areas is not affected -- only the
contents.  Documentation to follow.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7259
2007-11-30 21:41:40 +00:00
Julian Seward
dfebdf0206 Add regtest for the --child-silent-after-fork added in r7177.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7178
2007-11-17 23:00:47 +00:00
Julian Seward
7cf42600a1 Add a regression test for #152022.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7159
2007-11-15 22:33:32 +00:00
Nicholas Nethercote
0974a299f5 Split the OSet interface into two parts: "OSetGen_", which is the existing
interface and provides full power;  and "OSetWord_", which is an
easier-to-use interface for if you just want to store words.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6841
2007-09-17 05:30:48 +00:00
Julian Seward
57b2c66277 Oops. Fix silly error that gcc-4.3 complained about.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6792
2007-08-31 10:21:40 +00:00
Julian Seward
34454d5464 Add a custom stderr filter for memcheck/tests/amd64/defcfaexpr.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6644
2007-03-12 01:29:31 +00:00
Julian Seward
bd78cc2d2e Add a test for int3 on x86 (from Peter Maydell)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6643
2007-03-12 00:42:26 +00:00
Julian Seward
599d74dcf0 Add a test for int3 on amd64 (from Peter Maydell)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6642
2007-03-12 00:27:30 +00:00
Julian Seward
9218c18f45 Add a regression test for unwind handling of DW_CFA_def_cfa_expression.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6628
2007-02-28 13:27:37 +00:00
Julian Seward
56b7f5a6c9 Work around gcc limitations on aix.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6579
2007-02-09 02:37:11 +00:00
Julian Seward
422c3d7eab Add a test that very long function names are safely truncated in
memcheck's XML output.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6541
2007-01-19 20:28:44 +00:00
Julian Seward
43fcd4e09e Make sse1-friendly.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6525
2007-01-16 20:01:15 +00:00
Julian Seward
0bdcfd7702 Add tests to check that memcheck does not give a false error for 'xor
%reg,%reg' (in various forms) when %reg contains undefined data.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6524
2007-01-16 19:15:19 +00:00
Nicholas Nethercote
824abc79ce Fix a bug reported by Bruce Lowekamp involving the interaction of
--gen-suppressions with leak checking.  Added a regtest for it.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6514
2007-01-12 23:59:50 +00:00
Julian Seward
0e343fea86 Regtest for FXSAVE on amd64.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6499
2007-01-10 04:57:27 +00:00
Julian Seward
85204d209d Avoid printf in the recursive routines, so that the intercept of
mempcpy which is called from printf does not mess up the
carefully-balanced call-stack overflow checks that this test does on
ppc64-linux.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6471
2007-01-01 22:07:58 +00:00
Julian Seward
37c3d2ead6 Merge (from 3_2_BRANCH) r6457/8 (Support 64k pages on ppc32/64-linux
(Jakub Jelink, Dave Nomura) )



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6459
2006-12-30 17:45:08 +00:00
Nicholas Nethercote
d162731a2c Completely overhauled the internals of Memcheck's error handling. All the
different error kinds were reusing the same struct for storing their
details.  Each one used some but not all the fields, and the AddrInfo was
similar, and it was very confusing.

So I changed MC_Error and AddrInfo to be tagged unions, like Vex's IRExpr and
IRStmt types.  The resulting code is a little more verbose but much easier
to understand.  I also split up several error kinds, which also made things
simpler.  The user-visible behaviour is identical except for a couple of
very minor things that I've documented in the NEWS file for the 3.3.0
release.

Ideally I'd get rid of the Addr and Char* fields in the core Error type,
which are not always used, and do them similarly within tools.  But that
would require changing the core/tool interface, so I'm leaving it for the
moment.




git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6402
2006-12-16 00:54:12 +00:00
Julian Seward
bd211db8f5 Include missing files in tarball.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6397
2006-12-13 14:35:03 +00:00
Julian Seward
043bf89f2a Minor tidying for regtests on AIX.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6395
2006-12-12 01:38:15 +00:00
Julian Seward
b650be145e Fix various regtests, mostly by adding 64-bit outputs.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6394
2006-12-11 03:23:41 +00:00
Julian Seward
b0c6a889c2 Update a couple of expected outputs.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6390
2006-12-11 00:19:28 +00:00
Julian Seward
18f9d5c215 Update some expected outputs following r6382. There may be more ..
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6383
2006-12-06 18:53:07 +00:00
Julian Seward
7299831d35 Add a regtest for the false-uninitialised-value-report bug fixed by
vex r1675.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6354
2006-11-14 18:36:02 +00:00
Julian Seward
4413190e1a Updated expected with-TOC output.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6307
2006-10-17 11:33:23 +00:00
Julian Seward
5b26b045dd Change a bunch of pointer <-> int casts to pointer <-> long casts so
as to stop gcc complaining so much on 64-bit platforms.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6306
2006-10-17 11:09:03 +00:00
Julian Seward
a48daec904 Merge r6109:
Various minor changes to make these compile on AIX5.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6254
2006-10-17 01:26:12 +00:00
Julian Seward
9284a14f28 Merge r6108:
Supply our own random number generator; else this test produces different
results on different platforms.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6253
2006-10-17 01:25:13 +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
4b572a567e Create a new module, m_vkiscnums, and move all the system call numbers
into that.  Mostly this means moving vki_unistd-<plat>.h to
include/vki/vki-scnums-<plat>.h.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6224
2006-10-14 15:51:32 +00:00
Julian Seward
d45c6296eb Regression tests for Graydon Hoare's enhanced mempool stuff, from
Graydon himself.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6198
2006-10-06 11:45:00 +00:00
Julian Seward
5c4ca35185 Add a regtest for #133694 (munmapping of segments below
aspacem_minAddr).  (Tom Hughes)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6050
2006-09-11 20:14:21 +00:00
Julian Seward
7086ee4a21 Regression test for #132146.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6000
2006-08-16 00:28:25 +00:00
Julian Seward
45f930039b Update expected output following Graydon H's leak checker fixes.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5996
2006-08-04 12:42:06 +00:00
Julian Seward
7091136f7f Sigh .. now fix for 32-bit targets.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5936
2006-05-26 12:00:26 +00:00
Julian Seward
80ebf075c9 Fix gcc pedantry on 64-bit platforms
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5934
2006-05-26 11:29:17 +00:00
Julian Seward
3163ae8235 Update expected output.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5928
2006-05-25 18:33:56 +00:00
Julian Seward
e7c688d4aa A 1 page stack isn't big enough for this test on ppc32-linux.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5910
2006-05-21 12:40:30 +00:00
Julian Seward
dee9992c32 Update expected output following vex r1619.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5909
2006-05-21 12:18:16 +00:00
Julian Seward
9c6a78154e Yet more messing with masking approximate results.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5902
2006-05-13 02:20:11 +00:00
Julian Seward
436b6ebcdd Apparently Intel's rcpps etc approximations are more approximate than
AMD's.  Kludge everything accordingly.  Sigh.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5900
2006-05-13 01:32:41 +00:00
Julian Seward
40f0baa4ff Update expected results following change in r5898.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5899
2006-05-13 00:34:52 +00:00
Julian Seward
11d8cd39c7 Add masking for results of rcpps/rcpss/rsqrtps/rsqrtps so as to give
consistent results on all platforms.  Expected outputs not updated
yet.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5898
2006-05-13 00:23:56 +00:00
Julian Seward
4950ba1806 Comprehensive tests for bt{s,r,c,}{w,l,q} on amd64.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5892
2006-05-12 19:50:44 +00:00
Julian Seward
35b78ba27f Test x86 {push,pop}{w,l}.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5891
2006-05-12 14:24:18 +00:00
Julian Seward
3f8027095c Add another test of permissions range copying (copy_address_range_perms).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5875
2006-05-03 00:43:20 +00:00
Julian Seward
914a317eb9 Get rid of executable permissions on C source file.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5874
2006-05-02 13:02:01 +00:00
Julian Seward
c8f60db273 On x86, don't use x87 registers for 8-byte FP loads/stores; instead
use an mmx register (which is the same thing in disguise) since mmx
loads/stores are guaranteed to be the identity.  This should fix
failures of this test on x86-linux.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5843
2006-04-12 11:42:54 +00:00
Julian Seward
4f684ed6b9 Test program which uses templates to generate very long stabs (debug
info) strings.  This crashes 3.1.1 when the test is compiled with
-gstabs.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5826
2006-04-04 17:35:48 +00:00
Julian Seward
ee0cc0f1ad Un-break make dist.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5824
2006-04-04 15:43:30 +00:00