]> git.ipfire.org Git - thirdparty/valgrind.git/log
thirdparty/valgrind.git
13 years agoadd optional arg [aspacemgr] to v.info memory to show aspacemgr segments.
Philippe Waroquiers [Fri, 27 Apr 2012 22:59:43 +0000 (22:59 +0000)] 
add optional arg [aspacemgr] to v.info memory to show aspacemgr segments.

When investigating Valgrind out of memory situation,
it is useful to be able to output the list of segments of the
aspacemgr at any moment.
The GDB monitor command "v.info memory" has now an optional
argument allowing to output this list of segments

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

13 years agoAdd feature detection for amd64.avx, and (potentially) FMA.
Julian Seward [Thu, 26 Apr 2012 14:17:50 +0000 (14:17 +0000)] 
Add feature detection for amd64.avx, and (potentially) FMA.

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

13 years agoFor --profile-flags=, weight the counts by the number of guest insns
Julian Seward [Tue, 24 Apr 2012 11:50:49 +0000 (11:50 +0000)] 
For --profile-flags=, weight the counts by the number of guest insns
in each IRSB, rather than considering each IRSB to have a weight of 1.
This probably gives more representative profiles, especially post
t-chain merge, which made inter-SB transitions more or less free
compared to what they were before.

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

13 years agoPOWER Processor decimal floating point instruction support, part 3 --
Julian Seward [Mon, 23 Apr 2012 11:22:05 +0000 (11:22 +0000)] 
POWER Processor decimal floating point instruction support, part 3 --
test cases.  (Carl Love, carll@us.ibm.com).  Bug 298080.

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

13 years agoUpdate.
Julian Seward [Mon, 23 Apr 2012 09:53:36 +0000 (09:53 +0000)] 
Update.

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

13 years agoDisable debug printing w.r.t. sector unlinking.
Julian Seward [Mon, 23 Apr 2012 09:53:20 +0000 (09:53 +0000)] 
Disable debug printing w.r.t. sector unlinking.

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

13 years agoFix makefile to allow compilation with gcc -g3.
Florian Krohm [Sun, 22 Apr 2012 19:27:44 +0000 (19:27 +0000)] 
Fix makefile to allow compilation with gcc -g3.
Fixes bugzilla #297993 (together with VEX r2310).
Patch by  Daniel Richard G. (skunk@iskunk.org).

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

13 years agotchain optimisation for s390 (valgrind bits)
Florian Krohm [Sun, 22 Apr 2012 17:39:37 +0000 (17:39 +0000)] 
tchain optimisation for s390 (valgrind bits)
Companion of VEX r2308
Move address arithmetic to recover place to patch into VEX.

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

13 years agoFollowup to r12527. Use 32-bit arithmetic to increment xindir
Florian Krohm [Sun, 22 Apr 2012 15:37:15 +0000 (15:37 +0000)] 
Followup to r12527. Use 32-bit arithmetic to increment xindir
performance counters. Remove #ifdef'ery.

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

13 years agoAnnounce fix.
Florian Krohm [Sun, 22 Apr 2012 03:53:40 +0000 (03:53 +0000)] 
Announce fix.

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

13 years agoBe lenient if the machine model could not be determined. Assume it's
Florian Krohm [Sun, 22 Apr 2012 03:50:20 +0000 (03:50 +0000)] 
Be lenient if the machine model could not be determined. Assume it's
a new machine as opposed to a too old machine.
Patch by Christian Borntraeger (borntraeger@de.ibm.com) with additional
commentary. Fixes 298394.

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

13 years agoUpdate s390 status
Florian Krohm [Sun, 22 Apr 2012 02:58:49 +0000 (02:58 +0000)] 
Update s390 status

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

13 years agoConsolidate and update information about dependencies of
Florian Krohm [Sun, 22 Apr 2012 02:48:20 +0000 (02:48 +0000)] 
Consolidate and update information about dependencies of
VG_(machine_get_hwcaps) for all architectures in pub_core_machine.h
and avoid double maintenance.

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

13 years agoUpdate.
Julian Seward [Sat, 21 Apr 2012 23:53:07 +0000 (23:53 +0000)] 
Update.

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

13 years agoUse 32-bit XIndir counter incs, instead of 64-bit, as per r12527.
Julian Seward [Sat, 21 Apr 2012 23:37:16 +0000 (23:37 +0000)] 
Use 32-bit XIndir counter incs, instead of 64-bit, as per r12527.

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

