]> git.ipfire.org Git - thirdparty/valgrind.git/log
thirdparty/valgrind.git
12 years agoHandle Iop_QAdd16Ux2. Needed for recent ARM v6media additions committed
Julian Seward [Thu, 4 Jul 2013 20:37:33 +0000 (20:37 +0000)] 
Handle Iop_QAdd16Ux2.  Needed for recent ARM v6media additions committed
in vex r2731.

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

12 years agoImplement the following instructions, in both ARM and Thumb
Julian Seward [Thu, 4 Jul 2013 20:35:42 +0000 (20:35 +0000)] 
Implement the following instructions, in both ARM and Thumb
encodings:
  SSAX SXTAB16 SHASX SHSAX SHSUB16 SHSUB8
  UASX USAX UQADD16 UQASX UQSAX UHASX UHSAX REVSH

Fixes
  321363 321364 321466 321467 321468 321619 321704
  321620 321621 321692 321694 321696 321697 321703

(Vasily, w.golubev@mail.ru)

git-svn-id: svn://svn.valgrind.org/vex/trunk@2731

12 years agoAdd test cases for
Julian Seward [Thu, 4 Jul 2013 15:29:07 +0000 (15:29 +0000)] 
Add test cases for
(T1) STRBT reg+#imm8
(T1) STRHT reg+#imm8
(T1) LDRBT reg+#imm8
(T1) LDRSBT reg+#imm8

Pertaining to: 319858 319932 320083 321693 321148

(Vasily, w.golubev@mail.ru)

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

12 years agoAdd support for
Julian Seward [Thu, 4 Jul 2013 15:25:36 +0000 (15:25 +0000)] 
Add support for
(T1) STRBT reg+#imm8
(T1) STRHT reg+#imm8
(T1) LDRBT reg+#imm8
(T1) LDRSBT reg+#imm8
(T1) PLI reg+#imm12
(T2) PLI reg-#imm8
(T3) PLI PC+/-#imm12

Fixes: 319858 319932 320083 321693 321148
(Vasily, w.golubev@mail.ru)

git-svn-id: svn://svn.valgrind.org/vex/trunk@2730

12 years agomips: implement Iop_8Uto64 in iselInt64Expr
Petar Jovanovic [Thu, 4 Jul 2013 00:39:37 +0000 (00:39 +0000)] 
mips: implement Iop_8Uto64 in iselInt64Expr

Iop_8Uto64 was missing in iselInt64Expr.
The change should resolve Bugzilla #319505.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2729

12 years agoUpdate bug status.
Julian Seward [Wed, 3 Jul 2013 11:16:31 +0000 (11:16 +0000)] 
Update bug status.

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

12 years agoBug 321738 Add manpages for vgdb and valgrind-listener.
Mark Wielaard [Wed, 3 Jul 2013 10:00:19 +0000 (10:00 +0000)] 
Bug 321738 Add manpages for vgdb and valgrind-listener.

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

12 years agoBug 321730 Add cg_merge and cg_diff man pages.
Mark Wielaard [Wed, 3 Jul 2013 10:00:17 +0000 (10:00 +0000)] 
Bug 321730 Add cg_merge and cg_diff man pages.

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

12 years agoUpdate expected outputs.
Julian Seward [Tue, 2 Jul 2013 20:47:24 +0000 (20:47 +0000)] 
Update expected outputs.

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

12 years agoMerge r13421:HEAD from branches/DISRV. This merges the debuginfo-server
Julian Seward [Tue, 2 Jul 2013 08:07:15 +0000 (08:07 +0000)] 
Merge r13421:HEAD from branches/DISRV.  This merges the debuginfo-server
stuff into the trunk.

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

12 years agoMinor improvements in debug printing for stabs reading.
Julian Seward [Tue, 2 Jul 2013 07:11:14 +0000 (07:11 +0000)] 
Minor improvements in debug printing for stabs reading.

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

