fix gdbsrv inferior calls when PT_GNU_STACK declares stack not executable
With rev 13368, Valgrind obeys PT_GNU_STACK making the stack not
executable. This makes inferior function call with GDB >= 7.5 failing,
as GDB places a breakpoint on the stack, which must be decoded
and translated by Valgrind to have the inferior function call properly done.
=> introduce a special case in the conditions to allow translation
when a segment is not executable but is readable and there is a
breakpoint at the address.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13381 a5019735-40e9-0310-863c-91ae7b9d1cf9
valgrind side support for
Iop_F64toD64, Iop_D64toF64
Iop_F64toD128, Iop_D128toF64,
Iop_F128toD128, Iop_D128toF128

Companion patch of VEX r2717.
Patch by Maran Pakkirisamy (maranp@linux.vnet.ibm.com).
Part of fixing BZ #307113


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13382 a5019735-40e9-0310-863c-91ae7b9d1cf9
Add syscall suport for system calls sys_mbind, sys_set_mempolicy and
sys_get_mempolicy.

This patch add support for the PPC64 sytem calls:
        259 - sys_mbind
	260 - sys_get_mempolicy
	261 - sys_set_mempolicy

This patch also adds the Add syscall 259, sys_mbind, support for the PPC32
platform.

The patch fixes bugzilla 318932.

Signed-off-by: Carl Love <cel@us.ibm.com>
---


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13383 a5019735-40e9-0310-863c-91ae7b9d1cf9
fix 319235 --db-attach=yes is broken with Yama ptrace scoping enabled
On Ubuntu systems, ptrace_scoping could forbid a process to ptrace another.
This ptrace scoping was already handled for vgdb by using SET_PTRACER
(the valgrind process must be ptraced by vgdb when it is blocked
in a syscall).
set_ptracer is however also needed when the old mechanism --db-attach=yes
is used.
The following changes are done:
* make the set_ptracer logic callable outside gdbserver
* make set_ptracer less restrictive (i.e. allow all
  processes of the user to ptrace). This removes a limitation for vgdb.
* call the set_ptracer in the child launched for --db-attach=yes
* cleaned up the ptrace scope restriction message and doc as vgdb
  is now working properly by default, even with ptrace_scope enabled.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13384 a5019735-40e9-0310-863c-91ae7b9d1cf9
mips: add allexec tests for mips64

Initial patch for none/tests/mips64/.
allexec tests added.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13385 a5019735-40e9-0310-863c-91ae7b9d1cf9
complainIfUndefined: reinstate the 3rd argument (guard) so as to make
the definedness check and possible shadow temp set-to-defined be
optional.  Use this to properly instrument IRLoadG and IRStoreG, so
that if the load/store does not happen, not only is the validity of
the address not checked, neither is the definedness.

This fixes a regression introduced by the COMEM branch on ARM, in
which conditional loads/stores with addresses which are undefined at
runtime and with guards which are false, would generate false errors.

Also extensively re-checked the check-generation machinery and updated
a bunch of comments.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13386 a5019735-40e9-0310-863c-91ae7b9d1cf9
s390: valgrind side support for PFPO. New hwcap added.
See companion patch VEX r2719.

Patch by Maran Pakkirisamy (maranp@linux.vnet.ibm.com).
Part of fixing BZ #307113


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13387 a5019735-40e9-0310-863c-91ae7b9d1cf9
mips: define allexec files as soft links

This change is a follow up to r13385. It removes physical copies of the
allexec c-files in none/tests/mips32/ and none/tests/mips64/ and defines
them as soft-links to a common file like other arches do.

Credits to Philippe for noticing it.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13388 a5019735-40e9-0310-863c-91ae7b9d1cf9
mips: default VKI_SHMLBA to the MIPS Linux kernel value SHMLBA

This change removes option to define shared-memory-alignment for MIPS,
instead default value (0x40000) from MIPS Linux kernel will be used.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13389 a5019735-40e9-0310-863c-91ae7b9d1cf9
mips: code-style, remove some trailing spaces from MIPS header files

Non-function change, removing some trailing spaces from MIPS header files.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13390 a5019735-40e9-0310-863c-91ae7b9d1cf9
Whitespace-only changes.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13391 a5019735-40e9-0310-863c-91ae7b9d1cf9
Add test cases for instrumentation of IR-level loads and stores.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13392 a5019735-40e9-0310-863c-91ae7b9d1cf9
Fix up output filtering for cond_st so that the stacks are 
actually present.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13393 a5019735-40e9-0310-863c-91ae7b9d1cf9
memcheck/tests/cond_ld_st: add expected outputs for ARM, where
we are using real conditional load/store instructions.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13394 a5019735-40e9-0310-863c-91ae7b9d1cf9
cond_ld_st: Split the non-arm expected outputs into 32- and 64-bit
versions, since they will be different.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13395 a5019735-40e9-0310-863c-91ae7b9d1cf9
Add test cases for SSAT16.  See #318929.
(Vasily Golubev, w.golubev@mail.ru)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13396 a5019735-40e9-0310-863c-91ae7b9d1cf9
Add test case for STRT.  See #319395.
(Vasily Golubev, w.golubev@mail.ru)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13397 a5019735-40e9-0310-863c-91ae7b9d1cf9
Fix incorrect filenames for the cond_ld_st tests.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13398 a5019735-40e9-0310-863c-91ae7b9d1cf9
mips: atomic_add_8bit and atomic_add_16bit for MIPS64-BE

It fixes memcheck/tests/atomic_incs on MIPS64-BE.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13399 a5019735-40e9-0310-863c-91ae7b9d1cf9
AMD64 rounding support