Commit Graph

49 Commits

Author SHA1 Message Date
Julian Seward
adc2dafee9 Update copyright dates, to include 2015. No functional change.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15577
2015-08-21 11:32:26 +00:00
Julian Seward
ac60633d65 Bug 345248 - add support for Solaris OS in valgrind
Authors of this port:
    Petr Pavlu         setup@dagobah.cz
    Ivo Raisr          ivosh@ivosh.net
    Theo Schlossnagle  theo@omniti.com
            


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15426
2015-07-21 14:44:28 +00:00
Julian Seward
082f9298a1 Add a port to Linux/TileGx. Zhi-Gang Liu (zliu@tilera.com)
Valgrind aspects, to match vex r3124.

See bug 339778 - Linux/TileGx platform support to Valgrind



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15080
2015-04-10 12:30:09 +00:00
Florian Krohm
a2ecdcb67c Add a redirection for the 'index' function.
Fixes BZ #327943


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14441
2014-09-03 16:01:10 +00:00
Mark Wielaard
a3a0be70ab Bug 338615 suppress glibc 2.20 optimized strcmp implementation for ARMv7.
Add an add_hardwired_spec for strcmp in VG_(redir_initialise) for
ld-linux.so.3 and ld-linux-armhf.so.3 to use a simple strcmp
implementation in m_trampoline.S (compiled from the trivial .c code
to asm with gcc like the other implementations in that file).

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14374
2014-08-28 14:59:04 +00:00
Carl Love
914f75de32 This commit is for Bugzilla 334384. The Bugzilla contains patch 1 of 3
to add PPC64 LE support.  The other two patches can be found in Bugzillas
334834 and 334836.  The commit does not have a VEX commit associated with it.

POWER PC, add initial Little Endian support

The IBM POWER processor now supports both Big Endian and Little Endian.
This patch renames the #defines with the name ppc64 to ppc64be for the BE
specific code.  This patch adds the Little Endian #define ppc64le to the

Additionally, a few functions are renamed to remove BE from the name if the
function is used by BE and LE. Functions that are BE specific have BE put
in the name.

The goals of this patch is to make sure #defines, function names and
variables consistently use PPC64/ppc64 if it refers to BE and LE,
PPC64BE/ppc64be if it is specific to BE, PPC64LE/ppc64le if it is LE
specific.  The patch does not break the code for PPC64 Big Endian.

The test files memcheck/tests/atomic_incs.c, tests/power_insn_available.c
and tests/power_insn_available.c are also updated to the new #define
definition for PPC64 BE.

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


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14238
2014-08-07 23:17:29 +00:00
Julian Seward
2db4102096 Redirect strchr in dyld (the dynamic linker) on OS X 10.9, for
the usual reason.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14070
2014-06-21 09:34:22 +00:00
Julian Seward
c34c75b44b Replace strlen, index, strcmp in the AArch64 ld.so. (Why does it have
the soname "ld-linux-aarch64.so.1" and not "ld-linux.so.3" like all
the rest?)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13858
2014-03-09 09:44:32 +00:00
Julian Seward
3f6d211236 Add support for ARMv8 AArch64 (the 64 bit ARM instruction set).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13770
2014-01-12 12:54:00 +00:00
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
Florian Krohm
a6c7a2893c Fix coregrind header files such that they can be included without
having to worry what other header files may have to be included
beforehand.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13549
2013-09-15 13:54:34 +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
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
Tom Hughes
09d83bf60b Implement the getcpu vsyscall on amd64 by forwarding it to the real
system call. Patch from Lénaïc Huard to fix BZ#187043.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12372
2012-02-09 11:54:16 +00:00
Julian Seward
3f4bbbc0b7 arm-linux: fix signal returning so that if SA_RESTORER is not
specified, the handler returns to the previous context rather than to
whatever value happens to be parked in the link register (duh).
Previous behaviour made complete nonsense of signal returning on
Android.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12273
2011-11-20 09:35:51 +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
ad7de5b336 Delete the AIX5 port. The last release this worked for is 3.4.1,
and then only on AIX 5.2 and 5.3.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11842
2011-06-28 07:25:29 +00:00
Julian Seward
dc53563392 Intercept strlen in ld.so on x86. Fixes #266961.
(Jakub Jelinek, jakub@redhat.com)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11668
2011-03-28 08:22:55 +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
Bart Van Assche
69b34b1f61 Avoid that gcc 4.5.x reports the warning "taking address of expression of type void". Tested on amd64 and on ppc64.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11243
2010-07-29 18:12:23 +00:00
Bart Van Assche
0d35a8d1f6 Reverted r11238.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11239
2010-07-29 09:34:46 +00:00
Bart Van Assche
e7095b5260 Avoid that gcc 4.5.x reports the warning "taking address of expression of type void".
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11238
2010-07-29 07:53:57 +00:00
Nicholas Nethercote
6fd0eb7b07 Merged the MACOSX106 branch to the trunk. Merge command:
svn merge -r11143:HEAD svn://svn.valgrind.org/valgrind/branches/MACOSX106

There were some easy-to-resolve conflicts.

