]> git.ipfire.org Git - thirdparty/valgrind.git/log
thirdparty/valgrind.git
13 years agoAdd notes re new print docs build failures.
Julian Seward [Sun, 5 Aug 2012 14:25:35 +0000 (14:25 +0000)] 
Add notes re new print docs build failures.

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

13 years agoDoc updates for 3.8.0.
Julian Seward [Sun, 5 Aug 2012 13:44:15 +0000 (13:44 +0000)] 
Doc updates for 3.8.0.

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

13 years agoAdd testcases for the cu14 insn. Update opcode table.
Florian Krohm [Sun, 5 Aug 2012 03:02:43 +0000 (03:02 +0000)] 
Add testcases for the cu14 insn. Update opcode table.
Part of fixing #289839.

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

13 years agoFixing incorrect case in putSyscallArgsIntoGuestState for __NR_syscall.
Petar Jovanovic [Sun, 5 Aug 2012 02:22:52 +0000 (02:22 +0000)] 
Fixing incorrect case in putSyscallArgsIntoGuestState for __NR_syscall.

Previously unused arg8 is now used to hold NR_syscall value when that call is
executed. This is important, so putSyscallArgsIntoGuestState can correctly
fill up the guest state. This is MIPS-only change.

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

13 years ago301265 - add x86 support to Android build
Philippe Waroquiers [Sun, 5 Aug 2012 00:08:25 +0000 (00:08 +0000)] 
301265 - add x86 support to Android build

Patch by Dragos Tatulea.

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

