39 Commits

Author SHA1 Message Date
Julian Seward
dbf9b63605 Update copyright dates (20XY-2012 ==> 20XY-2013)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13658
2013-10-18 14:27:36 +00:00
Dejan Jevtic
78ae0356c4 mips32: Add support for mips32 DSP instruction set.
Add support for mips32 DSP and DSP revision 2 ASE.
More details about the mips32 DSP(r2) ASE:
http://www.mips.com/media/files/MD00566-2B-MIPSDSP-QRC-01.00.pdf
Applied patch provided by Maja Gagic <maja.gagic@rt-rk.com>



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13470
2013-07-25 08:22:08 +00:00
Florian Krohm
7b5334ad4c 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
2013-05-31 15:44:06 +00:00
Petar Jovanovic
5dd4c02e39 mips: adding MIPS64LE support to Valgrind
Necessary changes to Valgrind to support MIPS64LE on Linux.
Minor cleanup/style changes embedded in the patch as well.
The change corresponds to r2687 in VEX.
Patch written by Dejan Jevtic and Petar Jovanovic.

More information about this issue:
https://bugs.kde.org/show_bug.cgi?id=313267


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13292
2013-02-27 23:17:33 +00:00
Julian Seward
d120d46f76 get_otrack_shadow_offset_wrk: amd64: add a (very rare) missing case.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13277
2013-01-29 21:13:00 +00:00
Julian Seward
f8919a049c On ARM: Don't be spooked by Puts to the translation-invalidation spec
when doing origin tracking, even though they are completely irrelevant.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13177
2012-12-13 15:17:40 +00:00
Florian Krohm
26d4de4575 s390: Fix FOC width. It's 4 bytes not 8.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12965
2012-09-11 23:06:02 +00:00
Florian Krohm
fd63ba5ee7 s390: Ensure proper size when calling get_otrack_shadow_offset_wrk.
Also handle EMNOTE.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12954
2012-09-03 17:34:22 +00:00
Florian Krohm
cd528bd768 Followup patch to r12899, purely mechanical. Rename:
VexEmWarn -> VexEmNote
EmWarn_NUMBER -> EmNote_NUMBER
guest_EMWARN -> guest_EMNOTE
LibVEX_EmWarn_string -> LibVEX_EmNote_string
offB_EMWARN -> offB_EMNOTE
EmWarn_NONE -> EmNote_NONE
See also VEX r2484


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12900
2012-08-26 03:22:09 +00:00
Julian Seward
4a3633e266 Update copyright dates to include 2012.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12843
2012-08-05 15:46:46 +00:00
Julian Seward
3e344c57f6 Merge in a port for mips32-linux, by Petar Jovanovic and Dejan Jevtic,
mips-valgrind@rt-rk.com, Bug 270777.

Valgrind: changes to existing files.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12616
2012-06-07 09:13:21 +00:00
Julian Seward
8ebb8c30e5 Add initial support for Intel AVX instructions (Valgrind side).
Tracker bug is #273475.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12569
2012-05-21 10:18:10 +00:00
Julian Seward
f8bd0543a4 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
2012-04-02 15:10:37 +00:00
Julian Seward
d2ca761361 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
2012-04-02 10:22:05 +00:00
Florian Krohm
0160d2dfc6 With the change in VEX r2258 the guest IA will now also be accessed
in the low word only. Adjust code accordingly.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12392
2012-02-20 15:03:02 +00:00
Philippe Waroquiers
be97cddd7a Fixes 282230 group allocator for small fixed size, use it for MC_Chunk/SEc vbit
* new files include/pub_tool_groupalloc.h and coregrind/m_groupalloc.c
  implementing a group allocator (based on helgrind group alloc).
* include/Makefile.am coregrind/Makefile.am : added pub_tool_groupalloc.h
  and m_groupalloc.c
* helgrind/libhb_core.c : use pub_tool_groupalloc.h/m_groupalloc.c
  instead  of the local implementation.
* include/pub_tool_oset.h coregrind/m_oset.c : new function
  allowing to create an oset that will use a pool allocator.
  new function allowing to clone an oset (so as to share the pool alloc)
* memcheck/tests/unit_oset.c drd/tests/unit_bitmap.c : modified
  so that it compiles with the new m_oset.c
* memcheck/mc_main.c : use group alloc for MC_Chunk
  memcheck/mc_include.h : declare the MC_Chunk group alloc
* memcheck/mc_main.c : use group alloc for the nodes of the secVBitTable OSet
* include/pub_tool_hashtable.h coregrind/m_hashtable.c : pass the free node
  function in the VG_(HT_destruct).
  (needed as the hashtable user can allocate a node with its own alloc,
  the hash table destroy must be able to free the nodes with the user
  own free).
* coregrind/m_gdbserver/m_gdbserver.c : pass free function to VG_(HT_destruct)
* memcheck/mc_replace_strmem.c memcheck/mc_machine.c
  memcheck/mc_malloc_wrappers.c memcheck/mc_leakcheck.c
  memcheck/mc_errors.c memcheck/mc_translate.c : new include needed
  due to group alloc.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12341