Then I had to fix up coregrind/link_tool_exe*.in -- those files had been
added independently on both the trunk and the branch, AFAICT.  I just
overwrote the trunk versions with the branch versions.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11194
2010-07-01 00:20:20 +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
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
b39a007b53 Reinstating a heavily modified version of r10402. This is to do
with #190429.

This patch (originally from Jakub Jelinek) makes the redir of strlen
in ld.so on amd64-linux ld.so mandatory, but only for glibc 2.10 and
above.  For glibc-2.2 (our earliest supported version) to glibc-2.9
it is still optional.

Also, makes more verbose, the message that is printed if a mandatory
ld.so redirection on Linux cannot be set up.

Is believed to fix #190429.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10689
2009-08-02 12:21:31 +00:00
Nicholas Nethercote
4fc7d06fcc Back out r10402 because it completely breaks things on Ubuntu 9.04 and
OpenSUSE 11.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10404
2009-07-02 20:47:53 +00:00
Tom Hughes
3ddeb03e5b Replace strlen on amd64-linux with a simple version that doesn't
generate false positives.

Patch from Jakub Jelinek <jakub@redhat.com>. Fixes #190429.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10402
2009-07-02 13:02:12 +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
Nicholas Nethercote
131ab00744 Merged non-Darwin-specific parts of r9397,r9423,r9490, 9461, 9462 from the
DARWIN branch.  A big ugly DARWIN/trunk sync commit, mostly to do with
changing the representation of SysRes and vki_sigset_t.  Functionality of
the trunk shouldn't be changed by it.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@9876
2009-05-18 02:12:08 +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
5679a22410 Update copyright dates ("200X-2007" --> "200X-2008").
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7398
2008-02-11 11:34:59 +00:00
Julian Seward
6e8fce1548 ppc64-linux equivalent to r6813 (use sigframe return stub in
m_trampoline, not on the stack)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6814
2007-09-10 16:52:09 +00:00
Julian Seward
cd13fc1af8 ppc32-linux signal handling: don't place the sigframe return stub on
the stack; instead use a stub in m_trampoline.S.  This makes it
possible to deliver signals on non-executable stacks, and makes the
behaviour consistent with x86-linux and amd64-linux.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6813
2007-09-10 16:28:38 +00:00
Julian Seward
172505c978 Update copyright dates.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6488
2007-01-08 06:01:59 +00:00
Julian Seward
1f3fc1d2dc Merge r6153: Add client startup code for AIX5.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@6285
2006-10-17 01:54:54 +00:00
Julian Seward
ad67fd79fe Update copyright dates.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5954
2006-06-05 23:21:15 +00:00
Julian Seward
8ca05cc698 Get rid of VG_(x86_linux_REDIR_FOR__dl_sysinfo_int80) and do the x86-linux
stack unwind kludge another way.  This is believed to fix #108258.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5868
2006-04-29 18:03:14 +00:00
Julian Seward
5e2f451da8 More ppc64-linux function replacement/wrapping stuff.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5536
2006-01-17 02:21:09 +00:00
Julian Seward
5e77fedd75 Fix more ppc64-linux function wrapping and symbol-table bits and pieces.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5523
2006-01-12 21:15:35 +00:00
Julian Seward
9c0ae4be6f Initial redirect stuff for ppc64-linux.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5499
2006-01-05 14:07:04 +00:00
Julian Seward
fbf6836aec As with ppc it's necessary to have an initial redirect for index(strchr)
on x86 glibc-2.3.5.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5223
2005-11-20 19:37:54 +00:00
Julian Seward
04bb445744 Various fixes to reduce noise level on SuSE 10 (PPC). Also fix some
ppc32 syscalls.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4927
2005-10-15 02:00:41 +00:00
Julian Seward
f0f1b729c9 ppc32-linux only: redirect strcmp right from the start.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4841
2005-10-01 19:12:08 +00:00
Julian Seward
ba3fdbc461 The strlen that ld.so uses on ppc32 causes a lot of false errors in
memcheck, and they are hard to get rid of and hard to suppress.  So
add a bootstrap strlen function and redirect to it right from the
start.  This fn only replaces the strlen in ld.so; the "normal"
redirect mechanism still replaces the strlen that glibc supplies.

This commit finally (!) makes memcheck behave sanely on ppc32.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@4445
2005-08-18 11:54:30 +00:00
Julian Seward
b36f48842a Simplify the implementation of m_trampoline and the stuff that refers
to it.  Now there are no more offsets and no copying of code into the
stack.  We just redirect directly to entry points in m_syscalls.S.

This will mess up pointercheck, since the redirect targets are now in
Valgrind's address space, not the client's.  But pointercheck is hosed
anyway, and I'd rather back off to something simple whilst ppc32 is
stabilised.  When the address space management stuff is overhauled
then pointercheck may or may not get reinstated, and if it does then
the trampoline stuff will need revisiting.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3977
2005-06-21 01:41:34 +00:00
Nicholas Nethercote
d618b2572c Put VG_(client_trampoline_code) in m_trampoline.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3961
2005-06-19 21:49:28 +00:00
Nicholas Nethercote
2f407d612c Moved the code trampoline stuff into a new module, m_trampoline. Not
certain this was the right thing to do, but that stuff sure as hell
didn't fit in any of the existing modules.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3929
2005-06-18 03:27:58 +00:00