1578 Commits

Author SHA1 Message Date
Tom Hughes
dc049b7c82 Add support for separate debug files, which are just separate ELF files
containing the relevant debug sections and located using the information
in the .gnu_debuglink section of the main file along with some search
rules and checksum logic borrowed from binutils/gdb.

CCMAIL: 82872-done@bugs.kde.org


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2408
2004-06-13 09:59:02 +00:00
Tom Hughes
bb942b40c8 Add a strrchr implementation.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2407
2004-06-13 09:55:22 +00:00
Tom Hughes
f267e2c7d0 Fixed the NPTL cleanup handler support to try and make sure it will
compile on systems with NPTL header files.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2406
2004-06-12 17:25:25 +00:00
Tom Hughes
83780627b5 It appears that NPTL uses a new system for dealing with cleanup
handlers when a thread is cancelled which has the side effect that
programs linked with librt fail on Fedora Core 2 due to librt having
been built against the NPTL header instead of the old pthread headers.

This change extends valgrind's libpthread.so to handle both the old
and new style cleanup handlers in a similar way to NPTL and seems to
be sufficient to get programs linked with librt working again.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2405
2004-06-12 12:58:22 +00:00
Tom Hughes
0bbe5bb70d There is no __accept in any libc or libpthread that I can find so
it isn't clear why we were intercepting that and only aliasing accept
to it. Switched to intercepting accept directly instead.

CCMAIL: 76869-done@bugs.kde.org


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2404
2004-06-04 21:42:18 +00:00
Tom Hughes
c8454991c0 Add an extra suppression for Fedora Core 2/glibc 2.3.3 systems.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2403
2004-06-03 18:42:34 +00:00
Tom Hughes
95776fd744 Changed cancellation wrappers to use dlsym(RTLD_NEXT) to look up the
libc version of the wrapped function when forwarding the call rather
than trying to call the internal __libc_xxx version of the routine
as many of those are marked as GLIBC_PRIVATE in recent releases.

CCMAIL: 82026-done@bugs.kde.org


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2402
2004-06-03 18:00:58 +00:00
Jeremy Fitzhardinge
ddb00a6ade Oops - fix up broken assert.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2401
2004-06-03 17:12:07 +00:00
Jeremy Fitzhardinge
b8abc7c9d1 Partial fix for bug 76869. This fixes the problem with returning from
a signal handler when VDSOs are turned off in FC2.  Note that we don't
(yet) support VDSOs being on (use "echo 0 > /proc/sys/kernel/vdso").


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2400
2004-06-03 10:00:42 +00:00
Nicholas Nethercote
0954cfc526 Fix wishlist item 82098, thanks to Ralf Wildenhues:
ANSIfication of the hp2ps code. The most important changes are the correct
  use of the stdarg mechanism (former hacks could bite on other systems, so
  please tell upstream), inclusion of stdlib.h instead of declaring free
  yourself, adding a few missed PROTO()s and using size_t for xmalloc and
  xrealloc.:


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2399
2004-06-02 20:43:24 +00:00
Nicholas Nethercote
d4834c9c77 Added "repne movs", not official but seems to occur. Also restructured the
rep/repe/repne cases to use a switch instead of if/else, as it's cleaner.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2398
2004-06-02 14:48:16 +00:00
Nicholas Nethercote
df5febb1a0 Fix patch from this morning -- missing commas, erk
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2397
2004-05-11 16:37:17 +00:00
Nicholas Nethercote
05167f92c1 Teach Massif about the 'nothrow' versions of new and new[].
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2396
2004-05-11 09:21:08 +00:00
Nicholas Nethercote
4517a54005 Update copyright
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2395
2004-05-11 09:17:49 +00:00
Nicholas Nethercote
874fc865a4 Fix for bug #80942.
Addrcheck wasn't doing overlap checking as it should.  This is because
mac_replace_strmem.o was being linked with vgskin_addrcheck.so instead of
vgpreload_addrcheck.so.  I fixed the Makefile, and also moved
_VG_USERREQ__MEMCHECK_GET_RECORD_OVERLAP so Addrcheck could see it.  And I
added the 'overlap' test (from memcheck/tests/) to Addrcheck's regression
suite.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2394
2004-05-05 10:46:22 +00:00
Nicholas Nethercote
7804c9527e Fix comment
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2393
2004-05-04 11:25:34 +00:00
Robert Walsh
661855fee0 Suppressions for Fedora Core 2.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2392
2004-04-29 08:50:44 +00:00
Robert Walsh
d9e00c2c90 Implement syscall 258, for those of use running Fedora Core 2.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2391
2004-04-29 08:40:50 +00:00
Nicholas Nethercote
6c5693221e Fix for bug 79355: fix up bogus assertion that was failing when
stack_snapshot() returned 0xffffffff as one of its eip values.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2390
2004-04-27 09:51:51 +00:00
Nicholas Nethercote
a4069eaab5 Add missing SSE case for Memcheck's instrumentation (sigh).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2389
2004-04-26 13:06:16 +00:00
Nicholas Nethercote
df975d0a3d Tighten MOV's sanity checking slightly
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2388
2004-04-26 09:21:25 +00:00
Nicholas Nethercote
51a32b0907 Split some combined error messages, so they are more informative. Also return
EPERM where appropriate, instead of EINVAL.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2387
2004-04-26 08:05:24 +00:00
Nicholas Nethercote
71f39d90cc Fix supps for Valgrind's own libpthread leak.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2386
2004-04-25 12:02:31 +00:00
Nicholas Nethercote
e26fa084b9 Fix bug in helper_{IN,OUT} -- they weren't preserving %eflags as they should.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2385
2004-04-22 18:47:07 +00:00
Tom Hughes
00958cb0de Cope with AT_xCACHEBSIZE not being defined, which they aren't on systems
with 2.2 kernels and, it seems, on some systems with 2.4 kernels.