13 years agoUse 32-bit XIndir counter incs, instead of 64-bit, as per r12527.
Julian Seward [Sat, 21 Apr 2012 23:28:34 +0000 (23:28 +0000)] 
Use 32-bit XIndir counter incs, instead of 64-bit, as per r12527.

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

13 years agoUse 32-bit XIndir counter incs, instead of 64-bit, as per r12527.
Julian Seward [Sat, 21 Apr 2012 23:12:07 +0000 (23:12 +0000)] 
Use 32-bit XIndir counter incs, instead of 64-bit, as per r12527.

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

13 years agoLast optimisation for the day: change VG_(stats__n_xindirs) in such a
Julian Seward [Sat, 21 Apr 2012 23:05:57 +0000 (23:05 +0000)] 
Last optimisation for the day: change VG_(stats__n_xindirs) in such a
way that the fast-path through VG_(disp_cp_xindir) only has to
increment a 32 bit counter, saving memory bandwidth on 32 bit
platforms compared to a 64-bit inc.  The overall numbers of XIndirs
can still be 64 bit though.

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

13 years agoKludge around a compiler warning, and add explanatory comment.
Julian Seward [Sat, 21 Apr 2012 22:33:44 +0000 (22:33 +0000)] 
Kludge around a compiler warning, and add explanatory comment.

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

13 years agoSet VEX_HWCAPS_S390X_STFLE if available.
Florian Krohm [Sat, 21 Apr 2012 15:43:25 +0000 (15:43 +0000)] 
Set VEX_HWCAPS_S390X_STFLE if available.
This should have been part of r12335.

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

13 years ago(post-tchain-merge cleanup): fix call to handle_syscall on x86-darwin.
Julian Seward [Sat, 21 Apr 2012 15:35:12 +0000 (15:35 +0000)] 
(post-tchain-merge cleanup): fix call to handle_syscall on x86-darwin.

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

13 years agoFix assertion failure on x86-darwin following r12504 (pread fix)
Julian Seward [Sat, 21 Apr 2012 15:33:26 +0000 (15:33 +0000)] 
Fix assertion failure on x86-darwin following r12504 (pread fix)

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

13 years ago(post-tchain-merge cleanup): un-break the build on OSX by fixing up
Julian Seward [Sat, 21 Apr 2012 13:55:28 +0000 (13:55 +0000)] 
(post-tchain-merge cleanup): un-break the build on OSX by fixing up
the dispatcher code accordingly.

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

13 years agoUpdate.
Julian Seward [Sat, 21 Apr 2012 08:18:33 +0000 (08:18 +0000)] 
Update.

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

13 years agoComment update (was moved to t-chaining-notes.txt)
Julian Seward [Sat, 21 Apr 2012 07:37:21 +0000 (07:37 +0000)] 
Comment update (was moved to t-chaining-notes.txt)

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

13 years agoUpdate, post-merge.
Julian Seward [Sat, 21 Apr 2012 00:27:56 +0000 (00:27 +0000)] 
Update, post-merge.

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

13 years agoMerge branches/TCHAIN from r12476 (its creation point) into trunk.
Julian Seward [Fri, 20 Apr 2012 23:58:55 +0000 (23:58 +0000)] 
Merge branches/TCHAIN from r12476 (its creation point) into trunk.

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

13 years agoAdd a missing included, needed for ppc targets.
Julian Seward [Fri, 20 Apr 2012 15:42:12 +0000 (15:42 +0000)] 
Add a missing included, needed for ppc targets.

git-svn-id: svn://svn.valgrind.org/valgrind/branches/TCHAIN@12516

13 years agoImplement accept4 on ARM systems.
Tom Hughes [Fri, 20 Apr 2012 14:07:34 +0000 (14:07 +0000)] 
Implement accept4 on ARM systems.

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

13 years agoChanges needed to make t-chaining work on ppc64-linux (valgrind side).
Julian Seward [Fri, 20 Apr 2012 10:43:08 +0000 (10:43 +0000)] 
Changes needed to make t-chaining work on ppc64-linux (valgrind side).

git-svn-id: svn://svn.valgrind.org/valgrind/branches/TCHAIN@12514