2012-01-17 21:16:30 +00:00
Julian Seward
c96096ab24 Update all copyright dates, from 20xy-2010 to 20xy-2011.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12206
2011-10-23 07:32:08 +00:00
Julian Seward
8dd8315914 Add support for IBM Power ISA 2.06 -- stage 1. Valgrind-side changes
and test cases. Bug #267630 and followup fix #270794.
(Maynard Johnson, maynardj@us.ibm.com)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11697
2011-04-15 11:57:05 +00:00
Julian Seward
6107fd666c Add a port to IBM z/Architecture (s390x) running Linux -- Valgrind
side components. (Florian Krohm <britzel@acm.org> and Christian
Borntraeger <borntraeger@de.ibm.com>).  Fixes #243404.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11604
2011-03-07 16:05:35 +00:00
Julian Seward
30c3aef64f x86: get_otrack_shadow_offset_wrk: handle guest_NRADDR. Fixes #257276.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11516
2011-01-28 00:53:37 +00:00
Julian Seward
d4a4b32e72 Don't assert when doing origin tracking for d16-31, f32-63
or q0-15.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11390
2010-09-29 21:40:44 +00:00
Julian Seward
4d88144c11 When origin tracking, handle the new %RFLAGS.ACFLAG guest state
component introduced in vex r2050.  See #249943.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11388
2010-09-28 16:00:11 +00:00
Julian Seward
06d2a1e039 Enable --track-origins on ARM code which accesses CPSR.GE3/2/1/0.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11373
2010-09-22 22:27:41 +00:00
Julian Seward
58d26cc998 Merge from branches/THUMB: add (partial) --track-origins support for
new guest state components needed for Thumb and NEON support.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11282
2010-08-22 12:16:25 +00:00
Julian Seward
1ec3c376a6 Track vex r2001 (initial PCMPISTRI support):
* handle new pseudo-reg XMM16 in memcheck/mc_machine.c

* run_thread_for_a_while: assert that the amd64 XMM guest reg array
  has no holes and the elements are the right size, so that the
  (PCMP)ISTRI_* helpers can treat it as an array.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11249
2010-08-06 08:01:47 +00:00
Julian Seward
9b0574dff8 Update copyright dates to 2010.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11121
2010-05-03 21:37:12 +00:00
Julian Seward
3c1644f476 Enable origin tracking through arm VFP registers; was apparently
previously not enabled only due to brain-deadness on my part.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11012
2010-01-04 11:48:19 +00:00
Julian Seward
e9de458500 Merge from branches/ARM, all parts of the ARM-Linux port except for
the changes to do with reading and using ELF and DWARF3 info.
This breaks all targets except amd64-linux and x86-linux.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10982
2010-01-01 11:59:33 +00:00
Julian Seward
3109865279 Merge in branches/DCAS.
This branch adds proper support for atomic instructions, proper in the
sense that the atomicity is preserved through the compilation
pipeline, and thus in the instrumented code.

These changes track the IR changes added by vex r1901.  They primarily
update the instrumentation functions in all tools to handle the
changes, with the exception of exp-ptrcheck, which needs some further
work in order to be able to run threaded code.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10392
2009-07-01 08:10:49 +00:00
Nicholas Nethercote
07045477ca Merge the DARWIN branch onto the trunk.
I tried using 'svn merge' to do the merge but it did a terrible job and
there were bazillions of conflicts.  So instead I just took the diff between
the branch and trunk  at r10155, applied the diff to the trunk, 'svn add'ed
the added files (no files needed to be 'svn remove'd) and committed.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10156
2009-05-28 01:53:07 +00:00
Julian Seward
e1eec7ec8d Handle new pseudo-register IP_AT_SYSCALL when origin-tracking is
enabled.  Fixes #188161.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9497
2009-03-30 02:27:29 +00:00
Julian Seward
563511a64e Track renaming of guest_CIA_AT_SC to guest_IP_AT_SYSCALL (vex r1886).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9468
2009-03-20 00:28:50 +00:00
Nicholas Nethercote
2001629c3f Updated copyright years.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9344
2009-03-10 22:02:09 +00:00
Julian Seward
6a1bca2e35 get_otrack_shadow_offset_wrk(ppc32): handle a missing case that caused
an assertion failure (Chris Wilson).



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9154
2009-02-14 15:28:46 +00:00
Julian Seward
3620497773 get_otrack_shadow_offset_wrk: don't assert when handling 32 bit
accesses to the x87 registers.  Fixes #163794.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8228
2008-06-13 07:44:02 +00:00
Julian Seward
2953684804 Add a missing case and remove the bogus associated comment.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8135
2008-05-27 16:08:24 +00:00
Julian Seward
4a6be60077 Oops. Don't die on {x86,amd64}-linux when doing --track-origins=yes
and --smc-check=all.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8021
2008-05-09 23:26:19 +00:00
Julian Seward
f1aae08c46 Why doesn't this sodding language have a half-decent type system?
This took me all day to track down.  Gimme Haskell any day.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8009
2008-05-06 15:40:32 +00:00
Julian Seward
4cae5c3ed5 Merge branches/OTRACK_BY_INSTRUMENTATION into the trunk. This adds
support to Memcheck for tracking the origin of uninitialised values,
if you use the --track-origins=yes flag.

This currently causes some Memcheck regression tests to fail, because
they now print an extra line of advisory text in their output.  This
will be fixed.

The core-tool interface is slightly changed.  The version number for
the interface needs to be incremented.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7982
2008-05-01 20:24:26 +00:00