Commit Graph

31 Commits

Author SHA1 Message Date
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