1287 Commits

Author SHA1 Message Date
Julian Seward
4e4990009a Add a new mempool test resulting from work on #254420, and update
expected output for an existing test.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11510
2011-01-23 20:47:26 +00:00
Julian Seward
5e6c90ea75 Improve error reports for addressing errors in the presence of
mempools: try and relate an invalid address to known mempool
allocated blocks, and if that fails, to malloc'd blocks that
back the mempool.  See #254420.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11509
2011-01-23 20:45:53 +00:00
Julian Seward
a8ee66085e Fix up out of date documentation for VALGRIND_CREATE_BLOCK and
VALGRIND_DISCARD.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11508
2011-01-22 11:21:58 +00:00
Julian Seward
70d8c1d1de Expand this test so as to cover FXSAVE and FXRSTOR, both REX.W and
non-REX.W variants.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11506
2011-01-21 18:14:32 +00:00
Julian Seward
1852adcac0 Memcheck, None: update avg translation size to be more realistic.
Massif: specify avg translation size at all, so as to avoid excessive
retranslations caused by the fact that the default value is far below
reality for Massif.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11494
2011-01-10 15:01:03 +00:00
Nicholas Nethercote
71e0b2a3f8 Clarify some details about "possibly lost" heap blocks.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11491
2011-01-04 23:46:07 +00:00
Tom Hughes
d0687af4c6 Rework the strcasecmp stuff a little, based on Jakub Jelinek's patch
on bug #256600 because the original version turned out to somewhat
fragile across different glibc versions.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11479
2010-11-12 10:40:20 +00:00
Tom Hughes
8051104c57 Add replacements for strcasecmp and related functions which have
hyper-optimised versions which defeat valgrind in recent versions
of glibc.

Fixes #256600 based on patch from Dmitry Djachenko.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11478
2010-11-12 10:03:13 +00:00
Bart Van Assche
64567610ee Removed superfluous semicolon.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11476
2010-10-22 15:09:38 +00:00
Julian Seward
ba806c0170 Handle new Iop_Sad8Ux4 introduced in vex r2067.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11452
2010-10-18 16:31:14 +00:00
Bart Van Assche
ed78339ff9 Avoid that using VALGRIND_GET_VBITS() / VALGRIND_SET_VBITS() triggers warnings about casting away constness.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11451
2010-10-18 16:30:50 +00:00
Julian Seward
b43eec1219 Documentation update for 3.6.0 (not including NEWS).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11440
2010-10-13 21:47:29 +00:00
Julian Seward
b3bb084c4a Increase default size of the freed blocks queue from 10MB to 20MB.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11439
2010-10-13 21:19:54 +00:00
Julian Seward
1375448f10 Make the --prefix-to-strip=... command-line option added in r11312
behave more like the original proposal in #245535.  This makes it
more flexible and general.  Also rename it.

* new name is --fullpath-after=

* allow multiple instances of --fullpath-after=

* don't require the specified strings to be prefixes, only substrings

But retain the elegant backwards-compatibility trick in Bart's r11312
commit: if --fullpath-after= is not specified at all, then behave
exactly as before.