13 years agoFill in some more bits to do with t-chaining for ppc64
Julian Seward [Fri, 20 Apr 2012 02:19:35 +0000 (02:19 +0000)] 
Fill in some more bits to do with t-chaining for ppc64
(still doesn't work) (Valgrind side)

git-svn-id: svn://svn.valgrind.org/valgrind/branches/TCHAIN@12513

13 years agoAdd translation chaining support for ppc32 (tested) and to
Julian Seward [Fri, 20 Apr 2012 00:14:02 +0000 (00:14 +0000)] 
Add translation chaining support for ppc32 (tested) and to
a large extent for ppc64 (incomplete, untested) (Valgrind side)

git-svn-id: svn://svn.valgrind.org/valgrind/branches/TCHAIN@12512

13 years agoMention running with --profile-flags.
Florian Krohm [Thu, 19 Apr 2012 22:38:24 +0000 (22:38 +0000)] 
Mention running with --profile-flags.

git-svn-id: svn://svn.valgrind.org/valgrind/branches/TCHAIN@12511

13 years agoWire up epoll_create1 on ARM systems.
Tom Hughes [Thu, 19 Apr 2012 14:54:30 +0000 (14:54 +0000)] 
Wire up epoll_create1 on ARM systems.

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

13 years agoscheduler, ticket lock: Add memory barriers necessary to avoid a deadlock on PowerPC...
Bart Van Assche [Thu, 19 Apr 2012 11:00:32 +0000 (11:00 +0000)] 
scheduler, ticket lock: Add memory barriers necessary to avoid a deadlock on PowerPC systems

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

13 years ago... and set $(BOOST_LIBS) properly again.
Bart Van Assche [Wed, 18 Apr 2012 18:42:34 +0000 (18:42 +0000)] 
... and set $(BOOST_LIBS) properly again.

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

13 years agoconfigure.in: Fix detection of Boost libraries. Reported by <plug.gulp@gmail.com>.
Bart Van Assche [Wed, 18 Apr 2012 18:34:22 +0000 (18:34 +0000)] 
configure.in: Fix detection of Boost libraries. Reported by <plug.gulp@gmail.com>.

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

13 years agoadd some .globl or used attribute to avoid link failures with gold linker + LTO
Philippe Waroquiers [Mon, 16 Apr 2012 22:06:47 +0000 (22:06 +0000)] 
add some .globl or used attribute to avoid link failures with gold linker + LTO

When doing experiment with gcc 4.7.0 and link time optimisation,
encountered link failures on amd64 which were solved by adding
.globl and used attribute.
=> added .globl in similar places for arm/x86/ppc32/s390.
Did not touch darwin (which asm seems somewhat different).

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

13 years agoChange permission mask for FIFOs and shared memory to 0600 instead of 0666
Philippe Waroquiers [Sun, 15 Apr 2012 21:20:52 +0000 (21:20 +0000)] 
Change permission mask for FIFOs and shared memory to 0600 instead of 0666
Following a discussion about which user can debug which VAlgrind gdbserver:
The default umask will remove the "other" and "group" write bits.
Without the w bits, nothing works in any case.
Moreover, if the vgdb process does not belong to the user running the
V gdbserver, connections are also not possible.
=> remove useless/confusing bits.

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

13 years agopatch fixing 297991: mmap changing a file descriptor current position
Philippe Waroquiers [Fri, 13 Apr 2012 23:07:29 +0000 (23:07 +0000)] 
patch fixing 297991: mmap changing a file descriptor current position

Bug caused by the following problem:
for each mmap, Valgrind reads the 1st 1024 bytes to detect
if this is an mmap-ed file containing debug info to decode.

Reading this 1Kb is done with VG_(pread). VG_(pread) should be
the equivalent of syscall pread but on linux, it is implemented as
a seek+read.

The patch implements VG_(pread) in terms of the underlying pread syscall.

Test mmap_fcntl_bug.c completed to also verify the fd current position
before and after the mmap.

tested on linux x86/amd64/ppc32/ppc64/s390.
(not tested on Darwin)
(manually tested on arm-android)

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

13 years agoFix 297992 Support systems missing WIFCONTINUED (e.g. pre-2.6.10 Linux)
Philippe Waroquiers [Fri, 13 Apr 2012 17:27:40 +0000 (17:27 +0000)] 
Fix 297992  Support systems missing WIFCONTINUED (e.g. pre-2.6.10 Linux)

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

13 years agoTranslation chaining for s390. To be debugged.
Florian Krohm [Fri, 13 Apr 2012 04:04:44 +0000 (04:04 +0000)] 
Translation chaining for s390. To be debugged.

git-svn-id: svn://svn.valgrind.org/valgrind/branches/TCHAIN@12502

13 years agoAdd symlinks that were missed out from r12500 due to last-minute SVN
Julian Seward [Thu, 12 Apr 2012 17:35:15 +0000 (17:35 +0000)] 
Add symlinks that were missed out from r12500 due to last-minute SVN
snafus.

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

13 years agoPOWER Processor decimal floating point instruction support: part 2
Julian Seward [Thu, 12 Apr 2012 17:28:57 +0000 (17:28 +0000)] 
POWER Processor decimal floating point instruction support: part 2
(bug #297497) (Carl Love, carll@us.ibm.com) (Valgrind side, mostly
tests)

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

13 years agoTCHAIN: avoid calls to search_transtab and return to scheduer by first using tt_fast
Philippe Waroquiers [Wed, 11 Apr 2012 21:25:37 +0000 (21:25 +0000)] 
TCHAIN: avoid calls to search_transtab and return to scheduer by first using tt_fast
This slightly improves some perf tests (e.g. heap).
Some not explained "real time" slow down of bz2 between trunk/svn tchain
and this patch analyzed with callgrind/cachegrind.
realtime slowdown attributed to Pentium 4 self modifying code unfriendly cache.

(callgrind/cachegrind cache simulation do not understand self modifying
code).

git-svn-id: svn://svn.valgrind.org/valgrind/branches/TCHAIN@12499

13 years agoAndroid's libc includes advertise a "malloc_usable_size", but the
Julian Seward [Wed, 11 Apr 2012 08:46:53 +0000 (08:46 +0000)] 
Android's libc includes advertise a "malloc_usable_size", but the
libc.so contains no such symbol; rather a "dlmalloc_usable_size"
(great, huh :-) So intercept that too, on Android.

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

13 years agoAdd a test re conversions of QNaNs between 64- and 80-bit FP
Julian Seward [Wed, 11 Apr 2012 07:12:32 +0000 (07:12 +0000)] 
Add a test re conversions of QNaNs between 64- and 80-bit FP
formats.  Related to Mozilla bug #738117.

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

13 years agoouter/inner setup: new perf/vg_perf options to run perf tests + support translation...
Philippe Waroquiers [Sun, 8 Apr 2012 19:52:38 +0000 (19:52 +0000)] 
outer/inner setup: new perf/vg_perf options to run perf tests  + support translation chaining in inner.

* perf/vg_perf:
Similarly to tests/vg_regtest, perf/vg_perf now accepts the 3
optional arguments:
    --outer-valgrind
    --outer-tool
    --outer-args

This allows easy analysis or comparison of performance between
different Valgrind versions (e.g. using callgrind, or cachegrind/cg_diff).

* See README_DEVELOPERS for more details.

* vg_regtest modified so as to use the 'in-place' build of inner, rather
  than the installed version.

* added option --smc-check=all-non-file to vg_perf and vg_regtest
  outer default arguments (needed when evaluating a Valgrind which does
  translation chaining).

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

13 years agoDisable test on big-endian platforms.
Florian Krohm [Fri, 6 Apr 2012 14:50:52 +0000 (14:50 +0000)] 
Disable test on big-endian platforms.

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

13 years agoSkip the test if it was not compiled, i.e. dwarf4 is not supported.
Florian Krohm [Fri, 6 Apr 2012 13:54:53 +0000 (13:54 +0000)] 
Skip the test if it was not compiled, i.e. dwarf4 is not supported.

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

13 years agofix off by one in string
Philippe Waroquiers [Fri, 6 Apr 2012 11:51:04 +0000 (11:51 +0000)] 
fix off by one in string

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

13 years agoTCHAIN: remove caused_discard* argument to VG_(translate)
Philippe Waroquiers [Thu, 5 Apr 2012 22:44:36 +0000 (22:44 +0000)] 
TCHAIN: remove caused_discard* argument to VG_(translate)
This is the followup to rev 12488.
With this revision, translation chaining is not done
if the translation with 'from address' is not existing
anymore (discarded or erased).
The assumption documented in 12488 comment has been checked by:
  * first reproduce a crash in Firefox when always setting
    caused discard to False
  * then upgrade to rev 12488
  * with this upgrade, no crash anymore.
=> this verifies that the caused discard logic is properly
replaced by revision 12488.

So, the caused discard logic can be removed.

git-svn-id: svn://svn.valgrind.org/valgrind/branches/TCHAIN@12492

13 years agoAdd support for reading DWARF4 .debug_types sections. Fixes #284124.
Julian Seward [Thu, 5 Apr 2012 07:55:47 +0000 (07:55 +0000)] 
Add support for reading DWARF4 .debug_types sections.  Fixes #284124.
(Tom Tromey, tromey@redhat.com)

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

13 years agoFix incorrect use of VG_(addToXA). (Tom Tromey <tromey@redhat.com>)
Julian Seward [Thu, 5 Apr 2012 07:15:22 +0000 (07:15 +0000)] 
Fix incorrect use of VG_(addToXA).  (Tom Tromey <tromey@redhat.com>)

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

13 years agoSwitch back optimisation flag back to -O2 by removing the -O
Philippe Waroquiers [Wed, 4 Apr 2012 22:49:27 +0000 (22:49 +0000)] 
Switch back optimisation flag back to -O2 by removing the -O

Note that I believe it is possible to avoid Makefile.all.am
edition for this by using:
   ./configure CFLAGS="-O0 -g"

I think with this, make will mostly compile everything with the given CFLAGS
except the main programs (valgrind, vgdb, ...).

git-svn-id: svn://svn.valgrind.org/valgrind/branches/TCHAIN@12489

13 years agoFix assert due to gdbserver discarding translation
Philippe Waroquiers [Wed, 4 Apr 2012 22:44:18 +0000 (22:44 +0000)] 
Fix assert due to gdbserver discarding translation
The fix consists in checking if the translation
of the 'from' address is still existing.

Patch also contains a big comment explaining why it is
safe to discard/erase the current translation being
executed.

In a follow-up patch, the Bool in VG_(translate) will
be removed :
  Bool VG_(translate) ( /*OUT*/Bool* caused_discardP,
(if experiment confirms the hypothesis that it is
safe to discard current translation).

git-svn-id: svn://svn.valgrind.org/valgrind/branches/TCHAIN@12488

13 years agoComment-only fix. (Tom Tromey <tromey@redhat.com>)
Julian Seward [Wed, 4 Apr 2012 17:42:02 +0000 (17:42 +0000)] 
Comment-only fix.  (Tom Tromey <tromey@redhat.com>)

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

13 years agoMake the return type of VG_(disp_run_translations) be void, rather
Julian Seward [Wed, 4 Apr 2012 12:23:23 +0000 (12:23 +0000)] 
Make the return type of VG_(disp_run_translations) be void, rather
than the HWord it was claimed to be.  Inconsistency spotted by
Philippe Waroquiers.

git-svn-id: svn://svn.valgrind.org/valgrind/branches/TCHAIN@12486

13 years agoAdd support for the move_pages system call. BZ#282790.
Tom Hughes [Tue, 3 Apr 2012 10:51:27 +0000 (10:51 +0000)] 
Add support for the move_pages system call. BZ#282790.

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

13 years agoAdd translation chaining support for amd64, x86 and ARM
Julian Seward [Mon, 2 Apr 2012 21:56:03 +0000 (21:56 +0000)] 
Add translation chaining support for amd64, x86 and ARM
(Valgrind side).  See #296422.

git-svn-id: svn://svn.valgrind.org/valgrind/branches/TCHAIN@12484

13 years agoFixes for capabilities checking w.r.t. Power DFP instructions
Julian Seward [Mon, 2 Apr 2012 21:25:14 +0000 (21:25 +0000)] 
Fixes for capabilities checking w.r.t. Power DFP instructions
(Valgrind side).  Fixes #297329.
(Maynard Johnson, maynardj@us.ibm.com)

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

13 years agodrd, realloc() intercept: Swap freeing and cleaning memory.
Bart Van Assche [Mon, 2 Apr 2012 15:46:51 +0000 (15:46 +0000)] 
drd, realloc() intercept: Swap freeing and cleaning memory.

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

13 years agoconfigure.in: Avoid that configure complains about "-----: command not found".
Bart Van Assche [Mon, 2 Apr 2012 15:45:51 +0000 (15:45 +0000)] 
configure.in: Avoid that configure complains about "-----: command not found".

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

13 years agoFix track-origin instrumentation for ppc32 following r2270/r12476
Julian Seward [Mon, 2 Apr 2012 15:10:37 +0000 (15:10 +0000)] 
Fix track-origin instrumentation for ppc32 following r2270/r12476
(initial DFP support).  Maynard Johnson (maynardj@us.ibm.com).

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

13 years agoSwizzle external.
Julian Seward [Mon, 2 Apr 2012 14:52:23 +0000 (14:52 +0000)] 
Swizzle external.

git-svn-id: svn://svn.valgrind.org/valgrind/branches/TCHAIN@12479

13 years agodrd, free() intercept: Swap freeing and cleaning memory.
Bart Van Assche [Mon, 2 Apr 2012 14:36:22 +0000 (14:36 +0000)] 
drd, free() intercept: Swap freeing and cleaning memory.

Note: since the big lock is held while the malloc() and free() intercepts are
running, and since mmap() is treated by Valgrind as a non-blocking system call,
this code change is not expected to result in a behavior change of drd.

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

13 years agoMake a copy of r2270/r12476 for work on translation chaining.
Julian Seward [Mon, 2 Apr 2012 14:26:30 +0000 (14:26 +0000)] 
Make a copy of r2270/r12476 for work on translation chaining.

git-svn-id: svn://svn.valgrind.org/valgrind/branches/TCHAIN@12477

13 years agoInitial support for POWER Processor decimal floating point
Julian Seward [Mon, 2 Apr 2012 10:22:05 +0000 (10:22 +0000)] 
Initial support for POWER Processor decimal floating point
instruction support -- VEX side changes.  See #295221.

This patch adds test cases.  Also adds some minor Memcheck
instrumentation tweaks necessitated by the IR changes.

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

13 years agodrd: Reenable reporting races on stack variables that are shared over threads for...
Bart Van Assche [Sun, 1 Apr 2012 15:06:57 +0000 (15:06 +0000)] 
drd: Reenable reporting races on stack variables that are shared over threads for --check-stack-var=yes.

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

13 years agodrd: Don't complain about stack variables that are shared over threads. Closes #297147
Bart Van Assche [Sun, 1 Apr 2012 14:40:16 +0000 (14:40 +0000)] 
drd: Don't complain about stack variables that are shared over threads. Closes #297147

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

13 years agogcc-4.7.0 complains about some __attribute__((always_inline)) here,
Julian Seward [Sat, 31 Mar 2012 00:06:04 +0000 (00:06 +0000)] 
gcc-4.7.0 complains about some __attribute__((always_inline)) here,
so change them back to vanilla ones.

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

13 years agoFix #ifdef vs { mismatch in r12471, that broke compilation on MacOS.
Julian Seward [Sat, 31 Mar 2012 00:04:59 +0000 (00:04 +0000)] 
Fix #ifdef vs { mismatch in r12471, that broke compilation on MacOS.

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

13 years agoFurther fix 297078 : implement conversion between vki and gdb real time sig nr.
Philippe Waroquiers [Fri, 30 Mar 2012 20:25:26 +0000 (20:25 +0000)] 
Further fix 297078 : implement conversion between vki and gdb real time sig nr.

* gdbserver_tests/nlpasssigalrm
   modify test so as to test also a real time signal

* coregrind/m_gdbserver/signals.c
  - implement translation between gdb real time signal numbers
    and vki real time signal numbers
  - ensure non-convertible signals are giving an error

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

13 years agoFix bug 297078 gdbserver signal handling problems caused by diff vki nr/gdb nr and
Philippe Waroquiers [Thu, 29 Mar 2012 21:56:47 +0000 (21:56 +0000)] 
Fix bug 297078 gdbserver signal handling problems caused by diff vki nr/gdb nr and
    non reset of "C-ontinued" signal

* To allow vki signame to be used in debuglog:
  - pub_core_signals.h : added prototype for Char *VG_(signame)
  - m_signals.c : changed static const Char *signame(Int sigNo)
                      to const Char *VG_(signame)(Int sigNo)

* valgrind-low.c : when the signal to report to gdb has
  been reported, clear it so that it is not reported anymore
  afterwards.

* m_gdbserver.c: when checking in pass_signals if signal
  can be passed without gdb interaction, do a conversion
  from vki nr to gdb nr when indexing
  (as pass_signals[] is indexed by gdb_nr).

* various gdbserver files:
  - used vki_ prefix for some args and variables to clarify
  - better debuglog tracing

* modified nlpasssigalrm.vgtest to test SIGCHLD signal
  handling followed by a break (to see SIGTRAP is properly
  given to gdb).

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

13 years agoAdd some more suppressions for OSX 10.7.2.
Julian Seward [Wed, 28 Mar 2012 14:35:00 +0000 (14:35 +0000)] 
Add some more suppressions for OSX 10.7.2.

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

13 years agoUpdate the memcpy intercept for Helgrind in accordance with that
Julian Seward [Tue, 27 Mar 2012 16:49:55 +0000 (16:49 +0000)] 
Update the memcpy intercept for Helgrind in accordance with that
for Memcheck.  Fixes #293855.

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

13 years ago/* Do expensive interpretation for Iop_Add32 and Iop_Add64 on
Julian Seward [Tue, 27 Mar 2012 10:19:39 +0000 (10:19 +0000)] 
/* Do expensive interpretation for Iop_Add32 and Iop_Add64 on
   Darwin.  10.7 is mostly built with LLVM, which uses these for
   bitfield inserts, and we get a lot of false errors if the cheap
   interpretation is used, alas.  Could solve this much better if
   we knew which of such adds came from x86/amd64 LEA instructions,
   since these are the only ones really needing the expensive
   interpretation, but that would require some way to tag them in
   the _toIR.c front ends, which is a lot of faffing around.  So
   for now just use the slow and blunt-instrument solution. */

Pertains to, although does not completely solve, #242137.

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

13 years agoAdd a nasty kludge in the handling of mmap on Darwin. Does not apply
Julian Seward [Tue, 27 Mar 2012 10:06:31 +0000 (10:06 +0000)] 
Add a nasty kludge in the handling of mmap on Darwin.  Does not apply
to any other platforms.  Prevent mmap(ANON) from returning zero (zero
with success, that is) since (a) some programs are observed to be
spooked by getting zero from a successful call to mmap, and (b) it's
pretty stupid from the point of view of program safety and possibly
security, since it causes page zero to become accessible.  So don't.

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

13 years agorlimit64_nofile won't build on Darwin, so don't try.
Julian Seward [Tue, 27 Mar 2012 10:03:56 +0000 (10:03 +0000)] 
rlimit64_nofile won't build on Darwin, so don't try.

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

13 years agoMake this compile on Darwin.
Julian Seward [Tue, 27 Mar 2012 09:39:22 +0000 (09:39 +0000)] 
Make this compile on Darwin.

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

13 years agoFix up debug printing -- no functional change.
Julian Seward [Tue, 27 Mar 2012 09:39:04 +0000 (09:39 +0000)] 
Fix up debug printing -- no functional change.

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

13 years agoKeep the stack properly 16 aligned when delivering signals on x86-darwin.
Julian Seward [Tue, 27 Mar 2012 09:38:23 +0000 (09:38 +0000)] 
Keep the stack properly 16 aligned when delivering signals on x86-darwin.

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

13 years agoKeep the stack properly 16-aligned when delivering signals on
Julian Seward [Tue, 27 Mar 2012 09:24:54 +0000 (09:24 +0000)] 
Keep the stack properly 16-aligned when delivering signals on
amd64-darwin.  Fixes the failure shown in
https://bugs.kde.org/show_bug.cgi?id=254646#c13

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

13 years agoFill in missing signal handling macros for amd64-darwin.
Julian Seward [Tue, 27 Mar 2012 08:44:17 +0000 (08:44 +0000)] 
Fill in missing signal handling macros for amd64-darwin.

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

13 years agoDarwin: Fix a copy/paste error that was introduced in r12458
Bart Van Assche [Mon, 26 Mar 2012 18:13:29 +0000 (18:13 +0000)] 
Darwin: Fix a copy/paste error that was introduced in r12458

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

13 years agoCheck whether the big lock is held before invoking pre_thread_ll_create.
Bart Van Assche [Sun, 25 Mar 2012 17:51:59 +0000 (17:51 +0000)] 
Check whether the big lock is held before invoking pre_thread_ll_create.

If the pre_thread_ll_create tracking function would be invoked without the
big lock being held, that would trigger a race condition in the tools that
implement this tracking function.

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

13 years agoRemove strange e which appeared in r12456, replace by a real e.
Philippe Waroquiers [Sun, 25 Mar 2012 14:55:17 +0000 (14:55 +0000)] 
Remove strange e which appeared in r12456, replace by a real e.

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

13 years agoHave check_makẹfile_consistency run at the end of make regtest
Philippe Waroquiers [Sun, 25 Mar 2012 10:54:59 +0000 (10:54 +0000)] 
Have check_makẹfile_consistency run at the end of make regtest
This ensures that a missing file in the Makefile is detected,
without blocking the tests.

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

13 years agoadd test-plo-no.stderr.exp-s390x-mvc in EXTRA_DIST.
Philippe Waroquiers [Wed, 21 Mar 2012 20:32:00 +0000 (20:32 +0000)] 
add test-plo-no.stderr.exp-s390x-mvc in EXTRA_DIST.

Note: such missing files in EXTRA_DIST are found
by check_makefile_consistency.
However, to avoid blocking the tests, the return code
of check_makefile_consistency is ignored, but the errors
it detects are pages before the end of the make regtest output.

=> it might be a good idea to move the check_makefile_consistency
as the last step of regtest: target, and not ignore its return code.
This means:
   trials tests will not block make regtest
   such errors will be noticed.

For the moment, just fixed the missing file in EXTRA_DIST

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

13 years agoSupport sys_fallocate on arm-linux.
Julian Seward [Wed, 21 Mar 2012 19:37:41 +0000 (19:37 +0000)] 
Support sys_fallocate on arm-linux.

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

13 years agofix 295799 Missing \n with get_vbits in gdbserver when line is % 80 and there are...
Philippe Waroquiers [Tue, 20 Mar 2012 19:04:39 +0000 (19:04 +0000)] 
fix 295799  Missing \n with get_vbits in gdbserver when line is % 80 and there are some unaddressable bytes

patch from Marc Bessières

Thanks

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

13 years agoModify test so that scheduling events are generated.
Philippe Waroquiers [Mon, 19 Mar 2012 20:19:23 +0000 (20:19 +0000)] 
Modify test so that scheduling events are generated.
Even without fair scheduling, this ensures the progress
of each thread.
This avoids the test looping forever in an outer/inner
setup.

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

13 years agoUpdate s390 opcode list.
Florian Krohm [Mon, 19 Mar 2012 13:22:21 +0000 (13:22 +0000)] 
Update s390 opcode list.

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

13 years agoAdd script that assists with updating s390-opcodes.csv.
Florian Krohm [Sun, 18 Mar 2012 01:52:07 +0000 (01:52 +0000)] 
Add script that assists with updating s390-opcodes.csv.

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

13 years agoAdd spreadsheet that lists all s390 opcodes in the following format:
Florian Krohm [Sun, 18 Mar 2012 01:51:12 +0000 (01:51 +0000)] 
Add spreadsheet that lists all s390 opcodes in the following format:
1. column:  mnemonic
2. column:  description
3. column:  implementation status
4. column:  comments, if any

Prepared by Divya Vyas (divyvyas@linux.vnet.ibm.com).

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

13 years agoAdd expected output for s390x with compilers using mvc.
Florian Krohm [Sat, 17 Mar 2012 17:37:50 +0000 (17:37 +0000)] 
Add expected output for s390x with compilers using mvc.

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

13 years agoAdd expected results for 32-bit little endian platform.
Florian Krohm [Sat, 17 Mar 2012 17:27:17 +0000 (17:27 +0000)] 
Add expected results for 32-bit little endian platform.

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

13 years agoMake a more precise reference to the g++ version.
Philippe Waroquiers [Fri, 16 Mar 2012 15:03:08 +0000 (15:03 +0000)] 
Make a more precise reference to the g++ version.

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

13 years ago(for x86 and amd64): Change the type of the shadow regs for floating point registers
Philippe Waroquiers [Wed, 14 Mar 2012 21:27:35 +0000 (21:27 +0000)] 
(for x86 and amd64): Change the type of the shadow regs for floating point registers

Similar to r12444 (see Log below), but this is doing it for x86 and amd64.
The xmm registers are using uint32 or uint64 for their float
union components. For the i387 80 bits float registers, as there is
no uint80, a struct uint16 + uint64 is defined.

  Log:
    Change the type of the shadow regs for floating point registers
    to be uint64. Previously the value in such a shadow reg would
    be interpreted by gdb as a floating point value which would
    produce non-sensible output for e.g   p/x $f1s1.
    This patch covers the power and arm architectures.

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

13 years agoChange the type of the shadow regs for floating point registers
Florian Krohm [Wed, 14 Mar 2012 01:15:59 +0000 (01:15 +0000)] 
Change the type of the shadow regs for floating point registers
to be uint64. Previously the value in such a shadow reg would
be interpreted by gdb as a floating point value which would
produce non-sensible output for e.g   p/x $f1s1.
This patch covers the power and arm architectures.

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