12 years ago[PATCH 4/4] xen: VKI_XENMEM_get_sharing_{freed, shared}_pages hypercall (#321065)
Bart Van Assche [Sun, 30 Jun 2013 07:59:50 +0000 (07:59 +0000)] 
[PATCH 4/4] xen: VKI_XENMEM_get_sharing_{freed, shared}_pages hypercall (#321065)

From: Andrew Cooper <andrew.cooper3@citrix.com>

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

12 years ago[PATCH 3/4] xen: VKI_XEN_SYSCTL_sched_id hypercall (#321065)
Bart Van Assche [Sun, 30 Jun 2013 07:59:09 +0000 (07:59 +0000)] 
[PATCH 3/4] xen: VKI_XEN_SYSCTL_sched_id hypercall (#321065)

From: Andrew Cooper <andrew.cooper3@citrix.com>

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

12 years ago[PATCH 2/4] xen: update for interface changes in Xen 4.3 release (#321065)
Bart Van Assche [Sun, 30 Jun 2013 07:58:19 +0000 (07:58 +0000)] 
[PATCH 2/4] xen: update for interface changes in Xen 4.3 release (#321065)

From: Ian Campbell <ian.campbell@citrix.com>

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

12 years ago[PATCH 1/4] xen: distinguish the various fields of the Xen privcmd ioctls in the...
Bart Van Assche [Sun, 30 Jun 2013 07:57:35 +0000 (07:57 +0000)] 
[PATCH 1/4] xen: distinguish the various fields of the Xen privcmd ioctls in the logging (#321065)

From: Ian Campbell <ian.campbell@citrix.com>

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

12 years agoMake the ppc64-linux .opd-reading machinery work in the new framework.
Julian Seward [Sat, 29 Jun 2013 08:38:37 +0000 (08:38 +0000)] 
Make the ppc64-linux .opd-reading machinery work in the new framework.

git-svn-id: svn://svn.valgrind.org/valgrind/branches/DISRV@13434

12 years agoBug 289360 parse_type_DIE confused by DW_TAG_enumeration_type.
Mark Wielaard [Fri, 28 Jun 2013 14:03:58 +0000 (14:03 +0000)] 
Bug 289360 parse_type_DIE confused by DW_TAG_enumeration_type.

GCC allows incomplete enums as GNU extension.
http://gcc.gnu.org/onlinedocs/gcc/Incomplete-Enums.html
These are marked as DW_AT_declaration and won't have a size.
They can only be used in declaration or as pointer types.
You can't allocate variables or storage using such an enum type.
So don't require a size for such enum types.

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

12 years agoExit a bit more gracefully if a request to get part of an image
Julian Seward [Thu, 27 Jun 2013 20:31:36 +0000 (20:31 +0000)] 
Exit a bit more gracefully if a request to get part of an image
exceeds the allowable range.  With this change, it should be
essentially impossible to crash V by feeding it invalid ELF or Dwarf.

git-svn-id: svn://svn.valgrind.org/valgrind/branches/DISRV@13432

12 years agoMinimal changes needed to make this suitable for trunk:
Julian Seward [Thu, 27 Jun 2013 17:39:15 +0000 (17:39 +0000)] 
Minimal changes needed to make this suitable for trunk:

* add a new flag --allow-mismatched-debuginfo to override the
  CRC32/build-id checks, if needed

* tidy up logic for finding files on the --extra-debuginfo-path
  and at the --debuginfo-server

* don't assert if connection to the debuginfo server is lost;
  instead print a reasonable message and quit.

git-svn-id: svn://svn.valgrind.org/valgrind/branches/DISRV@13431

12 years agoConnect up the Mach-O reader to the new DiImage abstractions.
Julian Seward [Tue, 25 Jun 2013 12:42:52 +0000 (12:42 +0000)] 
Connect up the Mach-O reader to the new DiImage abstractions.

git-svn-id: svn://svn.valgrind.org/valgrind/branches/DISRV@13430

12 years agos390: Update testcase for PFPO
Florian Krohm [Mon, 17 Jun 2013 21:04:25 +0000 (21:04 +0000)] 
s390: Update testcase for PFPO
Patch by Maran Pakkirisamy (maranp@linux.vnet.ibm.com).
Part of fixing BZ 307113.

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

12 years agos390: Support some more BFP <-> DFP conversions (the ones
Florian Krohm [Mon, 17 Jun 2013 21:03:56 +0000 (21:03 +0000)] 
s390: Support some more BFP <-> DFP conversions (the ones
that were added in VEX r2727).
Patch by Maran Pakkirisamy (maranp@linux.vnet.ibm.com).
Part of fixing BZ 307113.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2728

12 years agovalgrind side changes to support the new IRops introduced
Florian Krohm [Mon, 17 Jun 2013 19:04:24 +0000 (19:04 +0000)] 
valgrind side changes to support the new IRops introduced
in VEX r2727 (conversion ops between binary floating point and
decimal floating point).
Patch by Maran Pakkirisamy (maranp@linux.vnet.ibm.com).
Part of fixing BZ 307113.

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

12 years agoAdd some more IRops to convert between binary floating point and
Florian Krohm [Mon, 17 Jun 2013 18:59:51 +0000 (18:59 +0000)] 
Add some more IRops to convert between binary floating point and
decimal floating point values. Needed to complete s390 DFP support.
Patch by Maran Pakkirisamy (maranp@linux.vnet.ibm.com).
Part of fixing BZ 307113.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2727

12 years agoUpdate list of ignored files.
Florian Krohm [Mon, 17 Jun 2013 18:44:15 +0000 (18:44 +0000)] 
Update list of ignored files.

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

12 years agoimprove --help for --main-stacksize and supported ARM cpu
Philippe Waroquiers [Wed, 12 Jun 2013 21:45:39 +0000 (21:45 +0000)] 
improve --help for --main-stacksize and supported ARM cpu
If the command line option --main-stacksize is not used,
the current ulimit value is used, with a min of 1MB
and a max of 16MB. Document this min/max default formula
in the --help.

Also indicate that Valgrind supports ARMv7

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

12 years agoImprove performance of CRC32 computations for files in the local filesystem.
Julian Seward [Mon, 10 Jun 2013 08:34:26 +0000 (08:34 +0000)] 
Improve performance of CRC32 computations for files in the local filesystem.

git-svn-id: svn://svn.valgrind.org/valgrind/branches/DISRV@13425

12 years agomips64: fix 'unused variable' warning
Petar Jovanovic [Sun, 9 Jun 2013 16:46:14 +0000 (16:46 +0000)] 
mips64: fix 'unused variable' warning

On a couple of places, the code expected either _MIPSEB or _MIPSEL flag to
use some variables, but none of these flags is set when the code is compiled
for non-MIPS architectures.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2726

12 years agomips64: fix typo in EXTRA_DIST
Petar Jovanovic [Sun, 9 Jun 2013 14:29:10 +0000 (14:29 +0000)] 
mips64: fix typo in EXTRA_DIST

Fixes make dist error.
Typo spotted and reported by Maran Pakkirisamy <maranp@linux.vnet.ibm.com>

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

12 years agoInitial code for remote debuginfo server. Handles all ELF/Dwarf{2,3,4}
Julian Seward [Fri, 7 Jun 2013 16:15:48 +0000 (16:15 +0000)] 
Initial code for remote debuginfo server.  Handles all ELF/Dwarf{2,3,4}
on Linux.  No Dwarf1, no Stabs, and MacOSX probably won't build.

git-svn-id: svn://svn.valgrind.org/valgrind/branches/DISRV@13423

12 years agoCreate brances/DISRV as a copy of trunk r13421, to hold work
Julian Seward [Fri, 7 Jun 2013 16:02:32 +0000 (16:02 +0000)] 
Create brances/DISRV as a copy of trunk r13421, to hold work
on a remote debuginfo server.

git-svn-id: svn://svn.valgrind.org/valgrind/branches/DISRV@13422

12 years agoMore comment only changes as the "DFP rounding mode" has been removed.
Florian Krohm [Thu, 6 Jun 2013 21:21:46 +0000 (21:21 +0000)] 
More comment only changes as the "DFP rounding mode" has been removed.

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

12 years agoUpdate list of ignored files.
Florian Krohm [Thu, 6 Jun 2013 19:20:53 +0000 (19:20 +0000)] 
Update list of ignored files.

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

12 years agoComment only changes: IRRoundingModeDFP -> IRRoundingMode.
Florian Krohm [Thu, 6 Jun 2013 19:13:29 +0000 (19:13 +0000)] 
Comment only changes: IRRoundingModeDFP -> IRRoundingMode.

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

12 years agoEliminate IRRoundingModeDFP by merging its values into IRRoundingMode.
Florian Krohm [Thu, 6 Jun 2013 19:12:46 +0000 (19:12 +0000)] 
Eliminate IRRoundingModeDFP by merging its values into IRRoundingMode.
Retain encodings. The rationale is that a rounding mode is an abstraction
and as such independent of formats used to represent numeric values.
This was triggered by the need for a rounding mode to express conversions
between binary floating point values and decimal floating point values.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2725

12 years agomips64: add cases in wrappers for ptrace calls with GETREGSET
Petar Jovanovic [Mon, 3 Jun 2013 15:33:09 +0000 (15:33 +0000)] 
mips64: add cases in wrappers for ptrace calls with GETREGSET

Add cases for PTRACE_GETREGSET in PRE(sys_ptrace) and POST(sys_ptrace).

This fixes memcheck/tests/linux/getregset on MIPS64 platforms with kernel
that supports ptrace call with PTRACE_GETREGSET.

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

12 years agomips64: disable intercepting the spinlock function
Petar Jovanovic [Sun, 2 Jun 2013 18:08:04 +0000 (18:08 +0000)] 
mips64: disable intercepting the spinlock function

This change disables intercepting pthread_spin_lock() for MIPS64, similar to
r13190 for MIPS32. Used in DRD and Helgrind as a workaround for the issue
#311690.

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

12 years agomips64: add missing line-continuation character
Petar Jovanovic [Sun, 2 Jun 2013 17:23:43 +0000 (17:23 +0000)] 
mips64: add missing line-continuation character

make distclean failed for the missing character.

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

12 years agoupdate cond_ld_st test and expected outputs
Petar Jovanovic [Sun, 2 Jun 2013 03:22:28 +0000 (03:22 +0000)] 
update cond_ld_st test and expected outputs

Line numbers are off by one in some outputs since it differs on GCC version
how it will map source code to line number for the ternary operator written
in multiple lines.
This is small fix that replaces one occurrence of ternary operator with
if-then-else. The excepted outputs have been changed accordingly.

This fixes the test memcheck/tests/cond_ld_st for different platforms with
different GCC versions.

Tested on x86, i386, ARM, MIPS32, and MIPS64.

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

12 years agoadd and update exp files for drd/tests/annotate_trace_memory
Petar Jovanovic [Sun, 2 Jun 2013 02:59:07 +0000 (02:59 +0000)] 
add and update exp files for drd/tests/annotate_trace_memory

exp-32bit files needed minor update for the last store, and some mips32
platforms also need additional exp-mips32 due to different way of loading
and storing double values.

This fixes drd/tests/annotate_trace_memory on different 32-bit platforms.

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

12 years agos390x: The CC_DEP1 field is accessed as a whole or bits [0:31]
Florian Krohm [Fri, 31 May 2013 15:44:06 +0000 (15:44 +0000)] 
s390x: The CC_DEP1 field is accessed as a whole or bits [0:31]
in case the field holds a 32-bit floating point value.
Patch by Maran Pakkirisamy (maranp@linux.vnet.ibm.com).
Part of fixing BZ 307113.

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

12 years agos390x: Make the CC_DEP1 field appear completely initialised when
Florian Krohm [Fri, 31 May 2013 15:41:55 +0000 (15:41 +0000)] 
s390x: Make the CC_DEP1 field appear completely initialised when
writing a 32-bit floating point value into it.
Patch by Maran Pakkirisamy (maranp@linux.vnet.ibm.com).
Part of fixing BZ 307113.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2724

12 years agomips32/mips64: implement sdl, sdr, swl and swr without reading memory
Petar Jovanovic [Fri, 31 May 2013 15:09:56 +0000 (15:09 +0000)] 
mips32/mips64: implement sdl, sdr, swl and swr without reading memory

New implementation of SDL, SDW, SWL and SWR instructions in a way in which
no memory read is required. This came as an issue for programs that map
memory as write-exec only.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2723

12 years agomips64: rename exp files for load_store_multiple
Petar Jovanovic [Wed, 29 May 2013 10:50:31 +0000 (10:50 +0000)] 
mips64: rename exp files for load_store_multiple

Rename none/tests/mips64/load_store_multiple exp files to match the name
of the source file.

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

12 years agomips64: expected output for mips64 specific tests
Petar Jovanovic [Tue, 28 May 2013 18:06:05 +0000 (18:06 +0000)] 
mips64: expected output for mips64 specific tests

Follow up to the previous change in which mips64 specific tests were added.
It covers both MIPS64-LE and MIPS64-BE.

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

12 years agomips64: set of mips64 specific tests
Petar Jovanovic [Tue, 28 May 2013 16:51:27 +0000 (16:51 +0000)] 
mips64: set of mips64 specific tests

This is a set of mips64 programs that test mips64 instruction set.

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

12 years agofix 320211 Stack buffer overflow in ./coregrind/m_main.c with huge TMPDIR
Philippe Waroquiers [Sun, 26 May 2013 21:09:20 +0000 (21:09 +0000)] 
fix 320211 Stack buffer overflow in ./coregrind/m_main.c with huge TMPDIR
* Addition of a function to compute size of buffer needed for VG_(mkstemp)
* Use it to dimension buffers for all VG_(mkstemp) calls.

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

12 years agoRevert "Disable drd/tests/annotate_trace_memory[_xml].vgtest on arm and ppc."
Mark Wielaard [Wed, 22 May 2013 20:43:25 +0000 (20:43 +0000)] 
Revert "Disable drd/tests/annotate_trace_memory[_xml].vgtest on arm and ppc."

The tests have been changed to not depend on atomic 64bit add_and_fetch.

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

12 years agodrd/tests/annotate_trace_memory no longer depends on 64-bit atomics
Bart Van Assche [Wed, 22 May 2013 18:01:16 +0000 (18:01 +0000)] 
drd/tests/annotate_trace_memory no longer depends on 64-bit atomics

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

12 years agodrd/tests/annotate_trace_memory: Make this test more ARM/PPC friendly (#318643)
Bart Van Assche [Wed, 22 May 2013 16:30:29 +0000 (16:30 +0000)] 
drd/tests/annotate_trace_memory: Make this test more ARM/PPC friendly (#318643)

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

12 years agoDon't break platforms without AF_BLUETOOTH.
Mark Wielaard [Wed, 22 May 2013 10:37:52 +0000 (10:37 +0000)] 
Don't break platforms without AF_BLUETOOTH.

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

12 years agoSupport Linux kernel AF_BLUETOOTH for bind().
Mark Wielaard [Wed, 22 May 2013 10:21:10 +0000 (10:21 +0000)] 
Support Linux kernel AF_BLUETOOTH for bind().

Bug #320116. sockaddr_rc might contain some padding which might not be
initialized. Explicitly check the sockaddr_rc fields are set. That also
produces better diagnostics about which field is unitialized.

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

12 years agoSupport PTRACE_GET/SET_THREAD_AREA on x86.
Mark Wielaard [Wed, 22 May 2013 10:21:08 +0000 (10:21 +0000)] 
Support PTRACE_GET/SET_THREAD_AREA on x86.
BZ#320063.  (Josh Stone, jistone@redhat.com)

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

12 years agoDisable drd/tests/annotate_trace_memory[_xml].vgtest on arm and ppc.
Mark Wielaard [Wed, 22 May 2013 10:21:02 +0000 (10:21 +0000)] 
Disable drd/tests/annotate_trace_memory[_xml].vgtest on arm and ppc.

Workaround for bug #318643. Disable the tests for now so they don't
go into an infinite loop and fill up the disks on arm, ppc32 or ppc64.

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

12 years agoexp files for cond_ld and cond_st for 32-bit architectures
Petar Jovanovic [Mon, 20 May 2013 15:39:11 +0000 (15:39 +0000)] 
exp files for cond_ld and cond_st for 32-bit architectures

This fixes:
- memcheck/tests/cond_ld and
- memcheck/tests/cond_st

for 32-bit non-ARM architectures. Tested on IA32 and MIPS32.

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

12 years agomips: enable syscalls prlimit64, process_vm_readv, process_vm_writev
Petar Jovanovic [Tue, 14 May 2013 14:13:15 +0000 (14:13 +0000)] 
mips: enable syscalls prlimit64, process_vm_readv, process_vm_writev

Enable wrappers for syscalls prlimit64, process_vm_readv, process_vm_writev,
needed by the following tests:

- none/tests/rlimit64_nofile and
- none/tests/process_vm_readv_writev.

The change also adds definitions for several system calls for MIPS64.

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

12 years agomips: atomic_add_8bit and atomic_add_16bit for MIPS64-BE
Petar Jovanovic [Tue, 14 May 2013 13:33:27 +0000 (13:33 +0000)] 
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

12 years agoFix incorrect filenames for the cond_ld_st tests.
Julian Seward [Mon, 13 May 2013 13:27:00 +0000 (13:27 +0000)] 
Fix incorrect filenames for the cond_ld_st tests.

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

12 years agoAdd test case for STRT. See #319395.
Julian Seward [Mon, 13 May 2013 10:29:32 +0000 (10:29 +0000)] 
Add test case for STRT.  See #319395.
(Vasily Golubev, w.golubev@mail.ru)

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

12 years agoImplement STRT. Fixes #319395. (Vasily Golubev, w.golubev@mail.ru)
Julian Seward [Mon, 13 May 2013 10:28:59 +0000 (10:28 +0000)] 
Implement STRT.  Fixes #319395.  (Vasily Golubev, w.golubev@mail.ru)

git-svn-id: svn://svn.valgrind.org/vex/trunk@2722

12 years agoAdd test cases for SSAT16. See #318929.
Julian Seward [Mon, 13 May 2013 10:03:28 +0000 (10:03 +0000)] 
Add test cases for SSAT16.  See #318929.
(Vasily Golubev, w.golubev@mail.ru)

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

12 years agoImplement SSAT16. Fixes #318929. (Vasily Golubev, w.golubev@mail.ru)
Julian Seward [Mon, 13 May 2013 10:02:33 +0000 (10:02 +0000)] 
Implement SSAT16.  Fixes #318929.  (Vasily Golubev, w.golubev@mail.ru)

git-svn-id: svn://svn.valgrind.org/vex/trunk@2721

12 years agocond_ld_st: Split the non-arm expected outputs into 32- and 64-bit
Julian Seward [Mon, 13 May 2013 09:13:04 +0000 (09:13 +0000)] 
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

12 years agomemcheck/tests/cond_ld_st: add expected outputs for ARM, where
Julian Seward [Mon, 13 May 2013 08:35:19 +0000 (08:35 +0000)] 
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

12 years agoFix up output filtering for cond_st so that the stacks are
Julian Seward [Mon, 13 May 2013 08:28:31 +0000 (08:28 +0000)] 
Fix up output filtering for cond_st so that the stacks are
actually present.

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

12 years agoFix s390 build failure.
Florian Krohm [Sun, 12 May 2013 13:57:13 +0000 (13:57 +0000)] 
Fix s390 build failure.
Patch by Maran Pakkirisamy (maranp@linux.vnet.ibm.com).

git-svn-id: svn://svn.valgrind.org/vex/trunk@2720

12 years agoAdd test cases for instrumentation of IR-level loads and stores.
Julian Seward [Sun, 12 May 2013 11:07:59 +0000 (11:07 +0000)] 
Add test cases for instrumentation of IR-level loads and stores.

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

12 years agoWhitespace-only changes.
Julian Seward [Sun, 12 May 2013 10:43:31 +0000 (10:43 +0000)] 
Whitespace-only changes.

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

12 years agomips: code-style, remove some trailing spaces from MIPS header files
Petar Jovanovic [Sun, 12 May 2013 01:16:40 +0000 (01:16 +0000)] 
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

12 years agomips: default VKI_SHMLBA to the MIPS Linux kernel value SHMLBA
Petar Jovanovic [Sun, 12 May 2013 00:52:38 +0000 (00:52 +0000)] 
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

12 years agomips: define allexec files as soft links
Petar Jovanovic [Sat, 11 May 2013 22:23:27 +0000 (22:23 +0000)] 
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

12 years agos390: valgrind side support for PFPO. New hwcap added.
Florian Krohm [Sat, 11 May 2013 15:05:04 +0000 (15:05 +0000)] 
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

12 years agos390: First round of changes to support the PFPO insn.
Florian Krohm [Sat, 11 May 2013 15:02:58 +0000 (15:02 +0000)] 
s390: First round of changes to support the PFPO insn.
Support these IROps:
Iop_F64toD64, Iop_D64toF64
Iop_F64toD128, Iop_D128toF64,
Iop_F128toD128, Iop_D128toF128,

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

git-svn-id: svn://svn.valgrind.org/vex/trunk@2719

12 years agocomplainIfUndefined: reinstate the 3rd argument (guard) so as to make
Julian Seward [Sat, 11 May 2013 13:42:08 +0000 (13:42 +0000)] 
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

12 years agomips: add allexec tests for mips64
Petar Jovanovic [Fri, 10 May 2013 13:14:54 +0000 (13:14 +0000)] 
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

12 years agofix 319235 --db-attach=yes is broken with Yama ptrace scoping enabled
Philippe Waroquiers [Thu, 9 May 2013 21:29:23 +0000 (21:29 +0000)] 
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

12 years agoGet rid of gcc warning on non-MIPS platforms.
Julian Seward [Wed, 8 May 2013 08:56:45 +0000 (08:56 +0000)] 
Get rid of gcc warning on non-MIPS platforms.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2718

12 years agoAdd syscall suport for system calls sys_mbind, sys_set_mempolicy and
Carl Love [Tue, 7 May 2013 15:47:35 +0000 (15:47 +0000)] 
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

12 years agovalgrind side support for
Florian Krohm [Sun, 5 May 2013 15:05:42 +0000 (15:05 +0000)] 
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

12 years agoAdd the following IROPs which are needed for s390 DFP support:
Florian Krohm [Sun, 5 May 2013 15:04:30 +0000 (15:04 +0000)] 
Add the following IROPs which are needed for s390 DFP support:
Iop_F64toD64, Iop_D64toF64
Iop_F64toD128, Iop_D128toF64,
Iop_F128toD128, Iop_D128toF128,

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

git-svn-id: svn://svn.valgrind.org/vex/trunk@2717

12 years agofix gdbsrv inferior calls when PT_GNU_STACK declares stack not executable
Philippe Waroquiers [Thu, 2 May 2013 22:06:31 +0000 (22:06 +0000)] 
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

13 years agomips: fix some style issues, non-functional change
Petar Jovanovic [Sat, 27 Apr 2013 02:18:11 +0000 (02:18 +0000)] 
mips: fix some style issues, non-functional change

Minor cleanup, no real functional change.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2716

13 years agomips: extending the existing test for INS and EXT instructions
Petar Jovanovic [Sat, 27 Apr 2013 01:34:05 +0000 (01:34 +0000)] 
mips: extending the existing test for INS and EXT instructions

Follow up to r2715 in VEX in which we fix INS instruction for lsb = 0.

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

13 years agomips: fix corner case for INS instruction
Petar Jovanovic [Sat, 27 Apr 2013 01:15:48 +0000 (01:15 +0000)] 
mips: fix corner case for INS instruction

This change fixes corner case for INS instruction when lsb = 0.
The test in none/tests/mips32/MIPS32int.c will be extended to include
additional test cases that trigger this condition.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2715

13 years agomips: fixup blksys_restart address for mips64
Petar Jovanovic [Fri, 26 Apr 2013 19:01:04 +0000 (19:01 +0000)] 
mips: fixup blksys_restart address for mips64

Restart logic has changed in kernel, this is counterpart in Valgrind.

This change fixes:

none/tests/syscall-restart1
none/tests/syscall-restart2

for mips64.

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

13 years agoSTRD (both ARM and Thumb): for push-like cases -- specifically, STRD
Julian Seward [Fri, 26 Apr 2013 10:24:31 +0000 (10:24 +0000)] 
STRD (both ARM and Thumb): for push-like cases -- specifically, STRD
rD1,rD2, [sp, #-8], generate IR for the SP writeback before the
stores.  This loses restartability of the instruction but avoids
Memcheck complaining that we're writing below the stack pointer.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2714

13 years agoIncrease size of the CIEs array to 5000.
Julian Seward [Fri, 26 Apr 2013 08:59:40 +0000 (08:59 +0000)] 
Increase size of the CIEs array to 5000.

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

13 years agoWhitespace changes only -- no functional change.
Julian Seward [Tue, 23 Apr 2013 12:15:37 +0000 (12:15 +0000)] 
Whitespace changes only -- no functional change.

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

13 years agoImplement SMMLA{r}, both ARM and Thumb. n-i-bz.
Julian Seward [Tue, 23 Apr 2013 08:56:43 +0000 (08:56 +0000)] 
Implement SMMLA{r}, both ARM and Thumb.  n-i-bz.
(Ben Cheng <bccheng@google.com>)

Also, move ARM encoding of SMMUL{R} to a more sensible place.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2713

13 years agoAdd test cases for SMMLA{R}.
Julian Seward [Tue, 23 Apr 2013 08:52:35 +0000 (08:52 +0000)] 
Add test cases for SMMLA{R}.

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

13 years agoAndroid's elf.h doesn't have PT_GNU_STACK (sigh) and so r13368 broke
Julian Seward [Mon, 22 Apr 2013 09:57:01 +0000 (09:57 +0000)] 
Android's elf.h doesn't have PT_GNU_STACK (sigh) and so r13368 broke
the build.  This conditionalises that fragment on the present of
PT_GNU_STACK.

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

13 years agoGenerate better code for Shl64(x, imm8) since the Neon front end
Julian Seward [Sun, 21 Apr 2013 00:45:18 +0000 (00:45 +0000)] 
Generate better code for Shl64(x, imm8) since the Neon front end
produces a lot of those for V{LD,ST}{1,2,3,4}.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2712

13 years agoMinor changes to how V{LD}{1,2,3,4} are tested:
Julian Seward [Sat, 20 Apr 2013 23:43:49 +0000 (23:43 +0000)] 
Minor changes to how V{LD}{1,2,3,4} are tested:
* print the output 64-bit results in most-to-least-significant
  lane format
* change the memory values used in these tests to ones which
  are reliably able to detect confusion of 8-bit lanes.  The
  previous values couldn't to that reliable.  This change causes
  the diff to be huge because the stdout.exp changes a lot.

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

13 years agoVLD4/VST4: generate in-line interleave/de-interleave code, so that
Julian Seward [Sat, 20 Apr 2013 23:27:36 +0000 (23:27 +0000)] 
VLD4/VST4: generate in-line interleave/de-interleave code, so that
loads can always be done in 8 byte units.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2711

13 years agoVLD3/VST3: generate in-line interleave/de-interleave code, so that
Julian Seward [Sat, 20 Apr 2013 21:19:44 +0000 (21:19 +0000)] 
VLD3/VST3: generate in-line interleave/de-interleave code, so that
loads can always be done in 8 byte units.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2710

13 years agoCalculate offsets in read_dwarf2_lineblock based on is64
Petar Jovanovic [Fri, 19 Apr 2013 15:23:44 +0000 (15:23 +0000)] 
Calculate offsets in read_dwarf2_lineblock based on is64

Reading header length and values in external line info was incorrect at
some places as it used offsets based on dw64 that came from .debug_info.
Instead, offsets should be calculated based on is64 from .debug_line.
This issue surfaced in MIPS64 port, and it was discussed at:

https://bugs.kde.org/show_bug.cgi?id=313267#c20

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

13 years agomips: fix endian issues for LWL, LWR, LDR and LDL for mips64
Petar Jovanovic [Fri, 19 Apr 2013 12:35:00 +0000 (12:35 +0000)] 
mips: fix endian issues for LWL, LWR, LDR and LDL for mips64

This change:
- fixes endian issues for unaligned loads for MIPS64,
- (re)moves endian dependencies in guest-to-IR for Iop_ReinterpI32asF32
   and Iop_ReinterpI64asF64 to host-mips-isel,
- adds minor style changes in the area touched by the code.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2709

13 years agoNon-functional changes: flush stdout frequently, so as to make
Julian Seward [Thu, 18 Apr 2013 11:52:19 +0000 (11:52 +0000)] 
Non-functional changes: flush stdout frequently, so as to make
it easier to sync with stderr output.  Also, add some more helpful
data for testing Neon loads/stores.

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

13 years agoImproved front end translations for Neon V{LD,ST}{1,2} instructions,
Julian Seward [Thu, 18 Apr 2013 11:50:58 +0000 (11:50 +0000)] 
Improved front end translations for Neon V{LD,ST}{1,2} instructions,
that do deinterleaving/interleaving via IROps and so generate far
fewer memory references.  As a side effect, fix incorrect ARM back end
implementation of many of the SIMD lane interleaving/deinterleaving
and concatenation IROps.

git-svn-id: svn://svn.valgrind.org/vex/trunk@2708

13 years agoFix -Ttext-segment configure check.
Mark Wielaard [Wed, 17 Apr 2013 19:11:05 +0000 (19:11 +0000)] 
Fix -Ttext-segment configure check.

Explicitly test together with -static -nodefaultlibs -nostartfiles to mimic
what the tools linking script does. At least on s390 the test might fail for
a non-static AC_LINK, while it does work when using those other flags too.

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