Fixes #245535.  A mixture of patches from Bart Van Assche
(bart.vanassche@gmail.com), Alexander Potapenko (glider@google.com),
and me (integration and documentation).



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11430
2010-10-12 00:44:05 +00:00
Bart Van Assche
ad86d78a6c E-mail address update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11420
2010-10-10 18:07:31 +00:00
Tom Hughes
f4ef177f4f When a memory block changes from unreachable to possibly or definitely
reachable, or from possibly reachable to definitely reachable, rescan
it so that any blocks it points to are also upgraded. Fixes #206600.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11395
2010-10-04 20:55:21 +00:00
Julian Seward
d4a4b32e72 Don't assert when doing origin tracking for d16-31, f32-63
or q0-15.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11390
2010-09-29 21:40:44 +00:00
Julian Seward
4d88144c11 When origin tracking, handle the new %RFLAGS.ACFLAG guest state
component introduced in vex r2050.  See #249943.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11388
2010-09-28 16:00:11 +00:00
Julian Seward
70a3472d66 Partially make this work on arm-linux (for 32-bit incs), so as to give
a proper test for LDREX/STREX.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11378
2010-09-24 23:51:17 +00:00
Julian Seward
06d2a1e039 Enable --track-origins on ARM code which accesses CPSR.GE3/2/1/0.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11373
2010-09-22 22:27:41 +00:00
Julian Seward
93a35b014f Handle new 32-bit SIMD integer primops introduced in vex r2037.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11371
2010-09-22 00:58:51 +00:00
Bart Van Assche
75ac57dc3a Made timerfd-syscall test more robust by improving the time rounding algorithm.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11368
2010-09-19 17:21:31 +00:00
Bart Van Assche
3169936a1b Fixed a typo.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11367
2010-09-19 17:16:39 +00:00
Bart Van Assche
e7b5c2eb6e memcheck/tests/linux/timerfd-syscall: send output to stderr instead of stdout.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11366
2010-09-19 17:13:53 +00:00
Bart Van Assche
006b3b1228 PowerPC: added expected output files for memcheck/tests/varinfo[1-6], based
on a patch supplied by Maynard Johnson. See also #247526.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11364
2010-09-18 13:34:23 +00:00
Bart Van Assche
94e48485ec PowerPC: corrected expected output for memcheck/tests/origin5-bz2. Patch
supplied by Maynard Johnson -- see also #247526.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11363
2010-09-18 10:45:27 +00:00
Bart Van Assche
2382e79f3d Avoid triggering AM_CFLAGS / AM_CXXFLAGS redefinition warnings.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11356
2010-09-13 17:44:51 +00:00
Julian Seward
e6d2a8b34e Fix a couple of make-dist bugs, caused by recently added ppc32/64
tests.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11352
2010-09-10 14:57:46 +00:00
Julian Seward
9287d802b4 Add tests for new PowerISA_2.05 instructions available on Power6 CPUs.
(Maynard Johnson, maynardj@us.ibm.com and Pete Eberlein, eberlein@us.ibm.com)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11338
2010-09-03 23:49:33 +00:00
Julian Seward
a96d8cb715 Make the leak tests a whole lot less flaky on ppc32/64-linux by
zeroing out caller saves registers before the leak check.  We should
really do this on all platforms, not just these.
(Maynard Johnson, maynardj@us.ibm.com)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11336
2010-09-03 15:14:41 +00:00
Bart Van Assche
e9f89f7e28 Updated expected output. The output changed because of r11320.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11321
2010-09-02 10:52:54 +00:00
Bart Van Assche
6de75283c0 Improved support for VALGRIND_MALLOCLIKE_BLOCK in memcheck: error
messages printed for client-annotated blocks do now include a correct
address description. Closes #237371.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11320
2010-09-02 10:24:49 +00:00
Bart Van Assche
6633b3b908 The client requests defined in memcheck.h can now be invoked from programs compiled with the Microsoft C compiler too.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11319
2010-09-02 09:41:52 +00:00
Bart Van Assche
35eece7dd5 Added command-line option --prefix-to-strip=... Closes #245535.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11312
2010-08-31 15:18:32 +00:00
Bart Van Assche
04eca8b9d6 Updated memcheck/tests/Makefile.am.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11297
2010-08-27 10:55:04 +00:00
Bart Van Assche
faffc9a902 Filter out lines that differ between x86 and ppc.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11296
2010-08-27 10:52:40 +00:00
Bart Van Assche
8122b2aaef Added new memcheck command-line option --show-possibly-lost. Closes #201170.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11292
2010-08-26 10:56:27 +00:00
Julian Seward
d866af8d34 Change the replacement for memcpy to a vectorised version that does
word copies whenever possible.  This drastically reduces the number of
memory references Memcheck has to process and speeds up a test program
that does repeated memcpys of large blocks by a factor of 4 or more.
Also add a vectorised version of memset.