CCMAIL: 79179-done@bugs.kde.org


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2384
2004-04-22 18:12:31 +00:00
Nicholas Nethercote
7f5d0885be SETV and TESTV never have an ArchReg as their first argument.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2383
2004-04-22 12:58:05 +00:00
Tom Hughes
a159f627cb Make support for the FBIOGET ioctls conditional on linux/fb.h being
present at compile time.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2382
2004-04-22 07:28:43 +00:00
Tom Hughes
e14c5dc6ed Add support for the FBIOGET_VSCREENINFO and FBIOGET_FSCREENINFO ioctls
based on a patch from Paul Olav Tvete <paul@trolltech.com>.

CCMAIL: 77022-done@bugs.kde.org


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2381
2004-04-21 15:52:33 +00:00
Tom Hughes
2a2ebbc8f0 Change the debugger attachment code to send the STOP signal to the
forked process before using ptrace() to continue it, instead of asking
ptrace to deliver it, as that doesn't seem to work on some versions
of linux.

CCMAIL: 77824-done@bugs.kde.org


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2380
2004-04-21 15:39:57 +00:00
Tom Hughes
b282a5ca81 Initialise %cs, %ds and %ss in the virtual machine to match the values
supplied by the operating system for the code, data and stack segments.

Explicit references using these segments still won't work but they
will at least produce an assertion to indicate that they aren't
supported instead of raising a segmentation fault in the target
program because of an apparent privilege violation.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2379
2004-04-21 15:16:43 +00:00
Nicholas Nethercote
4e0a147494 fix typo
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2378
2004-04-21 09:17:19 +00:00
Nicholas Nethercote
99e40bdbdd Update for compulsory --tool
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2377
2004-04-21 07:22:50 +00:00
Nicholas Nethercote
6fd129635e Addrcheck wasn't instrumenting MMX2a1_MemRd... whoops. Man, those instructions
are a mess.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2376
2004-04-20 10:07:44 +00:00
Nicholas Nethercote
9c5e009c05 When printing code and an insane instruction is encountered, ugly-print (giving
full details) it as well as pretty-printing it.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2375
2004-04-18 15:20:43 +00:00
Nicholas Nethercote
ff7adfacc8 Introduce uWiden, similar to uCCall, uCond, etc.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2374
2004-04-18 12:23:02 +00:00
Nicholas Nethercote
0c7fbab32a With -v, print out contents of /proc/version at startup.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2373
2004-04-18 12:08:46 +00:00
Nicholas Nethercote
2fc96dcc06 Add a "delete:" line to the regression test .vgtest files, to clean up any file
created by the test.  Added appropriate lines to the Cachegrind and Massif
tests.  Should prevent large numbers of files clogging up directories.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2372
2004-04-17 17:25:08 +00:00
Robert Walsh
f7e7e4ba37 Fix bug 73655.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2371
2004-04-16 23:02:29 +00:00
Nicholas Nethercote
5c07d8623b Added comment clarifying RDTSC.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2370
2004-04-16 22:21:18 +00:00
Nicholas Nethercote
3218fcb240 Increase sanity checking on .extra4b field for WIDEN, rename a sanity macro,
add some missing #undefs for some sanity macros.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2369
2004-04-16 16:16:34 +00:00
Nicholas Nethercote
693766e7cb Pretty-print WIDENs properly.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2368
2004-04-16 15:39:22 +00:00
Nicholas Nethercote
9e4315bf96 Improved pretty-printing:
- now showing conditions for CC2VAL and CMOV
 - fixed indenting on JumpKind (-c, -r, -sys, etc)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2367
2004-04-16 11:33:53 +00:00
Nicholas Nethercote
b74a38f2a4 Fix assertion failure msg.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2366
2004-04-16 08:04:28 +00:00
Nicholas Nethercote
867d9d2296 Fix typo, and update bug-reporting procedure.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2365
2004-04-16 07:25:32 +00:00
Nicholas Nethercote
f4bebe79a3 Make that damn 'inherit' test stop failing, even if Helgrind isn't doing the
right thing.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2364
2004-04-16 07:22:42 +00:00
Jeremy Fitzhardinge
54b904f8bd Quiet an overly noisy message.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2363
2004-04-14 07:22:00 +00:00
Jeremy Fitzhardinge
38bd6f1fb8 Fix for bug 77869. Names in stabs are terminated by ':'. Except templated
names, which can have :: within <> quotes.  Except when it's an operator,
which can have a name like operator<, followed by ::.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2362
2004-04-14 07:19:20 +00:00
Robert Walsh
7c558d6199 Fix new override test.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2361
2004-04-13 19:11:27 +00:00
Robert Walsh
4fa065bb03 Update test for recent "recently" fix.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2360
2004-04-13 19:08:34 +00:00
Nicholas Nethercote
979860ca67 Suppressions of jump errors were broken, because the size was zero and
so caused an assertion failure.  So set size == 1 -- it's only used for
suppressions.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2359
2004-04-13 08:47:35 +00:00