13 years agoClang complains that "fist" is ambiguous (it's right, too); use
Julian Seward [Sat, 4 Aug 2012 23:10:23 +0000 (23:10 +0000)] 
Clang complains that "fist" is ambiguous (it's right, too); use
"fists" instead.

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

13 years agoAdd an intercept for memrchr. Needed for amd64 Ubuntu 12.04.
Julian Seward [Sat, 4 Aug 2012 23:08:08 +0000 (23:08 +0000)] 
Add an intercept for memrchr.  Needed for amd64 Ubuntu 12.04.

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

13 years agoTry to fix up ARM stack alignment stuff following r12811. This
Julian Seward [Sat, 4 Aug 2012 19:23:54 +0000 (19:23 +0000)] 
Try to fix up ARM stack alignment stuff following r12811.  This
fixes two problems: first, r11 (aka fp) can't be used in assembly
for whatever reason.  Secondly, the "bic sp,sp,#7" is not allowed
in Thumb mode, so work around that too.

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

13 years agoDon't explicitly specify an ABI when building regtests on ARM. This
Julian Seward [Sat, 4 Aug 2012 19:21:18 +0000 (19:21 +0000)] 
Don't explicitly specify an ABI when building regtests on ARM.  This
causes them to fail to be built on (eg) Ubuntu 12.04 ARM.

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

13 years agoNEWS, drd: List new features first
Bart Van Assche [Sat, 4 Aug 2012 09:19:11 +0000 (09:19 +0000)] 
NEWS, drd: List new features first

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

13 years agoRemove 284540 from NEWS fixed section.
Philippe Waroquiers [Sat, 4 Aug 2012 09:08:50 +0000 (09:08 +0000)] 
Remove 284540 from NEWS fixed section.
284540 was not about performance but about the presentation
of results.
Revision 12824 (optimising the suppr matching) should not have
marked 284540 as fixed.

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

13 years agoUpdate.
Julian Seward [Sat, 4 Aug 2012 08:41:44 +0000 (08:41 +0000)] 
Update.

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

13 years agonone/tests/amd64/movbe: Run this test only if the movbe executable has been built
Bart Van Assche [Sat, 4 Aug 2012 05:26:23 +0000 (05:26 +0000)] 
none/tests/amd64/movbe: Run this test only if the movbe executable has been built

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

13 years agoFix a cut'n paste error. One byte was uninitialised. Now fixed.
Florian Krohm [Sat, 4 Aug 2012 03:29:22 +0000 (03:29 +0000)] 
Fix a cut'n paste error. One byte was uninitialised. Now fixed.

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

13 years agoAdd non matching suppressions for suppfree test (more testing for suppr matching)
Philippe Waroquiers [Sat, 4 Aug 2012 00:26:26 +0000 (00:26 +0000)] 
Add non matching suppressions for suppfree test (more testing for suppr matching)

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

13 years agofix 284540 (optimise suppression matching)
Philippe Waroquiers [Fri, 3 Aug 2012 23:11:39 +0000 (23:11 +0000)] 
fix 284540 (optimise suppression matching)
Before this patch, matching an error stack trace with many suppression
patterns was implying to repeating the translation of the IPs of the
stack trace to the function name or object name for each suppr pattern.

This patch introduces a "lazy input completer" in the generic match
so that an IP is (in the worst case) translated once to its function
name and once to its object name.

It is a "lazy" completer in the sense that only the needed IP to fun or obj
name are done.

On a artificial test case, has given a factor 3 in performance.
On another big (real) application, gave a factor 2 to 3.
(there was less matching to do, but probably more debug info to search).

match-overrun.supp completed to have non matching suppr first to
better exercise the lazy completer.

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

13 years agoSimplify.
Florian Krohm [Fri, 3 Aug 2012 21:50:11 +0000 (21:50 +0000)] 
Simplify.

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

13 years agoFix testcase. Iterating over an array of invalid insns to test them all
Florian Krohm [Fri, 3 Aug 2012 20:28:21 +0000 (20:28 +0000)] 
Fix testcase. Iterating over an array of invalid insns to test them all
does not work, as conversion will stop at the first invalid character.
So... need to loop over them.

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

13 years agonone/tests/amd64/avx-1: Make it explicit that this test uses the vpclmulqdq instruction
Bart Van Assche [Fri, 3 Aug 2012 19:37:02 +0000 (19:37 +0000)] 
none/tests/amd64/avx-1: Make it explicit that this test uses the vpclmulqdq instruction

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

13 years agoAdd testcases for cu12. Update opcode table.
Florian Krohm [Fri, 3 Aug 2012 18:37:26 +0000 (18:37 +0000)] 
Add testcases for cu12. Update opcode table.
Part of fixing #289839.

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

13 years agoAdd support for sys_shm_unlink on Darwin. Fixes #288298.
Julian Seward [Fri, 3 Aug 2012 07:47:01 +0000 (07:47 +0000)] 
Add support for sys_shm_unlink on Darwin.  Fixes #288298.

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

13 years agoComment only change.
Florian Krohm [Fri, 3 Aug 2012 03:21:42 +0000 (03:21 +0000)] 
Comment only change.

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

13 years agoBack off from 32 alignment of various guest state bits. We don't
Julian Seward [Thu, 2 Aug 2012 22:08:53 +0000 (22:08 +0000)] 
Back off from 32 alignment of various guest state bits.  We don't
actually need it, and gcc on MacOS simply fails (for whatever reason)
to actually honour requests for 32 alignment, and fall back to the
previous setting (16 alignment).

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

13 years agoSome updates in release-HOWTO.txt
Philippe Waroquiers [Thu, 2 Aug 2012 21:01:13 +0000 (21:01 +0000)] 
Some updates in release-HOWTO.txt

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

13 years agoUn-break the build on OSX < 10.8 following r12814
Julian Seward [Thu, 2 Aug 2012 18:51:51 +0000 (18:51 +0000)] 
Un-break the build on OSX < 10.8 following r12814
(which was initial OSX 10.8 support)

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

13 years agoAdd initial support for MacOSX 10.8. Note this is still very borked
Julian Seward [Thu, 2 Aug 2012 18:25:04 +0000 (18:25 +0000)] 
Add initial support for MacOSX 10.8.  Note this is still very borked
and pretty much unusable for real work.

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

13 years agoBack out r12466, which stopped non-MAP_FIXED mmaps by the client on
Julian Seward [Thu, 2 Aug 2012 10:40:31 +0000 (10:40 +0000)] 
Back out r12466, which stopped non-MAP_FIXED mmaps by the client on
Darwin from returning address zero (however insane that is).  r12466
appears to cause other applications to break (TextEdit, for one).

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

13 years agoAdd BZ#304054 to NEWS.
Tom Hughes [Thu, 2 Aug 2012 09:26:38 +0000 (09:26 +0000)] 
Add BZ#304054 to NEWS.

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

13 years agoEnsure CALL_FN_xx macros align the stack properly
Tom Hughes [Thu, 2 Aug 2012 09:23:45 +0000 (09:23 +0000)] 
Ensure CALL_FN_xx macros align the stack properly

The CALL_FN_xx macros  in valgrind.h perform function calls by
signalling to valgrind using the client request system. Because
they are making function calls which are invisible to the compiler
they need to make sure that any stack alignment constraints
imposed by the ABI are enforced when making the call.

This commit enforces 16 byte alignment for x86, amd64, ppc32 and
ppc64 platforms, and 8 byte alignment for arm platforms.

It does not touch s390x where the ABI requires 8 byte alignment to
be maintained at all times, not just when making a function call.

It also does not touch mips32 as I'm not currently aware what if
any alignment constraints exist there.

Fixes BZ#304054 and observed alignment faults on amd64 when running
the regtests using a valgrind compiled with gcc 4.7 releases.

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

13 years agoAvoid asserting when a segment is mapped both rw and rx.
Philippe Waroquiers [Wed, 1 Aug 2012 22:27:29 +0000 (22:27 +0000)] 
Avoid asserting when a segment is mapped both rw and rx.

If a segment is mapped with permission rwx, then map->rx
and map->rw will be true.
But due to the if (map->rx) {
                 ...
               } else if (map->rw) {
                 ...
the  (map->rw) part will not be executed.
If this mapping is the one which "gives" the nonempty rw map,
then this mapping will not be seen, and the following
vg_assert(has_nonempty_rw);
will fail.

This assert can be reproduced by doing
setarch i686 -X
./vg-in-place --tool=none none/tests/map_unmap

Note: the setarch i686 -X above has as effect to make all read
mapping also executable. So, a rw mapping becomes rwx and then
triggers the above asserts.

The setarch i686 -X also introduces a discrepancy between
the kernel mappings (rwx) and the valgrind aspacemgr view
(which believes it is a rw mapping).
This discrepancy causes a crash if giving --sanity-level=3.
A possible fix is to have valgrind calling the personality system call
and detecting if the READ_IMPLIES_EXEC bit (the -X arg to setarch)
was set, and then modify aspacemgr so that all read mapped segments
are automatically mapped x also.

This commit is the minimal fix allowing to run executables
launched with this READ_IMPLIES_EXEC.

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

13 years agoRemove --vex-iropt-precise-memory-exns, implement --vex-iropt-register-updates
Philippe Waroquiers [Wed, 1 Aug 2012 22:03:12 +0000 (22:03 +0000)] 
Remove --vex-iropt-precise-memory-exns, implement --vex-iropt-register-updates

* Option --vex-iropt-precise-memory-exns has been removed.
  It is replaced by --vex-iropt-register-updates which accepts
  3 values : 'unwindregs-at-mem-access' (replacing
  --vex-iropt-precise-memory-exns=no), 'allregs-at-mem-access'
  (replacing --vex-iropt-precise-memory-exns=yes)
  and a new value 'allregs-at-each-insn'.
  'allregs-at-each-insn' allows the Valgrind gdbserver to always
  show up to date values to GDB.

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

13 years agoAdd test cases for "VCVT.F32.{S,U}32 S[d], S[d], #frac_bits"
Julian Seward [Wed, 1 Aug 2012 22:01:05 +0000 (22:01 +0000)] 
Add test cases for "VCVT.F32.{S,U}32 S[d], S[d], #frac_bits"

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

13 years agoImplement --redzone-size and --core-redzone-size
Philippe Waroquiers [Tue, 31 Jul 2012 22:17:28 +0000 (22:17 +0000)] 
Implement --redzone-size and --core-redzone-size

* For tools replacing the malloc library (e.g. Memcheck, Helgrind, ...),
  the option --redzone-size=<number> allows to control the padding
  blocks (redzones) added before and after each client allocated block.
  Smaller redzones decrease the memory needed by Valgrind. Bigger
  redzones increase the chance to detect blocks overrun or underrun.

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

13 years agoRemove entries with deprecated spellings (essentially duplicates).
Florian Krohm [Mon, 30 Jul 2012 16:18:19 +0000 (16:18 +0000)] 
Remove entries with deprecated spellings (essentially duplicates).

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

13 years agoWhen parsing guest_s390_toIR.c also recognize opcodes with digits
Florian Krohm [Mon, 30 Jul 2012 16:16:24 +0000 (16:16 +0000)] 
When parsing guest_s390_toIR.c also recognize opcodes with digits
in their name.
Also add more alternate opcode spellings.

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

13 years agoTestcases for CU42. Part of fixing bugzilla #289839.
Florian Krohm [Sat, 28 Jul 2012 22:20:03 +0000 (22:20 +0000)] 
Testcases for CU42. Part of fixing bugzilla #289839.
Update opcode table.

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

13 years agoUpdates for s390x
Florian Krohm [Sat, 28 Jul 2012 22:10:41 +0000 (22:10 +0000)] 
Updates for s390x

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

13 years agoMinor tweaks. A few comments were out of synch with source.
Florian Krohm [Sat, 28 Jul 2012 21:59:34 +0000 (21:59 +0000)] 
Minor tweaks. A few comments were out of synch with source.
Add another test.

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

13 years agoFix error message in testcase
Florian Krohm [Sat, 28 Jul 2012 20:39:51 +0000 (20:39 +0000)] 
Fix error message in testcase

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

13 years agodrd: Avoid that invoking pthread_cancel() from a program analyzed with DRD triggers...
Bart Van Assche [Sat, 28 Jul 2012 14:35:48 +0000 (14:35 +0000)] 
drd: Avoid that invoking pthread_cancel() from a program analyzed with DRD triggers a crash on Fedora 17

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

13 years agodrd: Revert r12651 because it didn't change drd's behavior on any platform
Bart Van Assche [Sat, 28 Jul 2012 14:32:03 +0000 (14:32 +0000)] 
drd: Revert r12651 because it didn't change drd's behavior on any platform

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

13 years agoSpelling fixes: developpers -> developers; curiosly -> curiously
Bart Van Assche [Sat, 28 Jul 2012 13:06:45 +0000 (13:06 +0000)] 
Spelling fixes: developpers -> developers; curiosly -> curiously

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

13 years agoUpdate Subversion ignore list
Bart Van Assche [Sat, 28 Jul 2012 13:05:32 +0000 (13:05 +0000)] 
Update Subversion ignore list

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

13 years agoclarify 2 NEWS entries to indicate that these are for tool developpers.
Philippe Waroquiers [Sat, 28 Jul 2012 12:23:48 +0000 (12:23 +0000)] 
clarify 2 NEWS entries to indicate that these are for tool developpers.

(NB: I am wondering if these entries should be put in NEWS at all.
Is NEWS targetted at end users only ?
Or at "tool developper users also' ?)

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

13 years agonone/tests/amd64/Makefile.am: Uses not only AVX instructions but PCLMULQDQ too
Bart Van Assche [Sat, 28 Jul 2012 11:13:47 +0000 (11:13 +0000)] 
none/tests/amd64/Makefile.am: Uses not only AVX instructions but PCLMULQDQ too

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

13 years agoMIPS specific expected output for memcheck/tests/sigkill.
Petar Jovanovic [Fri, 27 Jul 2012 22:35:35 +0000 (22:35 +0000)] 
MIPS specific expected output for memcheck/tests/sigkill.

MIPS has different signal values, so it has to have its own expected output for
the tests that deal with signal values.
This fixes (false) failure in memcheck/tests/sigkill.

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

13 years agoHave one test testing the ? suppr matching wildcard character.
Philippe Waroquiers [Fri, 27 Jul 2012 21:56:08 +0000 (21:56 +0000)] 
Have one test testing the ? suppr matching wildcard character.

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

13 years agoFix compiler warning.
Florian Krohm [Fri, 27 Jul 2012 20:53:47 +0000 (20:53 +0000)] 
Fix compiler warning.

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

13 years agoMIPS specific exp-out for none/tests/async-sigs.
Petar Jovanovic [Fri, 27 Jul 2012 16:25:32 +0000 (16:25 +0000)] 
MIPS specific exp-out for none/tests/async-sigs.

MIPS has different signal values, so it has to have its own expected output for
the tests that deal with signal values.
This fixes (false) failure in none/tests/async-sigs.

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

13 years agomicro-optimisation in m_libcbase.c cmp functions
Philippe Waroquiers [Thu, 26 Jul 2012 22:44:07 +0000 (22:44 +0000)] 
micro-optimisation in m_libcbase.c cmp functions

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

13 years agoImprove suppression matching performance when fun or obj is a simple string
Philippe Waroquiers [Thu, 26 Jul 2012 21:37:36 +0000 (21:37 +0000)] 
Improve suppression matching performance when fun or obj is a simple string
Idea is from Julian, possible bugs are mine.

If the fun or obj is a simple string and not a patter (so no *, no ?),
use a simple string comparison rather than a call to a wildcard matching.

On a leak search with a lot of reachable loss records and a lot of suppr,
it improves the speed of the leak search by 10 to 15%.

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

13 years agonone/tests/amd64/pcmpstr64: Update expected output after r12780
Bart Van Assche [Thu, 26 Jul 2012 06:49:38 +0000 (06:49 +0000)] 
none/tests/amd64/pcmpstr64: Update expected output after r12780

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

13 years agoDue to s390's dealings with invalid insns we need to do two things
Florian Krohm [Thu, 26 Jul 2012 02:41:31 +0000 (02:41 +0000)] 
Due to s390's dealings with invalid insns we need to do two things
- advance the guest_IA to the next insn after raising the signal
- adjusting the address in a complaint to point to the failing insn
  (after guest_IA has been advanced)
Update testcases .exp files.

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

13 years agoApply first_ip_delta also when only one frame is requested
Florian Krohm [Thu, 26 Jul 2012 02:14:28 +0000 (02:14 +0000)] 
Apply first_ip_delta also when only one frame is requested
for the back-trace.

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

13 years agoImprove complaints. Enabled by VEX r2449.
Florian Krohm [Thu, 26 Jul 2012 02:03:16 +0000 (02:03 +0000)] 
Improve complaints. Enabled by VEX r2449.
Line numbers are still bad. But that is a GCC issue.

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

13 years agore-re-clarify the doc about registers and flags gdbsrv up-to-date-ness
Philippe Waroquiers [Wed, 25 Jul 2012 21:58:40 +0000 (21:58 +0000)] 
re-re-clarify the doc about registers and flags gdbsrv up-to-date-ness

Following discussions on valdev and re-measurement, clarify the clarification.

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

13 years agoremove 303624 from 3_7_BUGSTATUS.txt (was fixed in rev 12758, already in NEWS)
Philippe Waroquiers [Wed, 25 Jul 2012 19:58:37 +0000 (19:58 +0000)] 
remove 303624 from 3_7_BUGSTATUS.txt (was fixed in rev 12758, already in NEWS)

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

13 years agoAdded fixed bug 303963
Josef Weidendorfer [Wed, 25 Jul 2012 12:13:29 +0000 (12:13 +0000)] 
Added fixed bug 303963

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

13 years agoPartial update of bug fixes (I think it is still out of date though.)
Julian Seward [Wed, 25 Jul 2012 11:02:01 +0000 (11:02 +0000)] 
Partial update of bug fixes (I think it is still out of date though.)

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

13 years agoAdditions to PCMPxSTRx tests to check fix for bug 303963.
Josef Weidendorfer [Wed, 25 Jul 2012 09:49:26 +0000 (09:49 +0000)] 
Additions to PCMPxSTRx tests to check fix for bug 303963.

Some tests used movdqa triggering a seg fault. Use movdqu instead.

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

13 years agoFix testcase and update results.
Florian Krohm [Tue, 24 Jul 2012 20:37:50 +0000 (20:37 +0000)] 
Fix testcase and update results.

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

13 years agoBetter document the limitation of gdbsrv for registers and flags values
Philippe Waroquiers [Tue, 24 Jul 2012 20:24:39 +0000 (20:24 +0000)] 
Better document the limitation of gdbsrv for registers and flags values

During investigations of 303963, Josef found that flags are not always
up to date and that --vex-guest-max-insns=1 ensures flags values
are (more?) correct.

=> enhance the paragraph in the gdbserver limitations to reference
this option and give an idea of the performance impact of the other
options helping to increase the precision of registers and flags.

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

13 years agoHave perf/vg_perf handling EXTRA_REGTEST_OPTS
Philippe Waroquiers [Tue, 24 Jul 2012 19:47:46 +0000 (19:47 +0000)] 
Have perf/vg_perf handling EXTRA_REGTEST_OPTS
Similarly to tests/vg_regtest, allow to run all perf tests with extra options.
(note: it was preferred to use the same env var name).

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

13 years agoUpdate expected results.
Florian Krohm [Mon, 23 Jul 2012 18:05:52 +0000 (18:05 +0000)] 
Update expected results.
This is the companion patch to VEX r2444 which backs out the special
handling for the 00 opcode.

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

13 years agoPass first_ip_delta to VG_(record_depth_1_ExeContext) as the function
Florian Krohm [Mon, 23 Jul 2012 15:40:41 +0000 (15:40 +0000)] 
Pass first_ip_delta to VG_(record_depth_1_ExeContext) as the function
cannot figure it out by itself.

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

13 years agoEliminate magic constant. Use VG_(clo_backtrace_size) instead.
Florian Krohm [Mon, 23 Jul 2012 15:05:22 +0000 (15:05 +0000)] 
Eliminate magic constant. Use VG_(clo_backtrace_size) instead.

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

13 years agoAvoid checking for bitset initialization if futex_wait_bitset is meant to fail.
Petar Jovanovic [Mon, 23 Jul 2012 00:11:10 +0000 (00:11 +0000)] 
Avoid checking for bitset initialization if futex_wait_bitset is meant to fail.

Glibc deliberately passes random value for the sixth parameter when calling
FUTEX_WAIT_BITSET | FUTEX_CLOCK_REALTIME. This is a regular case of using the
Futex API, so V should not complain that "Syscall param futex(val3) contains
uninitialised byte(s)", if the futex does not have a specified value initially.
For more info, see function pthread_initialize_minimal_internal at:
glibc/nptl/nptl-init.c.

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

13 years agoAdd 'aesdec' to the set of insns checked for assembler level SSE4.2
Julian Seward [Sun, 22 Jul 2012 11:10:08 +0000 (11:10 +0000)] 
Add 'aesdec' to the set of insns checked for assembler level SSE4.2
support (Rich Coe) and tidy up a couple of other bits of assembly by
giving them trashed-register lists.

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

13 years agoAdd testcases for CU24. Part of fixing #289839.
Florian Krohm [Sat, 21 Jul 2012 17:42:54 +0000 (17:42 +0000)] 
Add testcases for CU24. Part of fixing #289839.

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

13 years agoNo need to list m_gdbserver.c twice in the Makefile.am.
Julian Seward [Sat, 21 Jul 2012 10:11:51 +0000 (10:11 +0000)] 
No need to list m_gdbserver.c twice in the Makefile.am.

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

13 years agoLocalise "struct reg regs[]".
Julian Seward [Sat, 21 Jul 2012 10:10:44 +0000 (10:10 +0000)] 
Localise "struct reg regs[]".

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

13 years agoppc64-linux _start: don't assume ._start_in_C_linux -- the function
Julian Seward [Sat, 21 Jul 2012 10:08:29 +0000 (10:08 +0000)] 
ppc64-linux _start: don't assume ._start_in_C_linux -- the function
descriptor for _start_in_C_linux -- actually exists.  Instead call the
entry point directly.

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

13 years agoDocument Helgrind limitation that old access stack traces have maximum 8 entries
Philippe Waroquiers [Fri, 20 Jul 2012 23:40:35 +0000 (23:40 +0000)] 
Document Helgrind limitation that old access stack traces have maximum 8 entries

#define N_FRAMES 8
(defined in libhb_core.c:3888)

implies that 'other thread' stack traces are limited to 8,
even with a bigger --num-callers.

=> document this in the manual to avoid that a user believes this is a
bug in the stack trace logic of Valgrind.

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

13 years agoIf the compiler being used to build is clang, remember to add
Julian Seward [Fri, 20 Jul 2012 16:46:54 +0000 (16:46 +0000)] 
If the compiler being used to build is clang, remember to add
-new_linker to the stuff given to the linker, else link failures
result on x86.  Based on a suggestion by Christoph Erhardt.  Fixes
#295427.

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

13 years agoAdd testcases for CU21. Update opcode table.
Florian Krohm [Fri, 20 Jul 2012 00:17:16 +0000 (00:17 +0000)] 
Add testcases for CU21. Update opcode table.
WRT the memcheck test: the good news is we get all the complaints
we want. The bad news is:
- the line numbers from within do_cu21 are off
- there are 2 complaints when attempting to convert from
  an uninitialised input buffer instead of one. One of them has a
  completely bogus line number.

Possibly due to bad debug info?  Let's see what happens on machines
with more recent GCCs.

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

13 years agoAdd macros for "convert unicode" insns.
Florian Krohm [Thu, 19 Jul 2012 23:29:06 +0000 (23:29 +0000)] 
Add macros for "convert unicode" insns.

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

13 years agoFix syntax error
Florian Krohm [Thu, 19 Jul 2012 18:16:49 +0000 (18:16 +0000)] 
Fix syntax error

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

13 years agoObserve guards on dirty helpers in memcheck.
Florian Krohm [Thu, 19 Jul 2012 17:23:42 +0000 (17:23 +0000)] 
Observe guards on dirty helpers in memcheck.
This means, that any guest state and/or memory accesses of the helper (and
complaints about those) only occur if the guard expression is true at runtime.
Definedness of parameters that the helper might have is *always* checked,
as parameters are evaluated regardless of the guard expression.
New functions: expr2vbits_guarded_Load and gen_guarded_load_b.

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

13 years agoInclude news about supporting MIPS32/Linux in NEWS file.
Petar Jovanovic [Thu, 19 Jul 2012 15:54:02 +0000 (15:54 +0000)] 
Include news about supporting MIPS32/Linux in NEWS file.

PLATFORM CHANGES section has been appended with news for MIPS32/Linux support.

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

13 years agoexp-sgcheck is not supported for MIPS architecture.
Petar Jovanovic [Thu, 19 Jul 2012 15:40:48 +0000 (15:40 +0000)] 
exp-sgcheck is not supported for MIPS architecture.

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

13 years agoEnable testing for the ETF3 facility.
Florian Krohm [Thu, 19 Jul 2012 14:35:55 +0000 (14:35 +0000)] 
Enable testing for the ETF3 facility.

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

13 years agoFix 303624 segmentation fault on Android 4.1 (e.g. on android emulator or Galaxy...
Philippe Waroquiers [Wed, 18 Jul 2012 23:01:02 +0000 (23:01 +0000)] 
Fix 303624 segmentation fault on Android 4.1 (e.g. on android emulator or Galaxy Nexus OMAP)

Valgrind was crashing systematically on Android 4.1.
This crash is caused by AT_IGNORE-ing AT_BASE.
This AT_IGNORE was needed to have breakpoints in shared libs
be handled properly (not very clear what is the problem
in the interaction between Valgrind GDBSERVER, AT_BASE and GDB).
Waiting to better understand all this, as a temporary bypass,
this patch ensures we do not ignore the AT_BASE on android.

The possible consequence is that breakpoints might be inserted
by the Valgrind gdbserver at wrong addresses in shared lib.
(any feedback on that is welcome).

Valgrind was build and then "proved" to work on Android emulator 4.0
and emulator 4.1, by using memcheck on one executable.

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

13 years agoBe slightly less precise on the leak check perf. improvement in NEWS
Philippe Waroquiers [Wed, 18 Jul 2012 22:36:37 +0000 (22:36 +0000)] 
Be slightly less precise on the leak check perf. improvement in NEWS
(as this 40% is only a measurement of one perf program on amd64).

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

13 years agopatch that improves the speed of the leak search by up to 40% (on amd64)
Philippe Waroquiers [Wed, 18 Jul 2012 22:26:51 +0000 (22:26 +0000)] 
patch that improves the speed of the leak search by up to 40% (on amd64)

Scanning 1GB of random values made of 200_000 malloc-ed block is
(on amd64) changing from (about) 17 seconds to (about) 10 seconds.

On x86, it goes from 153 seconds to 129 seconds.

(this huge difference between x86 and amd64 leak search time
for this random test is because a random value has about one chance
on 4 to be in the addressable memory on x86 and so the dichotomic
search in the list of malloc-ed blocks is called for a lot more
values than on amd64).

Basically, there are 3 optimisations:
1. call MC_(is_within_valid_secondary) only at the beginning of a
   secondary map (and not for each Word).
2. call SETJMP only at the beginning of a page (and not for each Word)
3. Validate an aligned word using get_vabits8 rather than get_vabits2.

Each of the above optimisation more or less improves by 2 seconds.
(to go from 17 seconds to 10 seconds).

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

13 years agoSmall cleanup: use VG_TRACK (when possible) to call tool tracking functions
Philippe Waroquiers [Wed, 18 Jul 2012 20:33:40 +0000 (20:33 +0000)] 
Small cleanup: use VG_TRACK (when possible) to call tool tracking functions
(spotted by Julian)
Note: there is a second occurence of call to track_post_mem_write in the
same file; but this second occurence is better done with an "if".

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

13 years agoUn-break the build on MacOS, following r12742 (initial support for DWZ
Julian Seward [Wed, 18 Jul 2012 10:47:38 +0000 (10:47 +0000)] 
Un-break the build on MacOS, following r12742 (initial support for DWZ
compressed debuginfo).

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

13 years agoTrack recent bug fixes.
Julian Seward [Mon, 16 Jul 2012 22:39:24 +0000 (22:39 +0000)] 
Track recent bug fixes.

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

13 years agoAdd some missing syscall numbers for MIPS.
Petar Jovanovic [Mon, 16 Jul 2012 14:35:26 +0000 (14:35 +0000)] 
Add some missing syscall numbers for MIPS.

The header file has been extended with the missing syscall numbers for MIPS,
and sys_prlimit64 has been enabled. This will make none/tests/rlimit64_nofile
pass.

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

13 years agoConditionally execute tests depending on revision of MIPS architecture.
Petar Jovanovic [Mon, 16 Jul 2012 14:07:47 +0000 (14:07 +0000)] 
Conditionally execute tests depending on revision of MIPS architecture.

Support has been added to the tests for MIPS32 revision 1. Previously, all the
tests had to be compiled for MIPS32r2 platforms.

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

13 years agoAdd tests for MOVBE -- an Intel-Atom-only instruction
Julian Seward [Mon, 16 Jul 2012 08:23:26 +0000 (08:23 +0000)] 
Add tests for MOVBE -- an Intel-Atom-only instruction

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

13 years agoBefore printing a back-trace make sure that page containing the
Florian Krohm [Sun, 15 Jul 2012 01:31:45 +0000 (01:31 +0000)] 
Before printing a back-trace make sure that page containing the
address stored in the stack pointer is mapped. Fixes a corner case.

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

13 years agoAdd expected outputs for VCMPNGESS. Should have been included in r12745.
Julian Seward [Sat, 14 Jul 2012 19:47:32 +0000 (19:47 +0000)] 
Add expected outputs for VCMPNGESS.  Should have been included in r12745.

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

13 years agoUpdate list of ignored files.
Florian Krohm [Sat, 14 Jul 2012 14:58:19 +0000 (14:58 +0000)] 
Update list of ignored files.

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

13 years agoUpdate list of ignore files.
Florian Krohm [Sat, 14 Jul 2012 14:51:01 +0000 (14:51 +0000)] 
Update list of ignore files.

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

13 years agoAdd test case for VCMPNGESS.
Julian Seward [Sat, 14 Jul 2012 14:31:44 +0000 (14:31 +0000)] 
Add test case for VCMPNGESS.

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

13 years agoUpdate with recent fixes.
Julian Seward [Sat, 14 Jul 2012 10:08:40 +0000 (10:08 +0000)] 
Update with recent fixes.

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

13 years agoAccept glibc-2.16 as valid (UNTESTED).
Julian Seward [Sat, 14 Jul 2012 10:07:06 +0000 (10:07 +0000)] 
Accept glibc-2.16 as valid (UNTESTED).

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

13 years agoInitial support for DWZ compressed debuginfo -- don't crash, at least,
Julian Seward [Sat, 14 Jul 2012 09:59:01 +0000 (09:59 +0000)] 
Initial support for DWZ compressed debuginfo -- don't crash, at least,
when reading it.  Bug 302901 comment 3.  (Jakub Jelinek, jakub@redhat.com)

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

13 years agoFix ppCfiReg for s390 so --trace-cfi=yes no longer asserts.
Florian Krohm [Fri, 13 Jul 2012 17:55:36 +0000 (17:55 +0000)] 
Fix ppCfiReg for s390 so --trace-cfi=yes no longer asserts.

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

13 years agoUpdate w/ recent bug fixes.
Julian Seward [Fri, 13 Jul 2012 14:04:03 +0000 (14:04 +0000)] 
Update w/ recent bug fixes.

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