]> git.ipfire.org Git - thirdparty/valgrind.git/log
thirdparty/valgrind.git
15 years agoImprove performance of the fallback path when a translation is not
Julian Seward [Sun, 14 Mar 2010 15:09:27 +0000 (15:09 +0000)] 
Improve performance of the fallback path when a translation is not
found in the fast-cache.

* reduce max loading of the per-sector TT hash tables from 80% to 65%.
  This reduces the number of required probes by a factor of 3.

* when searching for a translation, don't visit the sectors in a fixed
  order.  Instead, use an MTF array in which the most popular sectors
  (in terms of most likely to hold the translation we're looking for)
  are visited first.  This reduces the number of required probes by
  another factor of 2.

These improvements have no effect on small programs, but improve
scalability on big apps.  For an application comprising 300k
translations, runtime on Memcheck is reduced by 3% and on None by
about 20%.  The average number of probes per fast-cache miss is
reduced from around 22 to less than 5.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11091

15 years agoUpdate expected outputs following r11089.
Julian Seward [Thu, 11 Mar 2010 13:58:50 +0000 (13:58 +0000)] 
Update expected outputs following r11089.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11090

15 years agoIf a race error is detected, check to see whether the raced-on address
Julian Seward [Thu, 11 Mar 2010 13:43:18 +0000 (13:43 +0000)] 
If a race error is detected, check to see whether the raced-on address
is inside a heap block, and if so, print the allocation point of the
heap block.  It's stupid not to do this considering that the
implementation already keeps track of all mallocs and frees.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11089

15 years agoGeneralized the DRD regression test stderr filter.
Bart Van Assche [Wed, 10 Mar 2010 07:05:17 +0000 (07:05 +0000)] 
Generalized the DRD regression test stderr filter.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11088

15 years agoRemoved --read-var-info=yes in order to obtain the same output (hopefully)
Bart Van Assche [Tue, 9 Mar 2010 15:45:42 +0000 (15:45 +0000)] 
Removed --read-var-info=yes in order to obtain the same output (hopefully)
on Linux and on Mac OS/X systems.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11087

15 years agoAdd mlockall support to ptrcheck. Closes #230020.
Tom Hughes [Tue, 9 Mar 2010 11:23:19 +0000 (11:23 +0000)] 
Add mlockall support to ptrcheck. Closes #230020.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11086

15 years agoRemoved ANNOTATE_HAPPENS_DONE() again.
Bart Van Assche [Mon, 8 Mar 2010 18:41:38 +0000 (18:41 +0000)] 
Removed ANNOTATE_HAPPENS_DONE() again.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11085

15 years agoAdd tests for UXTAB and SXTAH.
Julian Seward [Mon, 8 Mar 2010 15:09:06 +0000 (15:09 +0000)] 
Add tests for UXTAB and SXTAH.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11084

15 years agoFix the definedness handling of the last argument of sys_socketpair.
Julian Seward [Mon, 8 Mar 2010 14:45:26 +0000 (14:45 +0000)] 
Fix the definedness handling of the last argument of sys_socketpair.
The last argument is really a pointer to an array of two ints and so
we need to say it is an int* and not an int [2].  This just happens to
work on amd64-linux because sizeof(int [2]) == 8 == sizeof(int*).  On
arm-linux it duly craps out w/ an assertion because sizeof(int [2]) !=
sizeof(UWord).

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11083

15 years agoMarked the annotations ANNOTATE_MUTEX_IS_USED_AS_CONDVAR,
Bart Van Assche [Mon, 8 Mar 2010 07:55:23 +0000 (07:55 +0000)] 
Marked the annotations ANNOTATE_MUTEX_IS_USED_AS_CONDVAR,
ANNOTATE_UNPUBLISH_MEMORY_RANGE and ANNOTATE_SWAP_MEMORY_RANGE as deprecated.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11082

15 years agoDocument the default value of --stacks correctly.
Nicholas Nethercote [Sun, 7 Mar 2010 22:15:48 +0000 (22:15 +0000)] 
Document the default value of --stacks correctly.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11081

15 years agoDo not suppress data races on user-annotated addresses.
Bart Van Assche [Sun, 7 Mar 2010 20:07:15 +0000 (20:07 +0000)] 
Do not suppress data races on user-annotated addresses.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11080

15 years agoAdded missing newlines in debug tracing statements.
Bart Van Assche [Sun, 7 Mar 2010 20:05:58 +0000 (20:05 +0000)] 
Added missing newlines in debug tracing statements.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11079

15 years agoAdded support for marking happens-before annotated addresses in another way
Bart Van Assche [Sun, 7 Mar 2010 20:05:23 +0000 (20:05 +0000)] 
Added support for marking happens-before annotated addresses in another way
than other client objects.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11078

15 years agoSource code cleanup - no functionality has been changed.
Bart Van Assche [Sun, 7 Mar 2010 20:00:18 +0000 (20:00 +0000)] 
Source code cleanup - no functionality has been changed.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11077

15 years agoAdded yet another regression test.
Bart Van Assche [Sun, 7 Mar 2010 19:59:35 +0000 (19:59 +0000)] 
Added yet another regression test.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11076

15 years agoFollow-up for r11073: added missing segment creation statement.
Bart Van Assche [Sun, 7 Mar 2010 18:39:33 +0000 (18:39 +0000)] 
Follow-up for r11073: added missing segment creation statement.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11075

15 years agoUpdated gcc version.
Bart Van Assche [Sun, 7 Mar 2010 12:21:56 +0000 (12:21 +0000)] 
Updated gcc version.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11074

15 years agoChanges:
Bart Van Assche [Sun, 7 Mar 2010 10:54:21 +0000 (10:54 +0000)] 
Changes:
- Generalized the behavior of happens-before / happens-after annotations such
  that not only 1:1 but also n:m patterns are supported.
- Dropped support for invoking happens-before / happens-after annotations on
  POSIX condition variables (pthread_cond_t).
- Report the details about the offending synchronization object in generic
  errors.
- Converted a few tl_assert() statements into error messages.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11073

15 years agoUpdated Subversion ignore list.
Bart Van Assche [Sun, 7 Mar 2010 10:48:34 +0000 (10:48 +0000)] 
Updated Subversion ignore list.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11072

15 years agoUpdated Makefile.am.
Bart Van Assche [Sun, 7 Mar 2010 10:47:59 +0000 (10:47 +0000)] 
Updated Makefile.am.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11071

15 years agoAdded the necessary files to run the smart pointer test program as a
Bart Van Assche [Sun, 7 Mar 2010 10:47:32 +0000 (10:47 +0000)] 
Added the necessary files to run the smart pointer test program as a
regression test.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11070

15 years agoAdded a test program that triggers several happens-before usage errors.
Bart Van Assche [Sun, 7 Mar 2010 10:46:43 +0000 (10:46 +0000)] 
Added a test program that triggers several happens-before usage errors.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11069

15 years agoAdded a definition for a new annotation: ANNOTATE_HAPPENS_DONE().
Bart Van Assche [Sun, 7 Mar 2010 10:44:46 +0000 (10:44 +0000)] 
Added a definition for a new annotation: ANNOTATE_HAPPENS_DONE().

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11068

15 years agoMade the behavior of the annotate_smart_pointer test program configurable
Bart Van Assche [Sun, 7 Mar 2010 10:42:15 +0000 (10:42 +0000)] 
Made the behavior of the annotate_smart_pointer test program configurable
through command-line arguments, and made sure that the annotations present
in the source code are recognized by all Valgrind-based data race detection
tools.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11067

15 years agoUpdated Subversion ignore list.
Bart Van Assche [Sat, 6 Mar 2010 19:38:56 +0000 (19:38 +0000)] 
Updated Subversion ignore list.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11066

15 years agoChanges:
Bart Van Assche [Sat, 6 Mar 2010 10:54:36 +0000 (10:54 +0000)] 
Changes:
- Annotated the smart pointer implementation.
- Explained the purpose of the test via source code comments.
- Removed class Semaphore.
- Made it possible to specify the number of threads to be created via the
  command line.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11065

15 years agoOn amd64 all IPC calls behave as if the IPC_64 flag is set in the
Tom Hughes [Fri, 5 Mar 2010 10:11:41 +0000 (10:11 +0000)] 
On amd64 all IPC calls behave as if the IPC_64 flag is set in the
command, so pretend that it is set when calling the generic wrapper
functions in pre and post handlers. Fixes #229509.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11064

15 years agoBuilds now on Win32 too.
Bart Van Assche [Thu, 4 Mar 2010 08:51:30 +0000 (08:51 +0000)] 
Builds now on Win32 too.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11063

15 years agoRollup fixes for Helgrind:
Julian Seward [Wed, 3 Mar 2010 23:03:40 +0000 (23:03 +0000)] 
Rollup fixes for Helgrind:

* tracking of barriers: add support for resizable barriers

* resync TSan-compatible client requests with latest changes

* add direct access to the client requests used in hg_intercepts.c

* add a client request pair to disable and re-enable tracking
  of arbitrary address ranges

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11062

15 years agoMake the version number available in the valgrind.h headers, so
Julian Seward [Wed, 3 Mar 2010 22:57:47 +0000 (22:57 +0000)] 
Make the version number available in the valgrind.h headers, so
clients can do version-specific client requests.  This is something we
should have done long ago.  Still needs a way to regtest this, to
check that the embedded version matches what's stated in configure.in.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11061

15 years agoShow the requesting thread (tid) for each translation.
Julian Seward [Wed, 3 Mar 2010 22:55:42 +0000 (22:55 +0000)] 
Show the requesting thread (tid) for each translation.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11060

15 years agoAdded the source code of one more unit test.
Bart Van Assche [Tue, 2 Mar 2010 08:57:50 +0000 (08:57 +0000)] 
Added the source code of one more unit test.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11059

15 years agoFix out-of-date comment.
Julian Seward [Mon, 1 Mar 2010 16:42:56 +0000 (16:42 +0000)] 
Fix out-of-date comment.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11058

15 years agosome updates for NEWS
Nicholas Nethercote [Sun, 28 Feb 2010 23:41:07 +0000 (23:41 +0000)] 
some updates for NEWS

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11057

15 years agoUpdated the semantics of ANNOTATE_BENIGN_RACE() as discussed on the Valgrind
Bart Van Assche [Sun, 28 Feb 2010 09:51:00 +0000 (09:51 +0000)] 
Updated the semantics of ANNOTATE_BENIGN_RACE() as discussed on the Valgrind
developers mailing list (on February 15, 2010).

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11056

15 years agoAdd a wrapper for the splice system call and wire it up on
Tom Hughes [Tue, 23 Feb 2010 10:49:48 +0000 (10:49 +0000)] 
Add a wrapper for the splice system call and wire it up on
x86 and amd64 systems. Closes #205788.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11055

15 years agoAdd support for the getcpu system call on x86, ppc32 and ppc64. There
Tom Hughes [Tue, 23 Feb 2010 10:02:55 +0000 (10:02 +0000)] 
Add support for the getcpu system call on x86, ppc32 and ppc64. There
is no support for amd64 because there is no getcpu system call on that
platform - it is always done as a vsyscall in user space.

Based on patch from Aleksander Salwa. Closes #223758.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11054

15 years agoWhen creating a child thread, initially set its os_state.threadgroup
Julian Seward [Mon, 22 Feb 2010 11:03:10 +0000 (11:03 +0000)] 
When creating a child thread, initially set its os_state.threadgroup
to have the same value as the parent.  This avoids exit races leading
to hangs and strange behaviour in heavily multithreaded apps, in the
situation where threads are rapidly being created, and at the same
time an existing thread does sys_exit_group so as to terminate the
entire process.  Thanks to Konstantin S for chasing this down to a
small test case.  Fixes #226116.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11053

15 years agoRemoved trailing whitespace in C source and header files.
Bart Van Assche [Sun, 21 Feb 2010 14:52:59 +0000 (14:52 +0000)] 
Removed trailing whitespace in C source and header files.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11052

15 years agoAdd parentheses round the "zzarg" macro argument when using it as it
Tom Hughes [Fri, 19 Feb 2010 16:50:45 +0000 (16:50 +0000)] 
Add parentheses round the "zzarg" macro argument when using it as it
may expand to an expression which may mean we wind up doing the cast
before evaluating the expression... Closes #227570.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11051

15 years agoFix up a few issues with OSS ioctls. Fixes #227325.
Tom Hughes [Thu, 18 Feb 2010 15:54:45 +0000 (15:54 +0000)] 
Fix up a few issues with OSS ioctls. Fixes #227325.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11050

15 years agoIncrease number of supported threads to 500. Fixes #227328.
Julian Seward [Wed, 17 Feb 2010 16:20:04 +0000 (16:20 +0000)] 
Increase number of supported threads to 500.  Fixes #227328.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11049

15 years agoNeither FUTEX_WAKE or FUTEX_WAKE_BITSET actually dereference the
Tom Hughes [Tue, 16 Feb 2010 15:05:55 +0000 (15:05 +0000)] 
Neither FUTEX_WAKE or FUTEX_WAKE_BITSET actually dereference the
futex at all (they just use the address) so we shouldn't insist on
it's contents being define. Fixes #224723.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11048

15 years agoGuard new debug print statement in r11045 correctly (at all!)
Julian Seward [Mon, 15 Feb 2010 12:00:28 +0000 (12:00 +0000)] 
Guard new debug print statement in r11045 correctly (at all!)

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11047

15 years agoGet rid of kludgey and non-functional PID caching in the printing
Julian Seward [Mon, 15 Feb 2010 10:07:05 +0000 (10:07 +0000)] 
Get rid of kludgey and non-functional PID caching in the printing
mechanism.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11046

15 years agoMake -v messages w.r.t. finding of auxiliary debuginfo files less confusing.
Julian Seward [Mon, 15 Feb 2010 10:05:40 +0000 (10:05 +0000)] 
Make -v messages w.r.t. finding of auxiliary debuginfo files less confusing.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11045

15 years agoMake this usable on Ubuntu by explicitly specifying bash rather than dash.
Julian Seward [Mon, 15 Feb 2010 10:04:46 +0000 (10:04 +0000)] 
Make this usable on Ubuntu by explicitly specifying bash rather than dash.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11044

15 years agoHandle sys_inotify_init1.
Julian Seward [Mon, 15 Feb 2010 09:58:10 +0000 (09:58 +0000)] 
Handle sys_inotify_init1.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11043

15 years agoAdd some intercepts to make Ptrcheck usable-ish on Ubuntu 9.10 (amd64).
Julian Seward [Mon, 15 Feb 2010 09:57:49 +0000 (09:57 +0000)] 
Add some intercepts to make Ptrcheck usable-ish on Ubuntu 9.10 (amd64).

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11042

15 years agoAdd debug printing for the env-mashing machinery, to help investigate
Julian Seward [Mon, 15 Feb 2010 09:54:37 +0000 (09:54 +0000)] 
Add debug printing for the env-mashing machinery, to help investigate
#215914 ("Valgrind inserts bogus empty environment variable").

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11041

15 years agoReduce verbosity of the PDB reader a bit. Original verbosity is still
Julian Seward [Fri, 12 Feb 2010 12:19:36 +0000 (12:19 +0000)] 
Reduce verbosity of the PDB reader a bit.  Original verbosity is still
available using "-v".

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11040

15 years agoTry to find the PDB file for a given PE file by the totally kludgey
Julian Seward [Fri, 12 Feb 2010 12:12:39 +0000 (12:12 +0000)] 
Try to find the PDB file for a given PE file by the totally kludgey
method of doing "strings file.dll | egrep '\.pdb|\.PDB'".

Distantly derived from a patch by leiz@ucla.edu.  Fixes #222902,
although I still would prefer to do this the proper way, by parsing
the PE file properly.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11039

15 years agoFix bogus comparisons of PDB vs PE timestamps, so as to avoid
Julian Seward [Wed, 10 Feb 2010 13:37:37 +0000 (13:37 +0000)] 
Fix bogus comparisons of PDB vs PE timestamps, so as to avoid
signed vs unsigned confusion.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11038

15 years agoGeneralise a suppression w.r.t. __setenv on Darwin.
Julian Seward [Thu, 4 Feb 2010 12:04:14 +0000 (12:04 +0000)] 
Generalise a suppression w.r.t. __setenv on Darwin.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11037

15 years agoThe client request VG_USERREQ__LOAD_PDB_DEBUGINFO that we get from
Julian Seward [Sat, 30 Jan 2010 13:40:27 +0000 (13:40 +0000)] 
The client request VG_USERREQ__LOAD_PDB_DEBUGINFO that we get from
Wine as a notification to read PDB/PE debug info, contains a parameter
'reloc' whose purpose is unknown, and which is unused.  Rename it
accordingly, to 'unknown_purpose__reloc'.  (a non-functional change)

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11036

15 years agoFix up obviously-bogus FPO biasing a bit. Not that I have any idea if
Julian Seward [Sat, 30 Jan 2010 13:36:37 +0000 (13:36 +0000)] 
Fix up obviously-bogus FPO biasing a bit.  Not that I have any idea if
this helps at all.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11035

15 years agoMake the FPO reader much more robust against apparently nonsensical
Julian Seward [Sat, 30 Jan 2010 13:07:08 +0000 (13:07 +0000)] 
Make the FPO reader much more robust against apparently nonsensical
FPO tables.  Also, improve debug printing for FPO reading.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11034

15 years agoPE/PDB handling: allow the PDB (the debuginfo file) to be up to 1
Julian Seward [Fri, 29 Jan 2010 22:37:02 +0000 (22:37 +0000)] 
PE/PDB handling: allow the PDB (the debuginfo file) to be up to 1
minute older than the PE (the .exe/.dll it describes) even though this
doesn't seem particularly safe.  Partially fixes #190675.
(patch from Dan Kegel)

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11033

15 years agoFollowup fix to r11006. Don't pass va_list by value through client
Julian Seward [Thu, 28 Jan 2010 15:23:54 +0000 (15:23 +0000)] 
Followup fix to r11006.  Don't pass va_list by value through client
requests, since there's no guarantee it is the same size as a machine
word.

This renames the private client request VG_USERREQ__INTERNAL_PRINTF to
VG_USERREQ__INTERNAL_PRINTF_VALIST_BY_REF and changes the
argument-passing accordingly.

The public client requests VG_USERREQ__PRINTF and
VG_USERREQ__PRINTF_BACKTRACE are now deprecated, and handled only in
the case where sizeof(UWord) == sizeof(va_list).  In all other cases V
will now print a detailed error message and abort.  This breaks binary
compatibility of apps compiled using VALGRIND_PRINTF and
VALGRIND_PRINTF_BACKTRACE, but that's not easy to avoid.

VG_USERREQ__PRINTF and VG_USERREQ__PRINTF_BACKTRACE are now replaced
by VG_USERREQ__PRINTF_VALIST_BY_REF and
VG_USERREQ__PRINTF_BACKTRACE_VALIST_BY_REF.  The end-user macros
VALGRIND_PRINTF and VALGRIND_PRINTF_BACKTRACE have been adjusted to
use these new requests instead.

Overall result is that source level compatibility of code using
VALGRIND_PRINTF{,_BACKTRACE} is retained, but binary level
compatibility may be broken, necessitating a rebuild of code using
these macros.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11032

15 years agoFix handling of mprotect so as to be more consistent with the handling
Julian Seward [Wed, 27 Jan 2010 10:28:00 +0000 (10:28 +0000)] 
Fix handling of mprotect so as to be more consistent with the handling
of mmap.  Fixes #205541 and its dup #210268.  The fix is simple enough
but the analysis is a bit complex, as detailed in comments.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11031

15 years agoFix up debug printing for the PDB reader, so it can be properly
Julian Seward [Tue, 26 Jan 2010 13:26:41 +0000 (13:26 +0000)] 
Fix up debug printing for the PDB reader, so it can be properly
controlled from the command line.  Recommended flags are

-v --trace-symtab=yes "--trace-symtab-patt=*nameofinteresting.exe"

Also print entry/exit information for DEBUG_SnarfCodeView and
DEBUG_SnarfLinetab.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11030

15 years agoMake generated pkgconfig file reflect the new locations of the
Tom Hughes [Thu, 21 Jan 2010 10:24:37 +0000 (10:24 +0000)] 
Make generated pkgconfig file reflect the new locations of the
installed libraries. Patch from Jakub Jelinek. Closes #223657.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11029

15 years agoDW_OP_mod should do unsigned arithmetic. Closes #223656.
Tom Hughes [Thu, 21 Jan 2010 10:19:46 +0000 (10:19 +0000)] 
DW_OP_mod should do unsigned arithmetic. Closes #223656.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11028

15 years agoUpdated Subversion ignore list.
Bart Van Assche [Sun, 17 Jan 2010 11:02:23 +0000 (11:02 +0000)] 
Updated Subversion ignore list.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11027

15 years agoAdd command line flag --vex-guest-chase-cond=no|yes [no] to control
Julian Seward [Fri, 15 Jan 2010 10:57:57 +0000 (10:57 +0000)] 
Add command line flag --vex-guest-chase-cond=no|yes [no] to control
whether front ends should speculatively chase through conditional
branches.  Disabled by default.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11026

15 years agoApparently the dynamic linker on ARM-Linux has soname "ld-linux.so.3"
Julian Seward [Mon, 11 Jan 2010 13:02:19 +0000 (13:02 +0000)] 
Apparently the dynamic linker on ARM-Linux has soname "ld-linux.so.3"
rather than "ld-linux.so.2".  No, don't ask me why.  Anyway, on
Helgrind, don't instrument code in ld-linux.so.3.  This makes Helgrind
pretty much usable on ARM-Linux.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11025

15 years agoAdd tests for PLD (cache-prefetch-hint) instructions.
Julian Seward [Sat, 9 Jan 2010 11:44:21 +0000 (11:44 +0000)] 
Add tests for PLD (cache-prefetch-hint) instructions.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11024

15 years agoGeneralise X11 suppressions somewhat, and add a suppression needed for
Julian Seward [Fri, 8 Jan 2010 10:53:04 +0000 (10:53 +0000)] 
Generalise X11 suppressions somewhat, and add a suppression needed for
Ubuntu 9.10 on amd64.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11023

15 years agoUpdate expected output.
Julian Seward [Fri, 8 Jan 2010 10:51:25 +0000 (10:51 +0000)] 
Update expected output.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11022

15 years agoAdd the arm exp-bbv tests Makefile to the main configure.in file.
Vince Weaver [Wed, 6 Jan 2010 15:22:11 +0000 (15:22 +0000)] 
Add the arm exp-bbv tests Makefile to the main configure.in file.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11021

15 years agoAdd arm regression tests for exp-bbv tool.
Vince Weaver [Wed, 6 Jan 2010 15:15:28 +0000 (15:15 +0000)] 
Add arm regression tests for exp-bbv tool.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11020

15 years agoarm-linux: remove wrappers for __NR_ipc, __NR_mmap, __NR_sigsuspend
Julian Seward [Wed, 6 Jan 2010 11:08:18 +0000 (11:08 +0000)] 
arm-linux: remove wrappers for __NR_ipc, __NR_mmap, __NR_sigsuspend
and __NR_sigaction, which all did I_die_here and therefore can never
have been used.  I think they were here as a result of this file being
derived from the x86-linux version, and that arm-linux uses more
modern equivalents (mmap2, rt_sig*, and the broken-out versions of
ipc).

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11019

15 years agoPass sys_cacheflush along to VG_(discard_translations), so we have
Julian Seward [Wed, 6 Jan 2010 10:22:25 +0000 (10:22 +0000)] 
Pass sys_cacheflush along to VG_(discard_translations), so we have
transparent zero-cost self-modifying code support on ARM.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11018

15 years agoDisable pid caching for print output: it's wrong in a child after
Julian Seward [Mon, 4 Jan 2010 21:49:25 +0000 (21:49 +0000)] 
Disable pid caching for print output: it's wrong in a child after
a fork() and is very confusing.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11017

15 years agoEnable pread64 on arm-linux.
Julian Seward [Mon, 4 Jan 2010 21:05:42 +0000 (21:05 +0000)] 
Enable pread64 on arm-linux.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11016

15 years agoUpdated expected output after recent updates in the stack backtrace code.
Bart Van Assche [Mon, 4 Jan 2010 15:01:44 +0000 (15:01 +0000)] 
Updated expected output after recent updates in the stack backtrace code.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11015

15 years agoAnalysis/make-it-work for arm-linux.
Julian Seward [Mon, 4 Jan 2010 12:10:24 +0000 (12:10 +0000)] 
Analysis/make-it-work for arm-linux.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11014

15 years agoReverted r11010 because it was wrong.
Bart Van Assche [Mon, 4 Jan 2010 12:04:38 +0000 (12:04 +0000)] 
Reverted r11010 because it was wrong.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11013

15 years agoEnable origin tracking through arm VFP registers; was apparently
Julian Seward [Mon, 4 Jan 2010 11:48:19 +0000 (11:48 +0000)] 
Enable origin tracking through arm VFP registers; was apparently
previously not enabled only due to brain-deadness on my part.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11012

15 years agoUpdated expected output following bug fixes some time back by Ashley
Julian Seward [Mon, 4 Jan 2010 11:15:24 +0000 (11:15 +0000)] 
Updated expected output following bug fixes some time back by Ashley
Pittman.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11011

15 years agoMerged tc23_bogus_condwait.stderr.exp-linux-x86 and -ppc.
Bart Van Assche [Mon, 4 Jan 2010 10:49:48 +0000 (10:49 +0000)] 
Merged tc23_bogus_condwait.stderr.exp-linux-x86 and -ppc.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11010

15 years agoFix building of these regtests on Darwin. Not sure why they broke
Julian Seward [Mon, 4 Jan 2010 10:47:25 +0000 (10:47 +0000)] 
Fix building of these regtests on Darwin.  Not sure why they broke
in the first place.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11009

15 years agoDon't trash %ebx on x86-darwin; gcc doesn't like it and goes off to sulk.
Julian Seward [Mon, 4 Jan 2010 10:46:44 +0000 (10:46 +0000)] 
Don't trash %ebx on x86-darwin; gcc doesn't like it and goes off to sulk.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11008

15 years agoUpdate arch_test.c properly for arm-linux, and add an entry to
Julian Seward [Mon, 4 Jan 2010 10:31:41 +0000 (10:31 +0000)] 
Update arch_test.c properly for arm-linux, and add an entry to
platform_test.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11007

15 years agoDon't assume that va_list can be casted to an unsigned word. Fixes
Julian Seward [Mon, 4 Jan 2010 01:01:02 +0000 (01:01 +0000)] 
Don't assume that va_list can be casted to an unsigned word.  Fixes
the build on arm-linux with gcc-4.4 or later.  Patch from Dmitry
Zhurikhin.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11006

15 years agoInclude missing files in the tarball.
Julian Seward [Mon, 4 Jan 2010 00:59:05 +0000 (00:59 +0000)] 
Include missing files in the tarball.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11005

15 years agoAdd a test program for ARM v5 integer instructions, and also for some
Julian Seward [Sun, 3 Jan 2010 23:46:03 +0000 (23:46 +0000)] 
Add a test program for ARM v5 integer instructions, and also for some
v6 instructions.  (Johan Björk)

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11003

15 years agoAdd the default stderr_filter for this directory; else no tests work.
Julian Seward [Sun, 3 Jan 2010 23:44:34 +0000 (23:44 +0000)] 
Add the default stderr_filter for this directory; else no tests work.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11002

15 years agoHandle Iop_SqrtF32.
Julian Seward [Sun, 3 Jan 2010 22:29:32 +0000 (22:29 +0000)] 
Handle Iop_SqrtF32.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11001

15 years agoFurther buildsystem bashing, in order to try and get something
Julian Seward [Sun, 3 Jan 2010 21:25:08 +0000 (21:25 +0000)] 
Further buildsystem bashing, in order to try and get something
make-dist-able.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11000

15 years agoMake sure the Memcheck tests are built on arm-linux using hardware
Julian Seward [Sun, 3 Jan 2010 21:24:09 +0000 (21:24 +0000)] 
Make sure the Memcheck tests are built on arm-linux using hardware
floating point, since the softfloat results are way different from the
hardware one (not to mention, V reports lots of accesses-below-the-SP
in the softfloat helper functions.)

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10999

15 years agoTry to integrate none/tests/arm properly in the build system.
Julian Seward [Sun, 3 Jan 2010 17:40:07 +0000 (17:40 +0000)] 
Try to integrate none/tests/arm properly in the build system.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10998

15 years agoDisable this test (effectively) on arm-linux, since that uses
Julian Seward [Sun, 3 Jan 2010 16:10:14 +0000 (16:10 +0000)] 
Disable this test (effectively) on arm-linux, since that uses
sys_rt_sigprocmask and not the Aulde Fashionede sys_sigprocmask.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10997

15 years agoarm-linux: handle sys_signalfd4 and sys_eventfd2. Makes
Julian Seward [Sun, 3 Jan 2010 11:46:50 +0000 (11:46 +0000)] 
arm-linux: handle sys_signalfd4 and sys_eventfd2.  Makes
memcheck/tests/linux-syscalls-2007 succeed on this platform.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10996

15 years agoPortability fix for arm-linux.
Julian Seward [Sun, 3 Jan 2010 11:39:01 +0000 (11:39 +0000)] 
Portability fix for arm-linux.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10995

15 years agoHandle sys_pipe2 on arm-linux; also add some missing numbers to
Julian Seward [Sun, 3 Jan 2010 11:29:35 +0000 (11:29 +0000)] 
Handle sys_pipe2 on arm-linux; also add some missing numbers to
vki-scnums-arm-linux.h.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10994

15 years agoarm-linux: fake up the commpage entry at a lower level (in
Julian Seward [Sun, 3 Jan 2010 10:14:03 +0000 (10:14 +0000)] 
arm-linux: fake up the commpage entry at a lower level (in
parse_procselfmaps) so that the sync checker still works.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10993

15 years agoVarious minor fixups to make ppc32/64-linux work again following
Julian Seward [Sat, 2 Jan 2010 13:24:58 +0000 (13:24 +0000)] 
Various minor fixups to make ppc32/64-linux work again following
recent ARM-Linux merge.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10992

15 years agoMake regtests build on arm-linux -- all changes are to do with
Julian Seward [Sat, 2 Jan 2010 10:43:23 +0000 (10:43 +0000)] 
Make regtests build on arm-linux -- all changes are to do with
assembly code for atomic memory modifications.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10991