The memcpy version is also constructed with a view to be used in
exp-ptrcheck, so it can copy areas of memory without losing
pointer-identity shadow data, as happens when doing all copies at a
byte granularity.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11288
2010-08-24 09:05:52 +00:00
Julian Seward
58d26cc998 Merge from branches/THUMB: add (partial) --track-origins support for
new guest state components needed for Thumb and NEON support.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11282
2010-08-22 12:16:25 +00:00
Julian Seward
5e6248c7ed Merge from branches/THUMB: tool-side handling of new primops required
for NEON support.  Requires further checking.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11277
2010-08-22 11:54:14 +00:00
Julian Seward
b2113a567d Add in comments a (validated) strspn replacement, should it become
necessary.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11270
2010-08-20 18:24:16 +00:00
Julian Seward
9a8dd3161a Add intercepts for strstr, strpbrk, strcspn. These are needed for
glibc-2.11 when running on SSE4-enabled (virtual) CPUs, for the usual
reason: to avoid ultra-optimised routines using the SSE 4.2 PCMPxSTRx
instructions.  I would not be surprised if it turned out that strspn
was required, but I haven't seen a need for it so far.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11268
2010-08-19 13:22:34 +00:00
Julian Seward
1ec3c376a6 Track vex r2001 (initial PCMPISTRI support):
* handle new pseudo-reg XMM16 in memcheck/mc_machine.c

* run_thread_for_a_while: assert that the amd64 XMM guest reg array
  has no holes and the elements are the right size, so that the
  (PCMP)ISTRI_* helpers can treat it as an array.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11249
2010-08-06 08:01:47 +00:00
Bart Van Assche
229c4c92b3 Follow-up for r11191: made this test pass again.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11248
2010-07-31 13:37:58 +00:00
Bart Van Assche
4a91cb990c Passes now when compiled with gcc 4.5.x too.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11247
2010-07-31 13:13:53 +00:00
Julian Seward
af6f731ae8 Make the --workaround-gcc296-bugs kludge take into account the stack
redzone size.  Fixes #238208.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11217
2010-07-21 12:46:44 +00:00
Julian Seward
ee41ec86f0 Try to fix 'make dist' -- possible fallout from r11188.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11213
2010-07-15 13:05:42 +00:00
Nicholas Nethercote
11f94ef626 Make error messages at start-up more consistent. Every line of such
messages now begin with "valgrind: ", and they're more often printed before
the preamble.  This required introducing a new message kind, Vg_FailMsg, and
functions VG_(fmsg) and VG_(fmsg_bad_option), and removing
VG_(err_bad_option).

Where we used to have horrible output like this:

    [ocean:~/grind/ws2] vg5 --tool=massif --threshold=101 date
    ==31877== Massif, a heap profiler
    ==31877== Copyright (C) 2003-2010, and GNU GPL'd, by Nicholas Nethercote
    ==31877== Using Valgrind-3.6.0.SVN and LibVEX; rerun with -h for copyright info
    ==31877== Command: date
    ==31877== 
    ==31877== --threshold must be between 0.0 and 100.0
    valgrind: Bad option '--threshold'; aborting.
    valgrind: Use --help for more information.

We now have nice output like this:

    [ocean:~/grind/ws2] vg2 --tool=massif --threshold=101 date
    valgrind: Bad option: --threshold=101
    valgrind: --threshold must be between 0.0 and 100.0
    valgrind: Use --help for more information or consult the user manual.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11209
2010-07-06 04:05:23 +00:00
Nicholas Nethercote
fb6d1e0427 Fix various bits of regtest breakage on amd64-linux caused by the MACOSX106
merge.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11199
2010-07-01 01:09:42 +00:00
Nicholas Nethercote
2086d71421 Remove a bogus header file listing.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11197
2010-07-01 00:37:46 +00:00