You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(122) |
Nov
(152) |
Dec
(69) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(6) |
Feb
(25) |
Mar
(73) |
Apr
(82) |
May
(24) |
Jun
(25) |
Jul
(10) |
Aug
(11) |
Sep
(10) |
Oct
(54) |
Nov
(203) |
Dec
(182) |
| 2004 |
Jan
(307) |
Feb
(305) |
Mar
(430) |
Apr
(312) |
May
(187) |
Jun
(342) |
Jul
(487) |
Aug
(637) |
Sep
(336) |
Oct
(373) |
Nov
(441) |
Dec
(210) |
| 2005 |
Jan
(385) |
Feb
(480) |
Mar
(636) |
Apr
(544) |
May
(679) |
Jun
(625) |
Jul
(810) |
Aug
(838) |
Sep
(634) |
Oct
(521) |
Nov
(965) |
Dec
(543) |
| 2006 |
Jan
(494) |
Feb
(431) |
Mar
(546) |
Apr
(411) |
May
(406) |
Jun
(322) |
Jul
(256) |
Aug
(401) |
Sep
(345) |
Oct
(542) |
Nov
(308) |
Dec
(481) |
| 2007 |
Jan
(427) |
Feb
(326) |
Mar
(367) |
Apr
(255) |
May
(244) |
Jun
(204) |
Jul
(223) |
Aug
(231) |
Sep
(354) |
Oct
(374) |
Nov
(497) |
Dec
(362) |
| 2008 |
Jan
(322) |
Feb
(482) |
Mar
(658) |
Apr
(422) |
May
(476) |
Jun
(396) |
Jul
(455) |
Aug
(267) |
Sep
(280) |
Oct
(253) |
Nov
(232) |
Dec
(304) |
| 2009 |
Jan
(486) |
Feb
(470) |
Mar
(458) |
Apr
(423) |
May
(696) |
Jun
(461) |
Jul
(551) |
Aug
(575) |
Sep
(134) |
Oct
(110) |
Nov
(157) |
Dec
(102) |
| 2010 |
Jan
(226) |
Feb
(86) |
Mar
(147) |
Apr
(117) |
May
(107) |
Jun
(203) |
Jul
(193) |
Aug
(238) |
Sep
(300) |
Oct
(246) |
Nov
(23) |
Dec
(75) |
| 2011 |
Jan
(133) |
Feb
(195) |
Mar
(315) |
Apr
(200) |
May
(267) |
Jun
(293) |
Jul
(353) |
Aug
(237) |
Sep
(278) |
Oct
(611) |
Nov
(274) |
Dec
(260) |
| 2012 |
Jan
(303) |
Feb
(391) |
Mar
(417) |
Apr
(441) |
May
(488) |
Jun
(655) |
Jul
(590) |
Aug
(610) |
Sep
(526) |
Oct
(478) |
Nov
(359) |
Dec
(372) |
| 2013 |
Jan
(467) |
Feb
(226) |
Mar
(391) |
Apr
(281) |
May
(299) |
Jun
(252) |
Jul
(311) |
Aug
(352) |
Sep
(481) |
Oct
(571) |
Nov
(222) |
Dec
(231) |
| 2014 |
Jan
(185) |
Feb
(329) |
Mar
(245) |
Apr
(238) |
May
(281) |
Jun
(399) |
Jul
(382) |
Aug
(500) |
Sep
(579) |
Oct
(435) |
Nov
(487) |
Dec
(256) |
| 2015 |
Jan
(338) |
Feb
(357) |
Mar
(330) |
Apr
(294) |
May
(191) |
Jun
(108) |
Jul
(142) |
Aug
(261) |
Sep
(190) |
Oct
(54) |
Nov
(83) |
Dec
(22) |
| 2016 |
Jan
(49) |
Feb
(89) |
Mar
(33) |
Apr
(50) |
May
(27) |
Jun
(34) |
Jul
(53) |
Aug
(53) |
Sep
(98) |
Oct
(206) |
Nov
(93) |
Dec
(53) |
| 2017 |
Jan
(65) |
Feb
(82) |
Mar
(102) |
Apr
(86) |
May
(187) |
Jun
(67) |
Jul
(23) |
Aug
(93) |
Sep
(65) |
Oct
(45) |
Nov
(35) |
Dec
(17) |
| 2018 |
Jan
(26) |
Feb
(35) |
Mar
(38) |
Apr
(32) |
May
(8) |
Jun
(43) |
Jul
(27) |
Aug
(30) |
Sep
(43) |
Oct
(42) |
Nov
(38) |
Dec
(67) |
| 2019 |
Jan
(32) |
Feb
(37) |
Mar
(53) |
Apr
(64) |
May
(49) |
Jun
(18) |
Jul
(14) |
Aug
(53) |
Sep
(25) |
Oct
(30) |
Nov
(49) |
Dec
(31) |
| 2020 |
Jan
(87) |
Feb
(45) |
Mar
(37) |
Apr
(51) |
May
(99) |
Jun
(36) |
Jul
(11) |
Aug
(14) |
Sep
(20) |
Oct
(24) |
Nov
(40) |
Dec
(23) |
| 2021 |
Jan
(14) |
Feb
(53) |
Mar
(85) |
Apr
(15) |
May
(19) |
Jun
(3) |
Jul
(14) |
Aug
(1) |
Sep
(57) |
Oct
(73) |
Nov
(56) |
Dec
(22) |
| 2022 |
Jan
(3) |
Feb
(22) |
Mar
(6) |
Apr
(55) |
May
(46) |
Jun
(39) |
Jul
(15) |
Aug
(9) |
Sep
(11) |
Oct
(34) |
Nov
(20) |
Dec
(36) |
| 2023 |
Jan
(79) |
Feb
(41) |
Mar
(99) |
Apr
(169) |
May
(48) |
Jun
(16) |
Jul
(16) |
Aug
(57) |
Sep
(19) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
|
|
|
1
(31) |
2
(27) |
|
3
(25) |
4
(21) |
5
(21) |
6
(21) |
7
(32) |
8
(23) |
9
(15) |
|
10
(12) |
11
(9) |
12
(10) |
13
(10) |
14
(9) |
15
(7) |
16
(20) |
|
17
(14) |
18
(71) |
19
(67) |
20
(50) |
21
(25) |
22
(15) |
23
(37) |
|
24
(25) |
25
(41) |
26
(34) |
27
(57) |
28
(20) |
29
(30) |
30
(13) |
|
31
(18) |
|
|
|
|
|
|
|
From: <sv...@va...> - 2005-07-01 22:20:38
|
Author: njn
Date: 2005-07-01 23:20:34 +0100 (Fri, 01 Jul 2005)
New Revision: 4077
Log:
Removed Corecheck, as it no longer serves a useful purpose.
Removed:
trunk/corecheck/
Modified:
trunk/Makefile.am
trunk/auxprogs/gen-mdg
trunk/configure.in
trunk/docs/xml/manual.xml
Modified: trunk/Makefile.am
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/Makefile.am 2005-07-01 22:06:55 UTC (rev 4076)
+++ trunk/Makefile.am 2005-07-01 22:20:34 UTC (rev 4077)
@@ -6,7 +6,6 @@
## addrcheck must come after memcheck, for mac_*.o
TOOLS =3D memcheck \
cachegrind \
- corecheck \
massif \
lackey \
none
Modified: trunk/auxprogs/gen-mdg
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/auxprogs/gen-mdg 2005-07-01 22:06:55 UTC (rev 4076)
+++ trunk/auxprogs/gen-mdg 2005-07-01 22:20:34 UTC (rev 4077)
@@ -54,7 +54,7 @@
my %hide;
=20
# List of all tools.
-my @tools =3D ( "addrcheck", "cachegrind", "corecheck", "helgrind",
+my @tools =3D ( "addrcheck", "cachegrind", "helgrind",
"lackey", "massif", "memcheck", "none" );
=20
my $usage =3D <<END
Modified: trunk/configure.in
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/configure.in 2005-07-01 22:06:55 UTC (rev 4076)
+++ trunk/configure.in 2005-07-01 22:20:34 UTC (rev 4077)
@@ -487,9 +487,6 @@
massif/hp2ps/Makefile
massif/tests/Makefile
massif/docs/Makefile
- corecheck/Makefile
- corecheck/tests/Makefile
- corecheck/docs/Makefile
lackey/Makefile
lackey/tests/Makefile
lackey/docs/Makefile
Modified: trunk/docs/xml/manual.xml
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/docs/xml/manual.xml 2005-07-01 22:06:55 UTC (rev 4076)
+++ trunk/docs/xml/manual.xml 2005-07-01 22:20:34 UTC (rev 4077)
@@ -24,8 +24,6 @@
xmlns:xi=3D"http://www.w3.org/2001/XInclude" />
<xi:include href=3D"../../none/docs/nl-manual.xml" parse=3D"xml" =20
xmlns:xi=3D"http://www.w3.org/2001/XInclude" />
- <xi:include href=3D"../../corecheck/docs/cc-manual.xml" parse=3D"xml" =
=20
- xmlns:xi=3D"http://www.w3.org/2001/XInclude" />
<xi:include href=3D"../../lackey/docs/lk-manual.xml" parse=3D"xml" =20
xmlns:xi=3D"http://www.w3.org/2001/XInclude" />
=20
|
|
From: <sv...@va...> - 2005-07-01 22:06:57
|
Author: cerion
Date: 2005-07-01 23:06:55 +0100 (Fri, 01 Jul 2005)
New Revision: 4076
Log:
Reinstated a couple more syscalls
Modified:
trunk/coregrind/m_syswrap/syswrap-ppc32-linux.c
trunk/coregrind/vki_unistd-ppc32-linux.h
Modified: trunk/coregrind/m_syswrap/syswrap-ppc32-linux.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_syswrap/syswrap-ppc32-linux.c 2005-07-01 22:00:50 U=
TC (rev 4075)
+++ trunk/coregrind/m_syswrap/syswrap-ppc32-linux.c 2005-07-01 22:06:55 U=
TC (rev 4076)
@@ -1942,7 +1942,7 @@
GENX_(__NR_unlink, sys_unlink), // 10
//.. GENX_(__NR_execve, sys_execve), // 11
//.. GENX_(__NR_chdir, sys_chdir), // 12
-//.. GENXY(__NR_time, sys_time), // 13
+ GENXY(__NR_time, sys_time), // 13
//.. GENX_(__NR_mknod, sys_mknod), // 14
//..=20
GENX_(__NR_chmod, sys_chmod), // 15
@@ -1982,8 +1982,8 @@
//.. GENX_(__NR_prof, sys_ni_syscall), // 44
//..=20
GENX_(__NR_brk, sys_brk), // 45
-//.. GENX_(__NR_setgid, sys_setgid16), // 46
-//.. GENX_(__NR_getgid, sys_getgid16), // 47
+ GENX_(__NR_setgid, sys_setgid16), // 46
+ GENX_(__NR_getgid, sys_getgid16), // 47
//.. // (__NR_signal, sys_signal), // 48 */* =
(ANSI C)
GENX_(__NR_geteuid, sys_geteuid16), // 49
=20
Modified: trunk/coregrind/vki_unistd-ppc32-linux.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/vki_unistd-ppc32-linux.h 2005-07-01 22:00:50 UTC (rev=
4075)
+++ trunk/coregrind/vki_unistd-ppc32-linux.h 2005-07-01 22:06:55 UTC (rev=
4076)
@@ -42,7 +42,7 @@
#define __NR_unlink 10
#define __NR_execve 11
//#define __NR_chdir 12
-//#define __NR_time 13
+#define __NR_time 13
//#define __NR_mknod 14
#define __NR_chmod 15
#define __NR_lchown 16
@@ -75,8 +75,8 @@
//#define __NR_times 43
//#define __NR_prof 44
#define __NR_brk 45
-//#define __NR_setgid 46
-//#define __NR_getgid 47
+#define __NR_setgid 46
+#define __NR_getgid 47
//#define __NR_signal 48
#define __NR_geteuid 49
#define __NR_getegid 50
|
|
From: <sv...@va...> - 2005-07-01 22:00:55
|
Author: njn Date: 2005-07-01 23:00:50 +0100 (Fri, 01 Jul 2005) New Revision: 4075 Log: Remove ancient and presumably (since it doesn't work) now-unused script. Removed: trunk/make-uninstall-docs Deleted: trunk/make-uninstall-docs =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/make-uninstall-docs 2005-07-01 08:39:38 UTC (rev 4074) +++ trunk/make-uninstall-docs 2005-07-01 22:00:50 UTC (rev 4075) @@ -1,21 +0,0 @@ -#!/bin/sh - -# small tool to help documentation writers. -# Copy docs out of an installation tree (`pwd`/Inst) back to the build t= ree -# since it is a lot easier to edit them in the installation tree. -# Use with care! - -cp Inst/share/doc/valgrind/coregrind_core.html coregrind/docs -cp Inst/share/doc/valgrind/coregrind_intro.html coregrind/docs -cp Inst/share/doc/valgrind/coregrind_tools.html coregrind/docs -cp Inst/share/doc/valgrind/manual.html docs -cp Inst/share/doc/valgrind/ac_main.html addrcheck/docs -cp Inst/share/doc/valgrind/mc_main.html memcheck/docs -cp Inst/share/doc/valgrind/mc_techdocs.html memcheck/docs -cp Inst/share/doc/valgrind/cg_main.html cachegrind/docs -cp Inst/share/doc/valgrind/cg_techdocs.html cachegrind/docs -cp Inst/share/doc/valgrind/cc_main.html corecheck/docs -cp Inst/share/doc/valgrind/hg_main.html helgrind/docs -cp Inst/share/doc/valgrind/lk_main.html lackey/docs -cp Inst/share/doc/valgrind/nl_main.html none/docs - |
|
From: <sv...@va...> - 2005-07-01 21:44:05
|
Author: njn Date: 2005-07-01 22:43:59 +0100 (Fri, 01 Jul 2005) New Revision: 135 Log: Added SuperTux, LinCity-NG, Glest. Modified: trunk/gallery/users.html Modified: trunk/gallery/users.html =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- trunk/gallery/users.html 2005-06-30 23:40:04 UTC (rev 134) +++ trunk/gallery/users.html 2005-07-01 21:43:59 UTC (rev 135) @@ -512,7 +512,6 @@ <h2 class=3D"bluehd">Games</h2> =20 <ul> - <li><a href=3D"http://www.unrealtournament.com/">Unreal Tournament (inc. UT2003, UT2004):</a> a multiplayer first-person shooter.</li> @@ -543,6 +542,15 @@ an award-winning massive multiplayer online roleplaying game (MMORPG).</li> =20 + <li><a href=3D"http://supertux.berlios.de/">SuperTux:</a> a 2D + platform game.</li> + + <li><a href=3D"http://lincity-ng.berlios.de/">LinCity-NG:</a> a + city simulation game.</li> + + <li><a href=3D"http://www.stud.uni-karlsruhe.de/~uxsm/glest/">Glest:</a= > + a 3D real-time strategy game.</li> + <li><a href=3D"http://www.wesnoth.org/">Battle for Wesnoth:</a> a turn-based strategy game with a fantasy theme.</li> =20 @@ -559,9 +567,8 @@ <li><a href=3D"http://www.worldforge.org/">Worldforge:</a> an engine for online roleplaying games.</li> =20 - <li><a href=3D"http://www.xfire.com/">Xfire:</a> n instant + <li><a href=3D"http://www.xfire.com/">Xfire:</a> an instant messenger for gamers.</li> - </ul> =20 =20 |
|
From: <sv...@va...> - 2005-07-01 21:16:52
|
Author: cerion
Date: 2005-07-01 22:16:10 +0100 (Fri, 01 Jul 2005)
New Revision: 1245
Log:
Implemented altivec load: lvx - xfontsel runs now (tool=3Dnone)
plus a little cleaning of toIR.c
Modified:
trunk/priv/guest-ppc32/toIR.c
trunk/priv/host-ppc32/isel.c
Modified: trunk/priv/guest-ppc32/toIR.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/priv/guest-ppc32/toIR.c 2005-07-01 18:56:33 UTC (rev 1244)
+++ trunk/priv/guest-ppc32/toIR.c 2005-07-01 21:16:10 UTC (rev 1245)
@@ -653,16 +653,13 @@
return IRExpr_Get( vectorGuestRegOffset(archreg), Ity_V128 );
}
=20
-#if 0
/* Ditto, but write to a reg instead. */
-/* apparently unused, jrs 2005-06-30 */
static void putVReg ( UInt archreg, IRExpr* e )
{
vassert(archreg < 32);
vassert(typeOfIRExpr(irbb->tyenv, e) =3D=3D Ity_V128);
stmt( IRStmt_Put(vectorGuestRegOffset(archreg), e) );
}
-#endif
=20
static void assign ( IRTemp dst, IRExpr* e )
{
@@ -903,6 +900,7 @@
break;
=20
case PPC32_SPR_CTR:
+ vassert(mask =3D=3D 0xFFFFFFFF); // Only ever need whole reg
assign( val, IRExpr_Get(OFFB_CTR, Ity_I32) );
break;
=20
@@ -1011,9 +1009,6 @@
/* Write masked src to the given reg */
static void putReg_masked ( PPC32SPR reg, IRExpr* src, UInt mask )
{
- IRTemp src_mskd =3D newTemp(Ity_I32);
- IRTemp reg_old =3D newTemp(Ity_I32);
-
vassert( reg < PPC32_SPR_MAX );
vassert( typeOfIRExpr(irbb->tyenv,src ) =3D=3D Ity_I32 );
=20
@@ -1036,10 +1031,10 @@
case PPC32_SPR_XER:
// Bits 7-28 are 'Reserved'. Ignoring writes these bits.
// (They may be written to, but reading them gives zero or undefin=
ed)
- assign( src_mskd, binop(Iop_And32, src, mkU32(mask & 0xE000007F)) =
);
- assign( reg_old, getReg_masked( PPC32_SPR_XER, (~mask & 0xE000007F=
) ) );
stmt( IRStmt_Put( OFFB_XER,
- binop(Iop_Or32, mkexpr(src_mskd), mkexpr(reg_old=
)) ));
+ binop(Iop_Or32,
+ binop(Iop_And32, src, mkU32(mask & 0xE000007F)),
+ getReg_masked( PPC32_SPR_XER, (~mask & 0xE000007F) =
))));
break;
=20
case PPC32_SPR_CR: {
@@ -1052,7 +1047,7 @@
binop(Iop_And32, src, mkU32(mask & 0xF0000000)),
getReg_masked( PPC32_SPR_CR, (~mask & 0xF0000000=
) ))));
}
- if (mask & 0xFFFFFFF) { // CR fields 0 t o6:
+ if (mask & 0x0FFFFFFF) { // CR fields 0 to 6:
stmt( IRStmt_Put( OFFB_CR0to6,
binop(Iop_Or32,
binop(Iop_And32, src, mkU32(mask & 0x0FFFFFFF)),
@@ -1099,6 +1094,7 @@
break;
=20
case PPC32_SPR_VRSAVE:
+ vassert(mask =3D=3D 0xFFFFFFFF); // Only ever need whole reg
stmt( IRStmt_Put( OFFB_VRSAVE, src ) );
break;
=20
@@ -1106,10 +1102,10 @@
//CAB: There are only 2 valid bits in VSCR - maybe split into two vars..=
.
=20
// All other bits are 'Reserved'. Ignoring writes to these bits.
- assign( src_mskd, binop(Iop_And32, src, mkU32(mask & 0x00010001)) =
);
- assign( reg_old, getReg_masked( PPC32_SPR_VSCR, (~mask & 0x0001000=
1) ) );
stmt( IRStmt_Put( OFFB_VSCR,
- binop(Iop_Or32, mkexpr(src_mskd), mkexpr(reg_old=
)) ));
+ binop(Iop_Or32,
+ binop(Iop_And32, src, mkU32(mask & 0x00010001)),
+ getReg_masked( PPC32_SPR_VSCR, (~mask & 0x00010001)=
))));
break;
}
=20
@@ -2685,7 +2681,10 @@
putReg_field( PPC32_SPR_CR, mkexpr(tmp), (7-crfD_addr) );
} else {
assign( crbA, getReg_bit( PPC32_SPR_CR, (31-crbA_addr) ) );
- assign( crbB, getReg_bit( PPC32_SPR_CR, (31-crbB_addr) ) );
+ if (crbA_addr =3D=3D crbB_addr)
+ assign( crbB, mkexpr(crbA) );
+ else
+ assign( crbB, getReg_bit( PPC32_SPR_CR, (31-crbB_addr) ) );
=20
switch (opc2) {
case 0x101: // crand (Cond Reg AND, PPC32 p372)
@@ -4450,11 +4449,18 @@
UInt opc2 =3D (theInstr >> 1) & 0x3FF; /* theInstr[1:10=
] */
UChar b0 =3D toUChar((theInstr >> 0) & 1); /* theInstr[0] =
*/
=20
+ IRTemp EA =3D newTemp(Ity_I32);
+ IRTemp EA_aligned =3D newTemp(Ity_I32);
+
if (opc1 !=3D 0x1F || b0 !=3D 0) {
vex_printf("dis_av_load(PPC32)(instr)\n");
return False;
}
=20
+ assign( EA, binop(Iop_Add32,
+ ((rA_addr =3D=3D 0) ? mkU32(0) : getIReg(rA_addr)),
+ getIReg(rB_addr) ));
+
switch (opc2) {
=20
case 0x006: // lvsl (Load Vector for Shift Left, AV p123)
@@ -4484,8 +4490,9 @@
=20
case 0x067: // lvx (Load Vector Indexed, AV p127)
DIP("lvx v%d,r%d,r%d\n", vD_addr, rA_addr, rB_addr);
- DIP(" =3D> not implemented\n");
- return False;
+ assign( EA_aligned, binop( Iop_And32, mkexpr(EA), mkU32(0xFFFFFFF0=
) ));
+ putVReg( vD_addr, loadBE(Ity_V128, mkexpr(EA_aligned)) );
+ break;
=20
case 0x167: // lvxl (Load Vector Indexed LRU, AV p128)
// XXX: lvxl gives explicit control over cache block replacement
Modified: trunk/priv/host-ppc32/isel.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/priv/host-ppc32/isel.c 2005-07-01 18:56:33 UTC (rev 1244)
+++ trunk/priv/host-ppc32/isel.c 2005-07-01 21:16:10 UTC (rev 1245)
@@ -2816,13 +2816,15 @@
return dst;
}
=20
-//.. if (e->tag =3D=3D Iex_LDle) {
-//.. HReg dst =3D newVRegV(env);
-//.. X86AMode* am =3D iselIntExpr_AMode(env, e->Iex.LDle.addr);
-//.. addInstr(env, X86Instr_SseLdSt( True/*load*/, dst, am ));
-//.. return dst;
-//.. }
-//..=20
+ if (e->tag =3D=3D Iex_Load) {
+ PPC32AMode* am_addr;
+ HReg v_dst =3D newVRegV(env);
+ vassert(e->Iex.Load.ty =3D=3D Ity_V128);
+ am_addr =3D iselIntExpr_AMode(env, e->Iex.Load.addr);
+ addInstr(env, PPC32Instr_AvLdSt( True/*load*/, 16, v_dst, am_addr)=
);
+ return v_dst;
+ }
+
//.. if (e->tag =3D=3D Iex_Const) {
//.. HReg dst =3D newVRegV(env);
//.. vassert(e->Iex.Const.con->tag =3D=3D Ico_V128);
@@ -3274,7 +3276,7 @@
ppIRStmt(stmt);
vex_printf("\n");
}
- =20
+
switch (stmt->tag) {
=20
/* --------- STORE --------- */
@@ -3339,12 +3341,12 @@
addInstr(env, PPC32Instr_Store( 4, am_addr4, rLo ));
return;
}
-//.. if (ty =3D=3D Ity_V128) {
-//.. HReg vec =3D iselVecExpr(env, stmt->Ist.Put.data);
-//.. X86AMode* am =3D X86AMode_IR(stmt->Ist.Put.offset, hregX8=
6_EBP());
-//.. addInstr(env, X86Instr_SseLdSt(False/*store*/, vec, am));
-//.. return;
-//.. }
+ if (ty =3D=3D Ity_V128) {
+ HReg v_src =3D iselVecExpr(env, stmt->Ist.Put.data);
+ PPC32AMode* am_addr =3D PPC32AMode_IR(stmt->Ist.Put.offset, Gu=
estStatePtr);
+ addInstr(env, PPC32Instr_AvLdSt(False/*store*/, 16, v_src, am_a=
ddr));
+ return;
+ }
//.. if (ty =3D=3D Ity_F32) {
//.. HReg f32 =3D iselFltExpr(env, stmt->Ist.Put.data);
//.. X86AMode* am =3D X86AMode_IR(stmt->Ist.Put.offset, hregX8=
6_EBP());
|
|
From: Nicholas N. <nj...@cs...> - 2005-07-01 21:01:44
|
On Thu, 30 Jun 2005, Josef Weidendorfer wrote: > I thought the idea was to statically link the tool with valgrind at build > time. What else would a RPM have to provide from core valgrind other than the > built executable? In this sense, there is no own copy in the RPM. > Am I missing something here? No, I was confused. >> -- there's no danger of someone having a new Valgrind which >> doesn't match an old Callgrind. > > Given that the tool API version checking is working correctly -- which AFAIK > always was the case for stable releases -- this was prevented successfully. Sure, it never went wrong, but it could have. With the static linking proposal there's nothing to go wrong. >> We also wouldn't have to worry about having a version number for the >> core/tool interface any more, which is nice -- one fewer thing to get >> wrong. > > Why? You do not need to do any check at runtime, but a check for the tool API > version at build time is still better than relying an exact valgrind release > numbers. The API still would exist - and major versions still make sense. I wasn't thinking in terms of exact release numbers. I was just thinking that if the tool and core compiled together, they matched ok. >> It would be more consistent to build every tool into a separate >> executable, so that internal tools and external tools can be treated the >> same way. > > I do not understand this. What is the difference between one executable for > multiple tools and a separate for each? You could have one executable and > hardlinks to this one, and run the tool depending on argv[0]. If the tools that come with the Valgrind distribution are all in one executable, but Callgrind comes in a different executable, there is a lack of consistency. >> It would make sense to have a minimal "stage1" which just looks for the >> --tool option and invokes the appropriate executable. This could even >> work for external tools if they were installed in the same place. > > The issue here is that you again introduce some kind of dependency of a > "standalone" callgrind installation to an installed valgrind: the minimal > stage1. So why such a minimal stage1 at all? If we preserve the --tool option and want to use it for both internal and external tools, a minimal stage1 seems unavoidable. Overall, I think the static linking idea is sound. There are a couple of minor details to resolve, such as how exactly the chosen tool should get invoked (via --tool? via some kind of symlink or hardlink?) but they are not a big problem. N |
|
From: <sv...@va...> - 2005-07-01 18:56:36
|
Author: cerion
Date: 2005-07-01 19:56:33 +0100 (Fri, 01 Jul 2005)
New Revision: 1244
Log:
Cleaned up read/write register functions, wrt XER, and fixed a bug for wr=
ite to VSCR.
Modified:
trunk/priv/guest-ppc32/toIR.c
Modified: trunk/priv/guest-ppc32/toIR.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/priv/guest-ppc32/toIR.c 2005-07-01 18:44:52 UTC (rev 1243)
+++ trunk/priv/guest-ppc32/toIR.c 2005-07-01 18:56:33 UTC (rev 1244)
@@ -907,9 +907,9 @@
break;
=20
case PPC32_SPR_XER:
- vassert((mask & 0xF000007F) =3D=3D mask); // Only valid bits of xe=
r
- // actually, bit28 not valid, but sometimes asked for anyway - alw=
ays 0:
- mask =3D mask & ~(1<<28);
+ // Bits 7-28 are 'Reserved'. Always return zero for these bits.
+ // (They may be written to, but reading them gives zero or undefin=
ed)
+ mask =3D mask & 0xE000007F;
assign( val, IRExpr_Get(OFFB_XER, Ity_I32) );
break;
=20
@@ -955,7 +955,6 @@
mask =3D mask & 0x00010001;
assign( val, IRExpr_Get(OFFB_VSCR, Ity_I32) );
break;
- break;
=20
default:
vpanic("getReg(ppc32)");
@@ -972,12 +971,7 @@
static IRExpr* getReg ( PPC32SPR reg )
{
vassert( reg < PPC32_SPR_MAX );
- switch (reg) {
- case PPC32_SPR_XER:
- return getReg_masked( reg, 0xE000007F ); // Only valid bits of xer
- default:
- return getReg_masked( reg, 0xFFFFFFFF );
- }
+ return getReg_masked( reg, 0xFFFFFFFF );
}
=20
/* Get a right-shifted nibble from given reg[field_idx]
@@ -1040,12 +1034,10 @@
break;
=20
case PPC32_SPR_XER:
- vassert((mask & 0xF000007F) =3D=3D mask); // Only valid bits of xe=
r
- // actually, bit28 not valid, but sometimes asked for anyway - alw=
ays 0:
- mask =3D mask & ~(1<<28);
- assign( src_mskd, binop(Iop_And32, src, mkU32(mask)) );
+ // Bits 7-28 are 'Reserved'. Ignoring writes these bits.
+ // (They may be written to, but reading them gives zero or undefin=
ed)
+ assign( src_mskd, binop(Iop_And32, src, mkU32(mask & 0xE000007F)) =
);
assign( reg_old, getReg_masked( PPC32_SPR_XER, (~mask & 0xE000007F=
) ) );
-
stmt( IRStmt_Put( OFFB_XER,
binop(Iop_Or32, mkexpr(src_mskd), mkexpr(reg_old=
)) ));
break;
@@ -1100,6 +1092,10 @@
)
);
}
+
+ /*
+ Ignore all other writes
+ */
break;
=20
case PPC32_SPR_VRSAVE:
@@ -1111,15 +1107,10 @@
=20
// All other bits are 'Reserved'. Ignoring writes to these bits.
assign( src_mskd, binop(Iop_And32, src, mkU32(mask & 0x00010001)) =
);
- assign( reg_old, getReg_masked( PPC32_SPR_XER, (~mask & 0x00010001=
) ) );
+ assign( reg_old, getReg_masked( PPC32_SPR_VSCR, (~mask & 0x0001000=
1) ) );
stmt( IRStmt_Put( OFFB_VSCR,
binop(Iop_Or32, mkexpr(src_mskd), mkexpr(reg_old=
)) ));
break;
-
- /*
- Ignore all other writes
- */
- break;
}
=20
default:
@@ -1132,15 +1123,7 @@
{
vassert( typeOfIRExpr(irbb->tyenv,src ) =3D=3D Ity_I32 );
vassert( reg < PPC32_SPR_MAX );
-
- switch (reg) {
- case PPC32_SPR_XER:
- putReg_masked( reg, src, 0xE000007F ); // Only valid bits of xer
- break;
- default:
- putReg_masked( reg, src, 0xFFFFFFFF );
- break;
- }
+ putReg_masked( reg, src, 0xFFFFFFFF );
}
=20
/* Write least-significant nibble of src to reg[field_idx] */
|
|
From: <sv...@va...> - 2005-07-01 18:44:57
|
Author: cerion
Date: 2005-07-01 19:44:52 +0100 (Fri, 01 Jul 2005)
New Revision: 1243
Log:
Fixed a couple of bugs relating to condition register reading/writing, an=
d conditional register logic
Modified:
trunk/priv/guest-ppc32/toIR.c
Modified: trunk/priv/guest-ppc32/toIR.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/priv/guest-ppc32/toIR.c 2005-07-01 18:41:01 UTC (rev 1242)
+++ trunk/priv/guest-ppc32/toIR.c 2005-07-01 18:44:52 UTC (rev 1243)
@@ -838,7 +838,7 @@
xer_so =3D getReg_bit( PPC32_SPR_XER, SHIFT_XER_SO );
=20
// =3D> Delaying calculating result until needed...
- stmt( IRStmt_Put( OFFB_CC_OP, mkU32(0) ));
+ stmt( IRStmt_Put( OFFB_CC_OP, mkU32(0)/*calc from DEP1,DEP2*/ ));
stmt( IRStmt_Put( OFFB_CC_DEP1, result ));
stmt( IRStmt_Put( OFFB_CC_DEP2, xer_so ));
}
@@ -914,13 +914,16 @@
break;
=20
case PPC32_SPR_CR:
- if (mask & 0xF0000000) {
+ if ((mask & 0xF0000000) =3D=3D mask) { // CR7 only
// Call helper function to calculate latest CR7 from thunk:
- // ... and OR it with CR0to6
+ assign( val, mk_ppc32g_calculate_cr7() );
+ }
+ else if ((mask & 0x0FFFFFFF) =3D=3D mask) { // CR0to6 only
+ assign( val, IRExpr_Get(OFFB_CR0to6, Ity_I32) );
+ }
+ else { // Both
assign( val, binop(Iop_Or32, mk_ppc32g_calculate_cr7(),
IRExpr_Get(OFFB_CR0to6, Ity_I32)) );
- } else {
- assign( val, IRExpr_Get(OFFB_CR0to6, Ity_I32) );
}
break;
=20
@@ -1048,21 +1051,21 @@
break;
=20
case PPC32_SPR_CR: {
- if (mask & 0xF0000000) { // CR 7:
- /* Write exactly the given flags to field CR7
- Set the flags thunk OP=3D1, DEP1=3Dflags, DEP2=3D0(unused). =
*/
-
- // =3D> Delaying calculation until needed...
- stmt( IRStmt_Put( OFFB_CC_OP, mkU32(1) ) );
- stmt( IRStmt_Put( OFFB_CC_DEP1, src ) ); // masked in hel=
per.
- stmt( IRStmt_Put( OFFB_CC_DEP2, mkU32(0) ) );
+ if (mask & 0xF0000000) { // CR field 7:
+ /* Set the CR7 flags thunk */
+ stmt( IRStmt_Put( OFFB_CC_OP, mkU32(1)/*set imm value DEP1*/ =
) );
+ stmt( IRStmt_Put( OFFB_CC_DEP2, mkU32(0)/*=3Dunused*/ ) );
+ stmt( IRStmt_Put( OFFB_CC_DEP1,
+ binop(Iop_Or32,
+ binop(Iop_And32, src, mkU32(mask & 0xF0000000)),
+ getReg_masked( PPC32_SPR_CR, (~mask & 0xF0000000=
) ))));
}
- // CR 0 to 6:
- assign( src_mskd, binop(Iop_And32, src, mkU32(mask & 0x0FFFFFFF)) =
);
- assign( reg_old, getReg_masked( PPC32_SPR_CR, (~mask & 0x0FFFFFFF)=
) );
-
- stmt( IRStmt_Put( OFFB_CR0to6,
- binop(Iop_Or32, mkexpr(src_mskd), mkexpr(reg_old=
)) ));
+ if (mask & 0xFFFFFFF) { // CR fields 0 t o6:
+ stmt( IRStmt_Put( OFFB_CR0to6,
+ binop(Iop_Or32,
+ binop(Iop_And32, src, mkU32(mask & 0x0FFFFFFF)),
+ getReg_masked( PPC32_SPR_CR, (~mask & 0x0FFFFFFF=
) ))));
+ }
break;
}
=20
@@ -1097,6 +1100,7 @@
)
);
}
+ break;
=20
case PPC32_SPR_VRSAVE:
stmt( IRStmt_Put( OFFB_VRSAVE, src ) );
@@ -2744,7 +2748,7 @@
return False;
}
=20
- putReg_masked( PPC32_SPR_CR, mkexpr(crbD), 1<<(31-crbD_addr) );
+ putReg_bit( PPC32_SPR_CR, mkexpr(crbD), (31-crbD_addr) );
}
return True;
}
|
|
From: <sv...@va...> - 2005-07-01 18:41:51
|
Author: cerion
Date: 2005-07-01 19:41:01 +0100 (Fri, 01 Jul 2005)
New Revision: 1242
Log:
comment-only change: renumber register offsets correctly
Modified:
trunk/pub/libvex_guest_ppc32.h
Modified: trunk/pub/libvex_guest_ppc32.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/pub/libvex_guest_ppc32.h 2005-07-01 10:51:24 UTC (rev 1241)
+++ trunk/pub/libvex_guest_ppc32.h 2005-07-01 18:41:01 UTC (rev 1242)
@@ -115,68 +115,68 @@
/* 376 */ ULong guest_FPR31;
=20
// Vector Registers
- /* 392 */ U128 guest_VR0;
- /* 408 */ U128 guest_VR1;
- /* 424 */ U128 guest_VR2;
- /* 440 */ U128 guest_VR3;
- /* 456 */ U128 guest_VR4;
- /* 472 */ U128 guest_VR5;
- /* 488 */ U128 guest_VR6;
- /* 504 */ U128 guest_VR7;
- /* 520 */ U128 guest_VR8;
- /* 536 */ U128 guest_VR9;
- /* 552 */ U128 guest_VR10;
- /* 568 */ U128 guest_VR11;
- /* 584 */ U128 guest_VR12;
- /* 600 */ U128 guest_VR13;
- /* 616 */ U128 guest_VR14;
- /* 632 */ U128 guest_VR15;
- /* 648 */ U128 guest_VR16;
- /* 664 */ U128 guest_VR17;
- /* 680 */ U128 guest_VR18;
- /* 696 */ U128 guest_VR19;
- /* 712 */ U128 guest_VR20;
- /* 728 */ U128 guest_VR21;
- /* 744 */ U128 guest_VR22;
- /* 760 */ U128 guest_VR23;
- /* 776 */ U128 guest_VR24;
- /* 792 */ U128 guest_VR25;
- /* 808 */ U128 guest_VR26;
- /* 824 */ U128 guest_VR27;
- /* 840 */ U128 guest_VR28;
- /* 856 */ U128 guest_VR29;
- /* 872 */ U128 guest_VR30;
- /* 888 */ U128 guest_VR31;
+ /* 384 */ U128 guest_VR0;
+ /* 400 */ U128 guest_VR1;
+ /* 416 */ U128 guest_VR2;
+ /* 432 */ U128 guest_VR3;
+ /* 448 */ U128 guest_VR4;
+ /* 464 */ U128 guest_VR5;
+ /* 480 */ U128 guest_VR6;
+ /* 496 */ U128 guest_VR7;
+ /* 512 */ U128 guest_VR8;
+ /* 528 */ U128 guest_VR9;
+ /* 544 */ U128 guest_VR10;
+ /* 560 */ U128 guest_VR11;
+ /* 576 */ U128 guest_VR12;
+ /* 592 */ U128 guest_VR13;
+ /* 608 */ U128 guest_VR14;
+ /* 624 */ U128 guest_VR15;
+ /* 640 */ U128 guest_VR16;
+ /* 656 */ U128 guest_VR17;
+ /* 672 */ U128 guest_VR18;
+ /* 688 */ U128 guest_VR19;
+ /* 704 */ U128 guest_VR20;
+ /* 720 */ U128 guest_VR21;
+ /* 736 */ U128 guest_VR22;
+ /* 752 */ U128 guest_VR23;
+ /* 768 */ U128 guest_VR24;
+ /* 784 */ U128 guest_VR25;
+ /* 800 */ U128 guest_VR26;
+ /* 816 */ U128 guest_VR27;
+ /* 832 */ U128 guest_VR28;
+ /* 848 */ U128 guest_VR29;
+ /* 864 */ U128 guest_VR30;
+ /* 880 */ U128 guest_VR31;
=20
- /* 904 */ UInt guest_CIA; // IP (no arch visible register)
- /* 908 */ UInt guest_LR; // Link Register
- /* 912 */ UInt guest_CTR; // Count Register
+ /* 896 */ UInt guest_CIA; // IP (no arch visible register)
+ /* 900 */ UInt guest_LR; // Link Register
+ /* 904 */ UInt guest_CTR; // Count Register
=20
/* CR[7]: thunk used to calculate these flags. */
- /* 916 */ UInt guest_CC_OP;
- /* 920 */ UInt guest_CC_DEP1;
- /* 924 */ UInt guest_CC_DEP2;
+ /* 908 */ UInt guest_CC_OP;
+ /* 912 */ UInt guest_CC_DEP1;
+ /* 916 */ UInt guest_CC_DEP2;
=20
// CR[0:6]: Used for 'compare' ops
- /* 928 */ UInt guest_CR0to6;
+ /* 920 */ UInt guest_CR0to6;
=20
/* FP Status & Control Register fields */
- /* 932 */ UInt guest_FPROUND; // FP Rounding Mode
+ /* 924 */ UInt guest_FPROUND; // FP Rounding Mode
=20
- /* 936 */ UInt guest_XER; // XER Register
+ /* 928 */ UInt guest_XER; // XER Register
=20
/* Vector Save/Restore Register */
- /* 940 */ UInt guest_VRSAVE;
+ /* 932 */ UInt guest_VRSAVE;
=20
/* Vector Status and Control Register */
- /* 944 */ UInt guest_VSCR;
+ /* 936 */ UInt guest_VSCR;
=20
/* Emulation warnings */
- /* 948 */ UInt guest_EMWARN;
+ /* 940 */ UInt guest_EMWARN;
=20
/* For icbi: record start and length of area to invalidate */
- /* 952 */ UInt guest_TISTART;
- /* 956 */ UInt guest_TILEN;
+ /* 944 */ UInt guest_TISTART;
+ /* 948 */ UInt guest_TILEN;
=20
/* Padding to make it have an 8-aligned size */
/* UInt padding; */
|
|
From: Jeroen N. W. <jn...@xs...> - 2005-07-01 17:47:20
|
Management summary: The purpose of valgrind is to detect problems and errors; although reporting the problems and errors found is the purpose behind this purpose, it is at the same time a necessary evil, on which scarce resources (read programmer man hours) should not be wasted. The introduction in valgrind of the option to produce output in xml also is a proper time to prevent that the burden of supporting multiple platforms is multiplied by the burden of maintaining multiple output modes. In other words: content and presentation must be separated, with valgrind and its tools (for instance memcheck) providing the content, and m_ui performing the presentation. This proof of concept demonstrates that, at least in principle, all code necessary to produce valgrind's output (to perform the presentation) can be generated from an xml file. In this proof of concept, plain text and xml outputs are produced. As an additional benefit, the reference documentation of the output can also be generated. (Not completely supported in this proof of concept.) One limitation, or rather a consequence of the separation of content and presentation, is that the source files generated and the xml files produced are not created for human readability. Tools can be found elsewhere to transform these files into a form suitable for flesh and blood. Small print and disclaimers: This code and documentation generation framework, named MetaDox, is Copyright 2005 Jeroen N. Witmond. I intend to publish this as 'open source', but I have not yet decided on the license to use. Any advice on this subject is welcome. Until then, copies of this work may be used for review and educational purposes only. As this is my first serious application of xml and xslt, corrections and suggestions for improvement on this subject will be especially welcome. This work comes to you without warranty of any kind. Download: When you agree with the restrictions in the small print above, you can download a copy (approx. 80KB) of this work from http://metadox.xs4all.nl/valgrind-xml/m_ui-0.0.1.tar.gz See the bottom of file README.TXT in the tarball for the complete list of the content of file m_ui-0.0.1.tar.gz, grouped by category. (Note that, contrary to its name, the tarball contains both the generator framework MetaDox and the user interface module m_ui's source generated by the framework.) File README.TXT (approx. 15 KB) can be accessed separately at http://metadox.xs4all.nl/valgrind-xml/README.TXT I look forward to your reactions. Jeroen. |
|
From: Tom H. <to...@co...> - 2005-07-01 14:31:11
|
In message <20050701091838.5d537186@godzilla>
Rich Coe <Ric...@me...> wrote:
> Well, in the snippet I posted, ld was complaining about libvex.a, which
> is not being built with -fPIC.
It is if you set EXTRA_CFLAGS when you build it, which is what my
overnight build scripts do. Until building vex is integrated into
the valgrind build process you need to make sure you set EXTRA_CFLAGS
to something that is compatible with the way you have configured
valgrind.
> In general, I've found a lib.a obj is built without -fPIC is built into
> a shared obj, ld complains that the .a hasn't been built with -fPIC.
It isn't built into a shared object though, it is built into a
position independent executable (assuming valgrind was configured
to use PIE mode) which means it needs -fpie although -fpic/-fPIC
will also work but may be more expensive.
Tom
--
Tom Hughes (to...@co...)
http://www.compton.nu/
|
|
From: Rich C. <Ric...@me...> - 2005-07-01 14:21:09
|
Well, in the snippet I posted, ld was complaining about libvex.a, which is not being built with -fPIC. In general, I've found a lib.a obj is built without -fPIC is built into a shared obj, ld complains that the .a hasn't been built with -fPIC. On Fri, 01 Jul 2005 14:48:06 +0100 Tom Hughes <to...@co...> wrote: > In message <20050701083045.23bd87d6@godzilla> > Rich Coe <Ric...@me...> wrote: > > > When I build objs for shared objects on x86_64, I have to include > > -fPIC. How is it that the nightly builds on x86_64 pass without this flag ? > > Who said they don't have it? They do... Well actually they the -fpie > flag instead which is that is actually needed. > > To be honest you would be better configuring with --disable-pie > instead as the resulting valgrind will be much faster. It will have > a restricted address space however. > > Tom -- Rich Coe ric...@me... General Electric Healthcare Technologies |
|
From: Tom H. <to...@co...> - 2005-07-01 13:48:13
|
In message <20050701083045.23bd87d6@godzilla>
Rich Coe <Ric...@me...> wrote:
> When I build objs for shared objects on x86_64, I have to include
> -fPIC. How is it that the nightly builds on x86_64 pass without this flag ?
Who said they don't have it? They do... Well actually they the -fpie
flag instead which is that is actually needed.
To be honest you would be better configuring with --disable-pie
instead as the resulting valgrind will be much faster. It will have
a restricted address space however.
Tom
--
Tom Hughes (to...@co...)
http://www.compton.nu/
|
|
From: Rich C. <Ric...@me...> - 2005-07-01 13:32:46
|
When I build objs for shared objects on x86_64, I have to include -fPIC. How is it that the nightly builds on x86_64 pass without this flag ? Thx. gcc -fpie -m64 -fomit-frame-pointer -Wmissing-prototypes -Winline -Wall -Wshadow -O -g -Wno-long-long -o stage2 -Wl,--export-dynamic -g -Wl,-version-script ./valgrind.vs -Wl,--whole-archive m_replacemalloc/libreplacemalloc_core.a -Wl,--no-whole-archive -pie m_cpuid.o m_debugger.o m_debuglog.o m_errormgr.o m_execontext.o m_hashtable.o m_libcbase.o m_libcassert.o m_libcfile.o m_libcmman.o m_libcprint.o m_libcproc.o m_libcsignal.o m_machine.o m_main.o m_mallocfree.o m_options.o m_profile.o m_pthreadmodel.o m_redir.o m_signals.o m_skiplist.o m_stacks.o m_stacktrace.o m_syscall.o m_threadmodel.o m_threadstate.o m_tooliface.o m_trampoline.o m_translate.o m_transtab.o m_ume.o m_debuginfo/libdebuginfo.a m_demangle/libdemangle.a m_scheduler/libscheduler.a m_dispatch/libdispatch.a m_aspacemgr/libaspacemgr.a m_sigframe/libsigframe.a m_syswrap/libsyswrap.a /data/rhcoe/src/vex/libvex.a -ldl /usr/bin/ld: /data/rhcoe/src/vex/libvex.a(irdefs.o): relocation R_X86_64_32S can not be used when making a shared object; recompile with -fPIC /data/rhcoe/src/vex/libvex.a: could not read symbols: Bad value collect2: ld returned 1 exit status -- Rich Coe ric...@me... General Electric Healthcare Technologies |
|
From: Tom H. <to...@co...> - 2005-07-01 13:00:46
|
In message <200...@ac...>
Julian Seward <js...@ac...> wrote:
> So I changed memcheck/tests/filter_xml to be this
>
> #! /bin/sh
>
> ./filter_stderr |
> sed "s/<tid>[0-9]*<\/tid>/<tid>...<\/tid>/" |
> sed "s/<pid>[0-9]*<\/pid>/<pid>...<\/pid>/" |
> sed "s/<ppid>[0-9]*<\/ppid>/<ppid>...<\/ppid>/" |
> sed "s/<obj>.*<\/obj>/<obj>...<\/obj>/" |
> sed "s/<line>.*<\/line>/<line>...<\/line>/" |
> sed "s/<dir>.*<\/dir>/<dir>...<\/dir>/" |
> perl -e "s/<suppcounts>.*<\/suppcounts>/<suppcounts>...<\/suppcounts>/s"
>
> but now nothing at all comes out :-(
Two problems - one is that you need -p to force perl to loop over
the input lines and apply your expression to each one and then print
the results.
The other is that as somebody else said you need to change the input
record separator so that it reads in the whole file as a single line
which you can do with the -0 switch. So in total you want:
perl -0 -p -e "s/<suppcounts>.*<\/suppcounts>/<suppcounts>...<\/suppcounts>/s"
Tom
--
Tom Hughes (to...@co...)
http://www.compton.nu/
|
|
From: Nicholas N. <nj...@cs...> - 2005-07-01 12:58:16
|
On Fri, 1 Jul 2005, as...@qu... wrote:
>> From the looks of it this would do it for you...
>
> perl -e "$/=undef; while (<>) { s/<suppcounts>.*<\/suppcounts>/<suppcounts>...<\/suppcounts>/s ;print $_}"
That works for me when I pipe input in, ie:
cat foo | perl -e "..."
but not when I redirect from file:
perl -e "..." < foo
but it should be good enough for your purposes, Julian.
N
|
|
From: <as...@qu...> - 2005-07-01 12:35:28
|
On Fri, 2005-07-01 at 12:28 +0100, Julian Seward wrote:
> > Modifiers on perl re's go after the final / of the replace operator
> > like this:
> >
> > s/<suppcounts>.*<\/suppcounts>/<suppcounts>...<\/suppcounts>/s
>=20
> Hmm, ok, so I need to use perl?
>=20
> So I changed memcheck/tests/filter_xml to be this
>=20
> #! /bin/sh
>=20
> ./filter_stderr |
> sed "s/<tid>[0-9]*<\/tid>/<tid>...<\/tid>/" |
> sed "s/<pid>[0-9]*<\/pid>/<pid>...<\/pid>/" |
> sed "s/<ppid>[0-9]*<\/ppid>/<ppid>...<\/ppid>/" |
> sed "s/<obj>.*<\/obj>/<obj>...<\/obj>/" |
> sed "s/<line>.*<\/line>/<line>...<\/line>/" |
> sed "s/<dir>.*<\/dir>/<dir>...<\/dir>/" |
> perl -e =
"s/<suppcounts>.*<\/suppcounts>/<suppcounts>...<\/suppcounts>/s"
>=20
> but now nothing at all comes out :-(
You can re-define the value of "newline" in perl via the variable "$/" a
couple of my scripts redefine this to \n\n although I believe you can
also set it to undef to allow multi-line matches.
>From the looks of it this would do it for you...
perl -e "$/=3Dundef; while (<>) { =
s/<suppcounts>.*<\/suppcounts>/<suppcounts>...<\/suppcounts>/s ;print =
$_}"
Ashley,
|
|
From: Julian S. <js...@ac...> - 2005-07-01 11:28:26
|
> Modifiers on perl re's go after the final / of the replace operator > like this: > > s/<suppcounts>.*<\/suppcounts>/<suppcounts>...<\/suppcounts>/s Hmm, ok, so I need to use perl? So I changed memcheck/tests/filter_xml to be this #! /bin/sh ./filter_stderr | sed "s/<tid>[0-9]*<\/tid>/<tid>...<\/tid>/" | sed "s/<pid>[0-9]*<\/pid>/<pid>...<\/pid>/" | sed "s/<ppid>[0-9]*<\/ppid>/<ppid>...<\/ppid>/" | sed "s/<obj>.*<\/obj>/<obj>...<\/obj>/" | sed "s/<line>.*<\/line>/<line>...<\/line>/" | sed "s/<dir>.*<\/dir>/<dir>...<\/dir>/" | perl -e "s/<suppcounts>.*<\/suppcounts>/<suppcounts>...<\/suppcounts>/s" but now nothing at all comes out :-( J |
|
From: <sv...@va...> - 2005-07-01 10:51:27
|
Author: sewardj
Date: 2005-07-01 11:51:24 +0100 (Fri, 01 Jul 2005)
New Revision: 1241
Log:
Yet Another Folding Rule (YAFR) (tm)
Modified:
trunk/priv/ir/iropt.c
Modified: trunk/priv/ir/iropt.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/priv/ir/iropt.c 2005-07-01 10:50:50 UTC (rev 1240)
+++ trunk/priv/ir/iropt.c 2005-07-01 10:51:24 UTC (rev 1241)
@@ -1360,6 +1360,13 @@
e2 =3D e->Iex.Binop.arg1;
} else
=20
+ /* And32(x,0) =3D=3D> 0 */
+ if (e->Iex.Binop.op =3D=3D Iop_And32
+ && e->Iex.Binop.arg2->tag =3D=3D Iex_Const
+ && e->Iex.Binop.arg2->Iex.Const.con->Ico.U32 =3D=3D 0) {
+ e2 =3D IRExpr_Const(IRConst_U32(0));
+ } else
+
/* Or32(0,x) =3D=3D> x */
if (e->Iex.Binop.op =3D=3D Iop_Or32
&& e->Iex.Binop.arg1->tag =3D=3D Iex_Const
|
|
From: <sv...@va...> - 2005-07-01 10:50:55
|
Author: sewardj
Date: 2005-07-01 11:50:50 +0100 (Fri, 01 Jul 2005)
New Revision: 1240
Log:
Track recent API change (introduction of VexArchInfo).
Modified:
trunk/switchback/switchback.c
Modified: trunk/switchback/switchback.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/switchback/switchback.c 2005-06-30 23:31:27 UTC (rev 1239)
+++ trunk/switchback/switchback.c 2005-07-01 10:50:50 UTC (rev 1240)
@@ -8,6 +8,11 @@
=20
Test file may not reference any other symbols.
=20
+NOTE: POWERPC: it is critical, when using this on ppc, to set
+CacheLineSize to the right value. Values we currently know of:
+
+ imac (G3): 32
+ G5 (ppc970): 128
*/
=20
#include <stdio.h>
@@ -35,18 +40,21 @@
# define VexArch VexArchX86
# define VexSubArch VexSubArchX86_sse1
# define GuestPC guest_EIP
+# define CacheLineSize 0/*irrelevant*/
#elif defined(__x86_64__)
# define VexGuestState VexGuestAMD64State
# define LibVEX_Guest_initialise LibVEX_GuestAMD64_initialise
# define VexArch VexArchAMD64
# define VexSubArch VexSubArch_NONE
# define GuestPC guest_RIP
+# define CacheLineSize 0/*irrelevant*/
#elif defined(__powerpc__)
# define VexGuestState VexGuestPPC32State
# define LibVEX_Guest_initialise LibVEX_GuestPPC32_initialise
# define VexArch VexArchPPC32
# define VexSubArch VexSubArchPPC32_noAV
# define GuestPC guest_CIA
+# define CacheLineSize 128
#else
# error "Unknown arch"
#endif
@@ -187,7 +195,7 @@
unsigned long startaddr =3D (unsigned long) ptr;
unsigned long endaddr =3D startaddr + nbytes;
unsigned long addr;
- unsigned long cls =3D 16; //VG_(cache_line_size);
+ unsigned long cls =3D CacheLineSize;
=20
startaddr &=3D ~(cls - 1);
for (addr =3D startaddr; addr < endaddr; addr +=3D cls)
@@ -529,6 +537,7 @@
void make_translation ( Addr64 guest_addr, Bool verbose )
{
VexTranslateResult tres;
+ VexArchInfo vai;
Int trans_used, i, ws_needed;
=20
if (trans_table_used >=3D N_TRANS_TABLE
@@ -542,10 +551,15 @@
assert(trans_table_used < N_TRANS_TABLE);
if (0)
printf("make translation %p\n", ULong_to_Ptr(guest_addr));
+
+ LibVEX_default_VexArchInfo(&vai);
+ vai.subarch =3D VexSubArch;
+ vai.ppc32_cache_line_szB =3D CacheLineSize;
+
tres
=3D LibVEX_Translate (=20
- VexArch, VexSubArch,
- VexArch, VexSubArch,
+ VexArch, &vai,
+ VexArch, &vai,
ULong_to_Ptr(guest_addr), guest_addr,
chase_into_not_ok,
&trans_table[trans_table_used],
|
|
From: Tom H. <to...@co...> - 2005-07-01 09:45:29
|
In message <200...@ac...>
Julian Seward <js...@ac...> wrote:
> I tried this
>
> sed "s/<suppcounts>.*<\/suppcounts>/<suppcounts>...<\/suppcounts>/"
>
> but it doesn't work, I think because .* doesn't match newlines.
It's not that so much as the fact that sed is basically line
orientated, so the commands are applied to each line in turn. You
probably could write a more complicated sed script that appended
lines to the pattern space and then applied s to the whole pattern
space but it would be hard work and my sed isn't that good.
> 'man perlre' speaks of a 's' modifier which sounds like just the thing:
>
> s Treat string as single line. That is, change "." to match any
> character whatsoever, even a newline, which normally it would
> not match.
>
> It's not obvious [to me :-] how to use this, though. I tried patterns
> like
>
> <suppcounts>/s.*<\/suppcounts>
> <suppcounts>\s.*<\/suppcounts>
>
> but nothing works.
Modifiers on perl re's go after the final / of the replace operator
like this:
s/<suppcounts>.*<\/suppcounts>/<suppcounts>...<\/suppcounts>/s
You can put at least some of them inline with (?s:pattern) but as you
want to apply it to the whole pattern there is no point.
Tom
--
Tom Hughes (to...@co...)
http://www.compton.nu/
|
|
From: Julian S. <js...@ac...> - 2005-07-01 09:33:32
|
I have a piece of text
<suppcounts>
<pair> <count>18</count> <name>Ugly strchr error
in /lib/ld-2.3.3.so</name> </pair>
</suppcounts>
and I want to use sed to zap the entire contents between the <suppcounts>
tags, giving:
<suppcounts>...</suppcounts>
I tried this
sed "s/<suppcounts>.*<\/suppcounts>/<suppcounts>...<\/suppcounts>/"
but it doesn't work, I think because .* doesn't match newlines.
'man perlre' speaks of a 's' modifier which sounds like just the thing:
s Treat string as single line. That is, change "." to match any
character whatsoever, even a newline, which normally it would
not match.
It's not obvious [to me :-] how to use this, though. I tried patterns
like
<suppcounts>/s.*<\/suppcounts>
<suppcounts>\s.*<\/suppcounts>
but nothing works.
Anybody know a suitable magic incantation that will do it?
J
|
|
From: <sv...@va...> - 2005-07-01 08:39:41
|
Author: sewardj
Date: 2005-07-01 09:39:38 +0100 (Fri, 01 Jul 2005)
New Revision: 4074
Log:
Reinstate wrappers for epoll_{create,wait,ctl}.
Modified:
trunk/coregrind/m_syswrap/syswrap-amd64-linux.c
Modified: trunk/coregrind/m_syswrap/syswrap-amd64-linux.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_syswrap/syswrap-amd64-linux.c 2005-07-01 04:15:36 U=
TC (rev 4073)
+++ trunk/coregrind/m_syswrap/syswrap-amd64-linux.c 2005-07-01 08:39:38 U=
TC (rev 4074)
@@ -1325,7 +1325,7 @@
//zz LINXY(__NR_io_cancel, sys_io_cancel), // 210=20
// (__NR_get_thread_area, sys_ni_syscall), // 211=20
// (__NR_lookup_dcookie, sys_lookup_dcookie), // 212=20
-//zz LINXY(__NR_epoll_create, sys_epoll_create), // 213=20
+ LINXY(__NR_epoll_create, sys_epoll_create), // 213=20
// (__NR_epoll_ctl_old, sys_ni_syscall), // 214=20
=20
// (__NR_epoll_wait_old, sys_ni_syscall), // 215=20
@@ -1348,8 +1348,8 @@
=20
// (__NR_clock_nanosleep, sys_clock_nanosleep),// 230=20
LINX_(__NR_exit_group, sys_exit_group), // 231=20
-//zz LINXY(__NR_epoll_wait, sys_epoll_wait), // 232=20
-//zz LINX_(__NR_epoll_ctl, sys_epoll_ctl), // 233=20
+ LINXY(__NR_epoll_wait, sys_epoll_wait), // 232=20
+ LINX_(__NR_epoll_ctl, sys_epoll_ctl), // 233=20
LINXY(__NR_tgkill, sys_tgkill), // 234=20
=20
// (__NR_utimes, sys_utimes), // 235=20
|
|
From: <sv...@va...> - 2005-07-01 04:15:44
|
Author: njn
Date: 2005-07-01 05:15:36 +0100 (Fri, 01 Jul 2005)
New Revision: 4073
Log:
Move the last remaining tests out of corecheck.
Also introduced VG_(showing_core_errors)() to make core error display
more consistent.
Added:
trunk/memcheck/tests/erringfds.c
trunk/memcheck/tests/erringfds.stderr.exp
trunk/memcheck/tests/erringfds.stdout.exp
trunk/memcheck/tests/erringfds.vgtest
trunk/memcheck/tests/sigkill.c
trunk/memcheck/tests/sigkill.stderr.exp
trunk/memcheck/tests/sigkill.stderr.exp2
trunk/memcheck/tests/sigkill.stderr.exp3
trunk/memcheck/tests/sigkill.vgtest
trunk/memcheck/tests/stack_changes.c
trunk/memcheck/tests/stack_changes.stderr.exp
trunk/memcheck/tests/stack_changes.stdout.exp
trunk/memcheck/tests/stack_changes.vgtest
Removed:
trunk/corecheck/tests/erringfds.c
trunk/corecheck/tests/erringfds.stderr.exp
trunk/corecheck/tests/erringfds.stdout.exp
trunk/corecheck/tests/erringfds.vgtest
trunk/corecheck/tests/sigkill.c
trunk/corecheck/tests/sigkill.stderr.exp
trunk/corecheck/tests/sigkill.stderr.exp2
trunk/corecheck/tests/sigkill.stderr.exp3
trunk/corecheck/tests/sigkill.vgtest
trunk/corecheck/tests/stack_changes.c
trunk/corecheck/tests/stack_changes.stderr.exp
trunk/corecheck/tests/stack_changes.stdout.exp
trunk/corecheck/tests/stack_changes.vgtest
Modified:
trunk/corecheck/tests/Makefile.am
trunk/coregrind/m_errormgr.c
trunk/coregrind/m_signals.c
trunk/coregrind/m_syswrap/syswrap-generic.c
trunk/coregrind/pub_core_errormgr.h
trunk/include/pub_tool_tooliface.h
trunk/memcheck/tests/Makefile.am
Modified: trunk/corecheck/tests/Makefile.am
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/Makefile.am 2005-06-30 23:33:37 UTC (rev 4072)
+++ trunk/corecheck/tests/Makefile.am 2005-07-01 04:15:36 UTC (rev 4073)
@@ -1,24 +1 @@
-##----------------------------------------------------------------------=
-----
-## These test core error checking, eg. "silly values" for malloc/calloc,
-## pthread errors (and suppressions), signal handling errors, invalid fd=
s for
-## blocking syscalls, etc.
-##----------------------------------------------------------------------=
-----
-
noinst_SCRIPTS =3D filter_stderr
-
-EXTRA_DIST =3D $(noinst_SCRIPTS) \
- erringfds.stderr.exp erringfds.stdout.exp erringfds.vgtest \
- sigkill.stderr.exp sigkill.stderr.exp2 sigkill.vgtest \
- stack_changes.vgtest
-
-check_PROGRAMS =3D \
- erringfds sigkill stack_changes
-
-AM_CFLAGS =3D $(WERROR) -Winline -Wall -Wshadow -g -O0
-AM_CPPFLAGS =3D -I$(top_srcdir)/include
-AM_CXXFLAGS =3D $(AM_CFLAGS)
-
-sigkill_SOURCES =3D sigkill.c
-
-# Stack tests
-stack_changes_SOURCES =3D stack_changes.c
Deleted: trunk/corecheck/tests/erringfds.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/erringfds.c 2005-06-30 23:33:37 UTC (rev 4072)
+++ trunk/corecheck/tests/erringfds.c 2005-07-01 04:15:36 UTC (rev 4073)
@@ -1,17 +0,0 @@
-=20
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-#include <unistd.h>
-
-int main ( void )
-{
- int fd, n;
- char buf[10];
- fd =3D open("foo/bar/xyzzy", O_RDONLY); /* fails */
- printf("fd =3D %d\n", fd);
- n =3D read ( fd, buf, 10 );
- printf ("n =3D %d\n", n);
- return 0;
-}
Deleted: trunk/corecheck/tests/erringfds.stderr.exp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/erringfds.stderr.exp 2005-06-30 23:33:37 UTC (r=
ev 4072)
+++ trunk/corecheck/tests/erringfds.stderr.exp 2005-07-01 04:15:36 UTC (r=
ev 4073)
@@ -1,4 +0,0 @@
-
-Warning: invalid file descriptor -1 in syscall read()
-
-ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
Deleted: trunk/corecheck/tests/erringfds.stdout.exp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/erringfds.stdout.exp 2005-06-30 23:33:37 UTC (r=
ev 4072)
+++ trunk/corecheck/tests/erringfds.stdout.exp 2005-07-01 04:15:36 UTC (r=
ev 4073)
@@ -1,2 +0,0 @@
-fd =3D -1
-n =3D -1
Deleted: trunk/corecheck/tests/erringfds.vgtest
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/erringfds.vgtest 2005-06-30 23:33:37 UTC (rev 4=
072)
+++ trunk/corecheck/tests/erringfds.vgtest 2005-07-01 04:15:36 UTC (rev 4=
073)
@@ -1 +0,0 @@
-prog: erringfds
Deleted: trunk/corecheck/tests/sigkill.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/sigkill.c 2005-06-30 23:33:37 UTC (rev 4072)
+++ trunk/corecheck/tests/sigkill.c 2005-07-01 04:15:36 UTC (rev 4073)
@@ -1,42 +0,0 @@
-
-#include <errno.h>
-#include <stdio.h>
-#include <signal.h>
-#include <stdlib.h>
-
-static void
-abend (int sig)
-{
- printf ("Abended on signal %d\n", sig);
- exit (2);
-}
-
-int
-main (void)
-{
- struct sigaction sa;
-
- int i;
- int rc;
- for (i =3D 1; i <=3D 65; i++) {
- // skip signals 63 and 64: some systems say "warning, ignored attem=
pt
- // to catch 32 because it's used internally by Valgrind", others sa=
y
- // "invalid argument".
- if (i =3D=3D 63 || i =3D=3D 64) {
- continue; =20
- } // different systems
- sa.sa_flags =3D 0;
- sigemptyset( &sa.sa_mask );
- sa.sa_handler =3D abend;
- fprintf(stderr,"setting signal %d: ", i);
- rc =3D sigaction (i /*SIGKILL*/, &sa, NULL);
- if (rc) perror ("");
- else fprintf(stderr,"Success\n");
- fprintf(stderr,"getting signal %d: ", i);
- rc =3D sigaction (i /*SIGKILL*/, NULL, &sa);
- if (rc) perror ("");
- else fprintf(stderr,"Success\n");
- fprintf(stderr,"\n");
- }
- return 0;
-}
Deleted: trunk/corecheck/tests/sigkill.stderr.exp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/sigkill.stderr.exp 2005-06-30 23:33:37 UTC (rev=
4072)
+++ trunk/corecheck/tests/sigkill.stderr.exp 2005-07-01 04:15:36 UTC (rev=
4073)
@@ -1,198 +0,0 @@
-
-setting signal 1: Success
-getting signal 1: Success
-
-setting signal 2: Success
-getting signal 2: Success
-
-setting signal 3: Success
-getting signal 3: Success
-
-setting signal 4: Success
-getting signal 4: Success
-
-setting signal 5: Success
-getting signal 5: Success
-
-setting signal 6: Success
-getting signal 6: Success
-
-setting signal 7: Success
-getting signal 7: Success
-
-setting signal 8: Success
-getting signal 8: Success
-
-setting signal 9: Warning: ignored attempt to set SIGKILL handler in sig=
action();
- the SIGKILL signal is uncatchable
-Invalid argument
-getting signal 9: Success
-
-setting signal 10: Success
-getting signal 10: Success
-
-setting signal 11: Success
-getting signal 11: Success
-
-setting signal 12: Success
-getting signal 12: Success
-
-setting signal 13: Success
-getting signal 13: Success
-
-setting signal 14: Success
-getting signal 14: Success
-
-setting signal 15: Success
-getting signal 15: Success
-
-setting signal 16: Success
-getting signal 16: Success
-
-setting signal 17: Success
-getting signal 17: Success
-
-setting signal 18: Success
-getting signal 18: Success
-
-setting signal 19: Warning: ignored attempt to set SIGSTOP handler in si=
gaction();
- the SIGSTOP signal is uncatchable
-Invalid argument
-getting signal 19: Success
-
-setting signal 20: Success
-getting signal 20: Success
-
-setting signal 21: Success
-getting signal 21: Success
-
-setting signal 22: Success
-getting signal 22: Success
-
-setting signal 23: Success
-getting signal 23: Success
-
-setting signal 24: Success
-getting signal 24: Success
-
-setting signal 25: Success
-getting signal 25: Success
-
-setting signal 26: Success
-getting signal 26: Success
-
-setting signal 27: Success
-getting signal 27: Success
-
-setting signal 28: Success
-getting signal 28: Success
-
-setting signal 29: Success
-getting signal 29: Success
-
-setting signal 30: Success
-getting signal 30: Success
-
-setting signal 31: Success
-getting signal 31: Success
-
-setting signal 32: Success
-getting signal 32: Success
-
-setting signal 33: Success
-getting signal 33: Success
-
-setting signal 34: Success
-getting signal 34: Success
-
-setting signal 35: Success
-getting signal 35: Success
-
-setting signal 36: Success
-getting signal 36: Success
-
-setting signal 37: Success
-getting signal 37: Success
-
-setting signal 38: Success
-getting signal 38: Success
-
-setting signal 39: Success
-getting signal 39: Success
-
-setting signal 40: Success
-getting signal 40: Success
-
-setting signal 41: Success
-getting signal 41: Success
-
-setting signal 42: Success
-getting signal 42: Success
-
-setting signal 43: Success
-getting signal 43: Success
-
-setting signal 44: Success
-getting signal 44: Success
-
-setting signal 45: Success
-getting signal 45: Success
-
-setting signal 46: Success
-getting signal 46: Success
-
-setting signal 47: Success
-getting signal 47: Success
-
-setting signal 48: Success
-getting signal 48: Success
-
-setting signal 49: Success
-getting signal 49: Success
-
-setting signal 50: Success
-getting signal 50: Success
-
-setting signal 51: Success
-getting signal 51: Success
-
-setting signal 52: Success
-getting signal 52: Success
-
-setting signal 53: Success
-getting signal 53: Success
-
-setting signal 54: Success
-getting signal 54: Success
-
-setting signal 55: Success
-getting signal 55: Success
-
-setting signal 56: Success
-getting signal 56: Success
-
-setting signal 57: Success
-getting signal 57: Success
-
-setting signal 58: Success
-getting signal 58: Success
-
-setting signal 59: Success
-getting signal 59: Success
-
-setting signal 60: Success
-getting signal 60: Success
-
-setting signal 61: Success
-getting signal 61: Success
-
-setting signal 62: Success
-getting signal 62: Success
-
-setting signal 65: Warning: bad signal number 65 in sigaction()
-Invalid argument
-getting signal 65: Warning: bad signal number 65 in sigaction()
-Invalid argument
-
-
-ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
Deleted: trunk/corecheck/tests/sigkill.stderr.exp2
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/sigkill.stderr.exp2 2005-06-30 23:33:37 UTC (re=
v 4072)
+++ trunk/corecheck/tests/sigkill.stderr.exp2 2005-07-01 04:15:36 UTC (re=
v 4073)
@@ -1,198 +0,0 @@
-
-setting signal 1: Success
-getting signal 1: Success
-
-setting signal 2: Success
-getting signal 2: Success
-
-setting signal 3: Success
-getting signal 3: Success
-
-setting signal 4: Success
-getting signal 4: Success
-
-setting signal 5: Success
-getting signal 5: Success
-
-setting signal 6: Success
-getting signal 6: Success
-
-setting signal 7: Success
-getting signal 7: Success
-
-setting signal 8: Success
-getting signal 8: Success
-
-setting signal 9: Warning: ignored attempt to set SIGKILL handler in sig=
action();
- the SIGKILL signal is uncatchable
-Invalid argument
-getting signal 9: Success
-
-setting signal 10: Success
-getting signal 10: Success
-
-setting signal 11: Success
-getting signal 11: Success
-
-setting signal 12: Success
-getting signal 12: Success
-
-setting signal 13: Success
-getting signal 13: Success
-
-setting signal 14: Success
-getting signal 14: Success
-
-setting signal 15: Success
-getting signal 15: Success
-
-setting signal 16: Success
-getting signal 16: Success
-
-setting signal 17: Success
-getting signal 17: Success
-
-setting signal 18: Success
-getting signal 18: Success
-
-setting signal 19: Warning: ignored attempt to set SIGSTOP handler in si=
gaction();
- the SIGSTOP signal is uncatchable
-Invalid argument
-getting signal 19: Success
-
-setting signal 20: Success
-getting signal 20: Success
-
-setting signal 21: Success
-getting signal 21: Success
-
-setting signal 22: Success
-getting signal 22: Success
-
-setting signal 23: Success
-getting signal 23: Success
-
-setting signal 24: Success
-getting signal 24: Success
-
-setting signal 25: Success
-getting signal 25: Success
-
-setting signal 26: Success
-getting signal 26: Success
-
-setting signal 27: Success
-getting signal 27: Success
-
-setting signal 28: Success
-getting signal 28: Success
-
-setting signal 29: Success
-getting signal 29: Success
-
-setting signal 30: Success
-getting signal 30: Success
-
-setting signal 31: Success
-getting signal 31: Success
-
-setting signal 32: Invalid argument
-getting signal 32: Invalid argument
-
-setting signal 33: Invalid argument
-getting signal 33: Invalid argument
-
-setting signal 34: Success
-getting signal 34: Success
-
-setting signal 35: Success
-getting signal 35: Success
-
-setting signal 36: Success
-getting signal 36: Success
-
-setting signal 37: Success
-getting signal 37: Success
-
-setting signal 38: Success
-getting signal 38: Success
-
-setting signal 39: Success
-getting signal 39: Success
-
-setting signal 40: Success
-getting signal 40: Success
-
-setting signal 41: Success
-getting signal 41: Success
-
-setting signal 42: Success
-getting signal 42: Success
-
-setting signal 43: Success
-getting signal 43: Success
-
-setting signal 44: Success
-getting signal 44: Success
-
-setting signal 45: Success
-getting signal 45: Success
-
-setting signal 46: Success
-getting signal 46: Success
-
-setting signal 47: Success
-getting signal 47: Success
-
-setting signal 48: Success
-getting signal 48: Success
-
-setting signal 49: Success
-getting signal 49: Success
-
-setting signal 50: Success
-getting signal 50: Success
-
-setting signal 51: Success
-getting signal 51: Success
-
-setting signal 52: Success
-getting signal 52: Success
-
-setting signal 53: Success
-getting signal 53: Success
-
-setting signal 54: Success
-getting signal 54: Success
-
-setting signal 55: Success
-getting signal 55: Success
-
-setting signal 56: Success
-getting signal 56: Success
-
-setting signal 57: Success
-getting signal 57: Success
-
-setting signal 58: Success
-getting signal 58: Success
-
-setting signal 59: Success
-getting signal 59: Success
-
-setting signal 60: Success
-getting signal 60: Success
-
-setting signal 61: Success
-getting signal 61: Success
-
-setting signal 62: Success
-getting signal 62: Success
-
-setting signal 65: Warning: bad signal number 65 in sigaction()
-Invalid argument
-getting signal 65: Warning: bad signal number 65 in sigaction()
-Invalid argument
-
-
-ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
Deleted: trunk/corecheck/tests/sigkill.stderr.exp3
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/sigkill.stderr.exp3 2005-06-30 23:33:37 UTC (re=
v 4072)
+++ trunk/corecheck/tests/sigkill.stderr.exp3 2005-07-01 04:15:36 UTC (re=
v 4073)
@@ -1,198 +0,0 @@
-
-setting signal 1: Success
-getting signal 1: Success
-
-setting signal 2: Success
-getting signal 2: Success
-
-setting signal 3: Success
-getting signal 3: Success
-
-setting signal 4: Success
-getting signal 4: Success
-
-setting signal 5: Success
-getting signal 5: Success
-
-setting signal 6: Success
-getting signal 6: Success
-
-setting signal 7: Success
-getting signal 7: Success
-
-setting signal 8: Success
-getting signal 8: Success
-
-setting signal 9: Warning: ignored attempt to set SIGKILL handler in sig=
action();
- the SIGKILL signal is uncatchable
-Invalid argument
-getting signal 9: Success
-
-setting signal 10: Success
-getting signal 10: Success
-
-setting signal 11: Success
-getting signal 11: Success
-
-setting signal 12: Success
-getting signal 12: Success
-
-setting signal 13: Success
-getting signal 13: Success
-
-setting signal 14: Success
-getting signal 14: Success
-
-setting signal 15: Success
-getting signal 15: Success
-
-setting signal 16: Success
-getting signal 16: Success
-
-setting signal 17: Success
-getting signal 17: Success
-
-setting signal 18: Success
-getting signal 18: Success
-
-setting signal 19: Warning: ignored attempt to set SIGSTOP handler in si=
gaction();
- the SIGSTOP signal is uncatchable
-Invalid argument
-getting signal 19: Success
-
-setting signal 20: Success
-getting signal 20: Success
-
-setting signal 21: Success
-getting signal 21: Success
-
-setting signal 22: Success
-getting signal 22: Success
-
-setting signal 23: Success
-getting signal 23: Success
-
-setting signal 24: Success
-getting signal 24: Success
-
-setting signal 25: Success
-getting signal 25: Success
-
-setting signal 26: Success
-getting signal 26: Success
-
-setting signal 27: Success
-getting signal 27: Success
-
-setting signal 28: Success
-getting signal 28: Success
-
-setting signal 29: Success
-getting signal 29: Success
-
-setting signal 30: Success
-getting signal 30: Success
-
-setting signal 31: Success
-getting signal 31: Success
-
-setting signal 32: Invalid argument
-getting signal 32: Invalid argument
-
-setting signal 33: Success
-getting signal 33: Success
-
-setting signal 34: Success
-getting signal 34: Success
-
-setting signal 35: Success
-getting signal 35: Success
-
-setting signal 36: Success
-getting signal 36: Success
-
-setting signal 37: Success
-getting signal 37: Success
-
-setting signal 38: Success
-getting signal 38: Success
-
-setting signal 39: Success
-getting signal 39: Success
-
-setting signal 40: Success
-getting signal 40: Success
-
-setting signal 41: Success
-getting signal 41: Success
-
-setting signal 42: Success
-getting signal 42: Success
-
-setting signal 43: Success
-getting signal 43: Success
-
-setting signal 44: Success
-getting signal 44: Success
-
-setting signal 45: Success
-getting signal 45: Success
-
-setting signal 46: Success
-getting signal 46: Success
-
-setting signal 47: Success
-getting signal 47: Success
-
-setting signal 48: Success
-getting signal 48: Success
-
-setting signal 49: Success
-getting signal 49: Success
-
-setting signal 50: Success
-getting signal 50: Success
-
-setting signal 51: Success
-getting signal 51: Success
-
-setting signal 52: Success
-getting signal 52: Success
-
-setting signal 53: Success
-getting signal 53: Success
-
-setting signal 54: Success
-getting signal 54: Success
-
-setting signal 55: Success
-getting signal 55: Success
-
-setting signal 56: Success
-getting signal 56: Success
-
-setting signal 57: Success
-getting signal 57: Success
-
-setting signal 58: Success
-getting signal 58: Success
-
-setting signal 59: Success
-getting signal 59: Success
-
-setting signal 60: Success
-getting signal 60: Success
-
-setting signal 61: Success
-getting signal 61: Success
-
-setting signal 62: Success
-getting signal 62: Success
-
-setting signal 65: Warning: bad signal number 65 in sigaction()
-Invalid argument
-getting signal 65: Warning: bad signal number 65 in sigaction()
-Invalid argument
-
-
-ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
Deleted: trunk/corecheck/tests/sigkill.vgtest
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/sigkill.vgtest 2005-06-30 23:33:37 UTC (rev 407=
2)
+++ trunk/corecheck/tests/sigkill.vgtest 2005-07-01 04:15:36 UTC (rev 407=
3)
@@ -1 +0,0 @@
-prog: sigkill
Deleted: trunk/corecheck/tests/stack_changes.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/stack_changes.c 2005-06-30 23:33:37 UTC (rev 40=
72)
+++ trunk/corecheck/tests/stack_changes.c 2005-07-01 04:15:36 UTC (rev 40=
73)
@@ -1,61 +0,0 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <ucontext.h>
-
-#include "valgrind.h"
-
-#define STACK_SIZE 4096
-
-struct ucontext ctx1, ctx2, oldc;
-int count;
-
-void hello(struct ucontext *newc)
-{
- printf("hello, world: %d\n", count);
- if (count++ =3D=3D 2)
- newc =3D &oldc;
- setcontext(newc);
-}
-
-int init_context(struct ucontext *uc)
-{
- void *stack;
- int ret;
-
- if (getcontext(uc) =3D=3D -1) {
- perror("getcontext");
- exit(1);
- }
-
- if ((stack =3D malloc(STACK_SIZE)) =3D=3D NULL) {
- perror("malloc");
- exit(1);
- }
-
- ret =3D VALGRIND_STACK_REGISTER(stack, stack + STACK_SIZE);
-
- uc->uc_link =3D NULL;
- uc->uc_stack.ss_sp =3D stack;
- uc->uc_stack.ss_size =3D STACK_SIZE;
- uc->uc_stack.ss_flags =3D 0;
-
- return ret;
-}
-
-int main(int argc, char **argv)
-{
- int c1 =3D init_context(&ctx1);
- int c2 =3D init_context(&ctx2);
-
- makecontext(&ctx1, (void (*)()) hello, 2, &ctx2);
- makecontext(&ctx2, (void (*)()) hello, 2, &ctx1);
-
- swapcontext(&oldc, &ctx1);
-
- VALGRIND_STACK_DEREGISTER(c1);
- free(ctx1.uc_stack.ss_sp);
- VALGRIND_STACK_DEREGISTER(c2);
- free(ctx2.uc_stack.ss_sp);
-
- return 0;
-}
Deleted: trunk/corecheck/tests/stack_changes.stderr.exp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
Deleted: trunk/corecheck/tests/stack_changes.stdout.exp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/stack_changes.stdout.exp 2005-06-30 23:33:37 UT=
C (rev 4072)
+++ trunk/corecheck/tests/stack_changes.stdout.exp 2005-07-01 04:15:36 UT=
C (rev 4073)
@@ -1,3 +0,0 @@
-hello, world: 0
-hello, world: 1
-hello, world: 2
Deleted: trunk/corecheck/tests/stack_changes.vgtest
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/stack_changes.vgtest 2005-06-30 23:33:37 UTC (r=
ev 4072)
+++ trunk/corecheck/tests/stack_changes.vgtest 2005-07-01 04:15:36 UTC (r=
ev 4073)
@@ -1,2 +0,0 @@
-prog: stack_changes
-vgopts: -q
Modified: trunk/coregrind/m_errormgr.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_errormgr.c 2005-06-30 23:33:37 UTC (rev 4072)
+++ trunk/coregrind/m_errormgr.c 2005-07-01 04:15:36 UTC (rev 4073)
@@ -231,6 +231,13 @@
/*--- Helper fns ---*/
/*------------------------------------------------------------*/
=20
+// Only show core errors if the tool wants to, we're not running with -q=
,
+// and were not outputting XML.
+Bool VG_(showing_core_errors)(void)
+{
+ return VG_(needs).core_errors && VG_(clo_verbosity) >=3D 1 && !VG_(cl=
o_xml);
+}
+
/* Compare error contexts, to detect duplicates. Note that if they
are otherwise the same, the faulting addrs and associated rwoffsets
are allowed to be different. */
Modified: trunk/coregrind/m_signals.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_signals.c 2005-06-30 23:33:37 UTC (rev 4072)
+++ trunk/coregrind/m_signals.c 2005-07-01 04:15:36 UTC (rev 4073)
@@ -617,8 +617,7 @@
return VG_(mk_SysRes_Success)( 0 );
=20
bad_signo:
- if (VG_(needs).core_errors && VG_(clo_verbosity) >=3D 1
- && !VG_(clo_xml)) {
+ if (VG_(showing_core_errors)()) {
VG_(message)(Vg_UserMsg,
"Warning: bad signal number %d in sigaction()",=20
signo);
@@ -626,8 +625,7 @@
return VG_(mk_SysRes_Error)( VKI_EINVAL );
=20
bad_signo_reserved:
- if (VG_(needs).core_errors && VG_(clo_verbosity) >=3D 1
- && !VG_(clo_xml)) {
+ if (VG_(showing_core_errors)()) {
VG_(message)(Vg_UserMsg,
"Warning: ignored attempt to set %s handler in sigaction();",
signame(signo));
@@ -638,8 +636,7 @@
return VG_(mk_SysRes_Error)( VKI_EINVAL );
=20
bad_sigkill_or_sigstop:
- if (VG_(needs).core_errors && VG_(clo_verbosity) >=3D 1
- && !VG_(clo_xml)) {
+ if (VG_(showing_core_errors)()) {
VG_(message)(Vg_UserMsg,
"Warning: ignored attempt to set %s handler in sigaction();",
signame(signo));
Modified: trunk/coregrind/m_syswrap/syswrap-generic.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_syswrap/syswrap-generic.c 2005-06-30 23:33:37 UTC (=
rev 4072)
+++ trunk/coregrind/m_syswrap/syswrap-generic.c 2005-07-01 04:15:36 UTC (=
rev 4073)
@@ -33,6 +33,7 @@
#include "pub_core_debuginfo.h" // Needed for pub_core_aspacemgr :(
#include "pub_core_aspacemgr.h"
#include "pub_core_debuglog.h"
+#include "pub_core_errormgr.h"
#include "pub_core_libcbase.h"
#include "pub_core_libcassert.h"
#include "pub_core_libcfile.h"
@@ -857,7 +858,9 @@
/* Return true if we're allowed to use or create this fd */
Bool ML_(fd_allowed)(Int fd, const Char *syscallname, ThreadId tid, Bool=
soft)
{
- if (fd < 0 || fd >=3D VG_(fd_hard_limit) || fd =3D=3D VG_(clo_log_fd)=
) {
+ if ((fd < 0 || fd >=3D VG_(fd_hard_limit) || fd =3D=3D VG_(clo_log_fd=
)) &&
+ VG_(showing_core_errors)())
+ {
VG_(message)(Vg_UserMsg,=20
"Warning: invalid file descriptor %d in syscall %s()",
fd, syscallname);
Modified: trunk/coregrind/pub_core_errormgr.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/pub_core_errormgr.h 2005-06-30 23:33:37 UTC (rev 4072=
)
+++ trunk/coregrind/pub_core_errormgr.h 2005-07-01 04:15:36 UTC (rev 4073=
)
@@ -1,3 +1,4 @@
+
/*--------------------------------------------------------------------*/
/*--- ErrorMgr: management of errors and suppressions. ---*/
/*--- pub_core_errormgr.h ---*/
@@ -55,6 +56,8 @@
=20
extern Bool VG_(is_action_requested) ( Char* action, Bool* clo );
=20
+extern Bool VG_(showing_core_errors) ( void );
+
extern UInt VG_(get_n_errs_found) ( void );
=20
#endif // __PUB_CORE_ERRORMGR_H
Modified: trunk/include/pub_tool_tooliface.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/include/pub_tool_tooliface.h 2005-06-30 23:33:37 UTC (rev 4072)
+++ trunk/include/pub_tool_tooliface.h 2005-07-01 04:15:36 UTC (rev 4073)
@@ -130,8 +130,9 @@
extern void VG_(needs_libc_freeres) ( void );
=20
/* Want to have errors detected by Valgrind's core reported? Includes:
- - pthread API errors (many; eg. unlocking a non-locked mutex)
- - invalid file descriptors to blocking syscalls read() and write()
+ - pthread API errors (many; eg. unlocking a non-locked mutex)=20
+ [currently disabled]
+ - invalid file descriptors to syscalls like read() and write()
- bad signal numbers passed to sigaction()
- attempt to install signal handler for SIGKILL or SIGSTOP */
extern void VG_(needs_core_errors) ( void );
Modified: trunk/memcheck/tests/Makefile.am
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/memcheck/tests/Makefile.am 2005-06-30 23:33:37 UTC (rev 4072)
+++ trunk/memcheck/tests/Makefile.am 2005-07-01 04:15:36 UTC (rev 4073)
@@ -23,6 +23,7 @@
custom_alloc.stderr.exp custom_alloc.vgtest \
describe-block.stderr.exp describe-block.vgtest \
doublefree.stderr.exp doublefree.vgtest \
+ erringfds.stderr.exp erringfds.stdout.exp erringfds.vgtest \
error_counts.stderr.exp error_counts.stdout.exp error_counts.vgtest \
errs1.stderr.exp errs1.vgtest \
exitprog.stderr.exp exitprog.vgtest \
@@ -65,8 +66,10 @@
realloc2.stderr.exp realloc2.vgtest \
realloc3.stderr.exp realloc3.vgtest \
sigaltstack.stderr.exp sigaltstack.vgtest \
+ sigkill.stderr.exp sigkill.stderr.exp2 sigkill.vgtest \
signal2.stderr.exp signal2.stdout.exp signal2.vgtest \
sigprocmask.stderr.exp sigprocmask.vgtest \
+ stack_changes.stderr.exp stack_changes.stdout.exp stack_changes.vgtest =
\
strchr.stderr.exp strchr.vgtest \
str_tester.stderr.exp str_tester.vgtest \
supp1.stderr.exp supp1.vgtest \
@@ -88,7 +91,7 @@
badloop badpoll badrw brk brk2 buflen_check \
clientperm custom_alloc \
describe-block \
- doublefree error_counts errs1 exitprog execve execve2 \
+ doublefree error_counts errs1 exitprog execve execve2 erringfds \
fprw fwrite hello inits inline \
leak-0 leak-cycle leak-tree leak-regroot leakotron \
malloc1 malloc2 malloc3 manuel1 manuel2 manuel3 \
@@ -99,8 +102,8 @@
pointer-trace \
post-syscall \
realloc1 realloc2 realloc3 \
- sigaltstack signal2 sigprocmask \
- strchr str_tester supp1 supp2 suppfree \
+ sigaltstack signal2 sigprocmask sigkill \
+ stack_changes strchr str_tester supp1 supp2 suppfree \
trivialleak weirdioctl \
mismatches new_override metadata \
vgtest_ume xml1 \
@@ -112,18 +115,18 @@
AM_CXXFLAGS =3D $(AM_CFLAGS)
=20
# C ones
-addressable_SOURCES =3D addressable.c
-badaddrvalue_SOURCES =3D badaddrvalue.c
-badfree_SOURCES =3D badfree.c
-badjump_SOURCES =3D badjump.c
-badjump2_SOURCES =3D badjump2.c
-badloop_SOURCES =3D badloop.c
-badpoll_SOURCES =3D badpoll.c
-badrw_SOURCES =3D badrw.c
-brk_SOURCES =3D brk.c
-brk2_SOURCES =3D brk2.c
-buflen_check_SOURCES =3D buflen_check.c
-clientperm_SOURCES =3D clientperm.c
+#addressable_SOURCES =3D addressable.c
+#badaddrvalue_SOURCES =3D badaddrvalue.c
+#badfree_SOURCES =3D badfree.c
+#badjump_SOURCES =3D badjump.c
+#badjump2_SOURCES =3D badjump2.c
+#badloop_SOURCES =3D badloop.c
+#badpoll_SOURCES =3D badpoll.c
+#badrw_SOURCES =3D badrw.c
+#brk_SOURCES =3D brk.c
+#brk2_SOURCES =3D brk2.c
+#buflen_check_SOURCES =3D buflen_check.c
+#clientperm_SOURCES =3D clientperm.c
custom_alloc_SOURCES =3D custom_alloc.c
describe_block_SOURCES =3D describe-block.c
doublefree_SOURCES =3D doublefree.c
@@ -159,13 +162,15 @@
overlap_SOURCES =3D overlap.c
# Don't allow GCC to inline memcpy(), because then we can't intercept it
overlap_CFLAGS =3D $(AM_CFLAGS) -fno-builtin-memcpy
-pointer_trace_SOURCES =3D pointer-trace.c
+#pointer_trace_SOURCES =3D pointer-trace.c
post_syscall_SOURCES =3D post-syscall.c
realloc1_SOURCES =3D realloc1.c
realloc2_SOURCES =3D realloc2.c
realloc3_SOURCES =3D realloc3.c
+sigkill_SOURCES =3D sigkill.c
signal2_SOURCES =3D signal2.c
sigprocmask_SOURCES =3D sigprocmask.c
+stack_changes_SOURCES =3D stack_changes.c
supp1_SOURCES =3D supp.c
supp2_SOURCES =3D supp.c
suppfree_SOURCES =3D suppfree.c
Copied: trunk/memcheck/tests/erringfds.c (from rev 4052, trunk/corecheck/=
tests/erringfds.c)
Copied: trunk/memcheck/tests/erringfds.stderr.exp (from rev 4052, trunk/c=
orecheck/tests/erringfds.stderr.exp)
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/erringfds.stderr.exp 2005-06-29 10:16:14 UTC (r=
ev 4052)
+++ trunk/memcheck/tests/erringfds.stderr.exp 2005-07-01 04:15:36 UTC (re=
v 4073)
@@ -0,0 +1,8 @@
+
+Warning: invalid file descriptor -1 in syscall read()
+
+ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
+malloc/free: in use at exit: 0 bytes in 0 blocks.
+malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
+For a detailed leak analysis, rerun with: --leak-check=3Dyes
+For counts of detected errors, rerun with: -v
Copied: trunk/memcheck/tests/erringfds.stdout.exp (from rev 4052, trunk/c=
orecheck/tests/erringfds.stdout.exp)
Copied: trunk/memcheck/tests/erringfds.vgtest (from rev 4052, trunk/corec=
heck/tests/erringfds.vgtest)
Copied: trunk/memcheck/tests/sigkill.c (from rev 4052, trunk/corecheck/te=
sts/sigkill.c)
Copied: trunk/memcheck/tests/sigkill.stderr.exp (from rev 4052, trunk/cor=
echeck/tests/sigkill.stderr.exp)
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/sigkill.stderr.exp 2005-06-29 10:16:14 UTC (rev=
4052)
+++ trunk/memcheck/tests/sigkill.stderr.exp 2005-07-01 04:15:36 UTC (rev =
4073)
@@ -0,0 +1,202 @@
+
+setting signal 1: Success
+getting signal 1: Success
+
+setting signal 2: Success
+getting signal 2: Success
+
+setting signal 3: Success
+getting signal 3: Success
+
+setting signal 4: Success
+getting signal 4: Success
+
+setting signal 5: Success
+getting signal 5: Success
+
+setting signal 6: Success
+getting signal 6: Success
+
+setting signal 7: Success
+getting signal 7: Success
+
+setting signal 8: Success
+getting signal 8: Success
+
+setting signal 9: Warning: ignored attempt to set SIGKILL handler in sig=
action();
+ the SIGKILL signal is uncatchable
+Invalid argument
+getting signal 9: Success
+
+setting signal 10: Success
+getting signal 10: Success
+
+setting signal 11: Success
+getting signal 11: Success
+
+setting signal 12: Success
+getting signal 12: Success
+
+setting signal 13: Success
+getting signal 13: Success
+
+setting signal 14: Success
+getting signal 14: Success
+
+setting signal 15: Success
+getting signal 15: Success
+
+setting signal 16: Success
+getting signal 16: Success
+
+setting signal 17: Success
+getting signal 17: Success
+
+setting signal 18: Success
+getting signal 18: Success
+
+setting signal 19: Warning: ignored attempt to set SIGSTOP handler in si=
gaction();
+ the SIGSTOP signal is uncatchable
+Invalid argument
+getting signal 19: Success
+
+setting signal 20: Success
+getting signal 20: Success
+
+setting signal 21: Success
+getting signal 21: Success
+
+setting signal 22: Success
+getting signal 22: Success
+
+setting signal 23: Success
+getting signal 23: Success
+
+setting signal 24: Success
+getting signal 24: Success
+
+setting signal 25: Success
+getting signal 25: Success
+
+setting signal 26: Success
+getting signal 26: Success
+
+setting signal 27: Success
+getting signal 27: Success
+
+setting signal 28: Success
+getting signal 28: Success
+
+setting signal 29: Success
+getting signal 29: Success
+
+setting signal 30: Success
+getting signal 30: Success
+
+setting signal 31: Success
+getting signal 31: Success
+
+setting signal 32: Success
+getting signal 32: Success
+
+setting signal 33: Success
+getting signal 33: Success
+
+setting signal 34: Success
+getting signal 34: Success
+
+setting signal 35: Success
+getting signal 35: Success
+
+setting signal 36: Success
+getting signal 36: Success
+
+setting signal 37: Success
+getting signal 37: Success
+
+setting signal 38: Success
+getting signal 38: Success
+
+setting signal 39: Success
+getting signal 39: Success
+
+setting signal 40: Success
+getting signal 40: Success
+
+setting signal 41: Success
+getting signal 41: Success
+
+setting signal 42: Success
+getting signal 42: Success
+
+setting signal 43: Success
+getting signal 43: Success
+
+setting signal 44: Success
+getting signal 44: Success
+
+setting signal 45: Success
+getting signal 45: Success
+
+setting signal 46: Success
+getting signal 46: Success
+
+setting signal 47: Success
+getting signal 47: Success
+
+setting signal 48: Success
+getting signal 48: Success
+
+setting signal 49: Success
+getting signal 49: Success
+
+setting signal 50: Success
+getting signal 50: Success
+
+setting signal 51: Success
+getting signal 51: Success
+
+setting signal 52: Success
+getting signal 52: Success
+
+setting signal 53: Success
+getting signal 53: Success
+
+setting signal 54: Success
+getting signal 54: Success
+
+setting signal 55: Success
+getting signal 55: Success
+
+setting signal 56: Success
+getting signal 56: Success
+
+setting signal 57: Success
+getting signal 57: Success
+
+setting signal 58: Success
+getting signal 58: Success
+
+setting signal 59: Success
+getting signal 59: Success
+
+setting signal 60: Success
+getting signal 60: Success
+
+setting signal 61: Success
+getting signal 61: Success
+
+setting signal 62: Success
+getting signal 62: Success
+
+setting signal 65: Warning: bad signal number 65 in sigaction()
+Invalid argument
+getting signal 65: Warning: bad signal number 65 in sigaction()
+Invalid argument
+
+
+ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
+malloc/free: in use at exit: 0 bytes in 0 blocks.
+malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
+For a detailed leak analysis, rerun with: --leak-check=3Dyes
+For counts of detected errors, rerun with: -v
Copied: trunk/memcheck/tests/sigkill.stderr.exp2 (from rev 4052, trunk/co=
recheck/tests/sigkill.stderr.exp2)
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/sigkill.stderr.exp2 2005-06-29 10:16:14 UTC (re=
v 4052)
+++ trunk/memcheck/tests/sigkill.stderr.exp2 2005-07-01 04:15:36 UTC (rev=
4073)
@@ -0,0 +1,202 @@
+
+setting signal 1: Success
+getting signal 1: Success
+
+setting signal 2: Success
+getting signal 2: Success
+
+setting signal 3: Success
+getting signal 3: Success
+
+setting signal 4: Success
+getting signal 4: Success
+
+setting signal 5: Success
+getting signal 5: Success
+
+setting signal 6: Success
+getting signal 6: Success
+
+setting signal 7: Success
+getting signal 7: Success
+
+setting signal 8: Success
+getting signal 8: Success
+
+setting signal 9: Warning: ignored attempt to set SIGKILL handler in sig=
action();
+ the SIGKILL signal is uncatchable
+Invalid argument
+getting signal 9: Success
+
+setting signal 10: Success
+getting signal 10: Success
+
+setting signal 11: Success
+getting signal 11: Success
+
+setting signal 12: Success
+getting signal 12: Success
+
+setting signal 13: Success
+getting signal 13: Success
+
+setting signal 14: Success
+getting signal 14: Success
+
+setting signal 15: Success
+getting signal 15: Success
+
+setting signal 16: Success
+getting signal 16: Success
+
+setting signal 17: Success
+getting signal 17: Success
+
+setting signal 18: Success
+getting signal 18: Success
+
+setting signal 19: Warning: ignored attempt to set SIGSTOP handler in si=
gaction();
+ the SIGSTOP signal is uncatchable
+Invalid argument
+getting signal 19: Success
+
+setting signal 20: Success
+getting signal 20: Success
+
+setting signal 21: Success
+getting signal 21: Success
+
+setting signal 22: Success
+getting signal 22: Success
+
+setting signal 23: Success
+getting signal 23: Success
+
+setting signal 24: Success
+getting signal 24: Success
+
+setting signal 25: Success
+getting signal 25: Success
+
+setting signal 26: Success
+getting signal 26: Success
+
+setting signal 27: Success
+getting signal 27: Success
+
+setting signal 28: Success
+getting signal 28: Success
+
+setting signal 29: Success
+getting signal 29: Success
+
+setting signal 30: Success
+getting signal 30: Success
+
+setting signal 31: Success
+getting signal 31: Success
+
+setting signal 32: Invalid argument
+getting signal 32: Invalid argument
+
+setting signal 33: Invalid argument
+getting signal 33: Invalid argument
+
+setting signal 34: Success
+getting signal 34: Success
+
+setting signal 35: Success
+getting signal 35: Success
+
+setting signal 36: Success
+getting signal 36: Success
+
+setting signal 37: Success
+getting signal 37: Success
+
+setting signal 38: Success
+getting signal 38: Success
+
+setting signal 39: Success
+getting signal 39: Success
+
+setting signal 40: Success
+getting signal 40: Success
+
+setting signal 41: Success
+getting signal 41: Success
+
+setting signal 42: Success
+getting signal 42: Success
+
+setting signal 43: Success
+getting signal 43: Success
+
+setting signal 44: Success
+getting signal 44: Success
+
+setting signal 45: Success
+getting signal 45: Success
+
+setting signal 46: Success
+getting signal 46: Success
+
+setting signal 47: Success
+getting signal 47: Success
+
+setting signal 48: Success
+getting signal 48: Success
+
+setting signal 49: Success
+getting signal 49: Success
+
+setting signal 50: Success
+getting signal 50: Success
+
+setting signal 51: Success
+getting signal 51: Success
+
+setting signal 52: Success
+getting signal 52: Success
+
+setting signal 53: Success
+getting signal 53: Success
+
+setting signal 54: Success
+getting signal 54: Success
+
+setting signal 55: Success
+getting signal 55: Success
+
+setting signal 56: Success
+getting signal 56: Success
+
+setting signal 57: Success
+getting signal 57: Success
+
+setting signal 58: Success
+getting signal 58: Success
+
+setting signal 59: Success
+getting signal 59: Success
+
+setting signal 60: Success
+getting signal 60: Success
+
+setting signal 61: Success
+getting signal 61: Success
+
+setting signal 62: Success
+getting signal 62: Success
+
+setting signal 65: Warning: bad signal number 65 in sigaction()
+Invalid argument
+getting signal 65: Warning: bad signal number 65 in sigaction()
+Invalid argument
+
+
+ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
+malloc/free: in use at exit: 0 bytes in 0 blocks.
+malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
+For a detailed leak analysis, rerun with: --leak-check=3Dyes
+For counts of detected errors, rerun with: -v
Copied: trunk/memcheck/tests/sigkill.stderr.exp3 (from rev 4052, trunk/co=
recheck/tests/sigkill.stderr.exp3)
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/corecheck/tests/sigkill.stderr.exp3 2005-06-29 10:16:14 UTC (re=
v 4052)
+++ trunk/memcheck/tests/sigkill.stderr.exp3 2005-07-01 04:15:36 UTC (rev=
4073)
@@ -0,0 +1,202 @@
+
+setting signal 1: Success
+getting signal 1: Success
+
+setting signal 2: Success
+getting signal 2: Success
+
+setting signal 3: Success
+getting signal 3: Success
+
+setting signal 4: Success
+getting signal 4: Success
+
+setting signal 5: Success
+getting signal 5: Success
+
+setting signal 6: Success
+getting signal 6: Success
+
+setting signal 7: Success
+getting signal 7: Success
+
+setting signal 8: Success
+getting signal 8: Success
+
+setting signal 9: Warning: ignored attempt to set SIGKILL handler in sig=
action();
+ the SIGKILL signal is uncatchable
+Invalid argument
+getting signal 9: Success
+
+setting signal 10: Success
+getting signal 10: Success
+
+setting signal 11: Success
+getting signal 11: Success
+
+setting signal 12: Success
+getting signal 12: Success
+
+setting signal 13: Success
+getting signal 13: Success
+
+setting signal 14: Success
+getting signal 14: Success
+
+setting signal 15: Success
+getting signal 15: Success
+
+setting signal 16: Success
+getting signal 16: Success
+
+setting signal 17: Success
+getting signal 17: Success
+
+setting signal 18: Success
+getting signal 18: Success
+
+setting signal 19: Warning: ignored attempt to set SIGSTOP handler in si=
gaction();
+ the SIGSTOP signal is uncatchable
+Invalid argument
+getting signal 19: Success
+
+setting signal 20: Success
+getting signal 20: Success
+
+setting signal 21: Success
+getting signal 21: Success
+
+setting signal 22: Success
+getting signal 22: Success
+
+setting signal 23: Success
+getting signal 23: Success
+
+setting signal 24: Success
+getting signal 24: Success
+
+setting signal 25: Success
+getting signal 25: Success
+
+setting signal 26: Success
+getting signal 26: Success
+
+setting signal 27: Success
+getting signal 27: Success
+
+setting signal 28: Success
+getting signal 28: Success
+
+setting signal 29: Success
+getting signal 29: Success
+
+setting signal 30: Success
+getting signal 30: Success
+
+setting signal 31: Success
+getting signal 31: Success
+
+setting signal 32: Invalid argument
+getting signal 32: Invalid argument
+
+setting signal 33: Success
+getting signal 33: Success
+
+setting signal 34: Success
+getting signal 34: Success
+
+setting signal 35: Success
+getting signal 35: Success
+
+setting signal 36: Success
+getting signal 36: Success
+
+setting signal 37: Success
+getting signal 37: Success
+
+setting signal 38: Success
+getting signal 38: Success
+
+setting signal 39: Success
+getting signal 39: Success
+
+setting signal 40: Success
+getting signal 40: Success
+
+setting signal 41: Success
+getting signal 41: Success
+
+setting signal 42: Success
+getting signal 42: Success
+
+setting signal 43: Success
+getting signal 43: Success
+
+setting signal 44: Success
+getting signal 44: Success
+
+setting signal 45: Success
+getting signal 45: Success
+
+setting signal 46: Success
+getting signal 46: Success
+
+setting signal 47: Success
+getting signal 47: Success
+
+setting signal 48: Success
+getting signal 48: Success
+
+setting signal 49: Success
+getting signal 49: Success
+
+setting signal 50: Success
+getting signal 50: Success
+
+setting signal 51: Success
+getting signal 51: Success
+
+setting signal 52: Success
+getting signal 52: Success
+
+setting signal 53: Success
+getting signal 53: Success
+
+setting signal 54: Success
+getting signal 54: Success
+
+setting signal 55: Success
+getting signal 55: Success
+
+setting signal 56: Success
+getting signal 56: Success
+
+setting signal 57: Success
+getting signal 57: Success
+
+setting signal 58: Success
+getting signal 58: Success
+
+setting signal 59: Success
+getting signal 59: Success
+
+setting signal 60: Success
+getting signal 60: Success
+
+setting signal 61: Success
+getting signal 61: Success
+
+setting signal 62: Success
+getting signal 62: Success
+
+setting signal 65: Warning: bad signal number 65 in sigaction()
+Invalid argument
+getting signal 65: Warning: bad signal number 65 in sigaction()
+Invalid argument
+
+
+ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
+malloc/free: in use at exit: 0 bytes in 0 blocks.
+malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
+For a detailed leak analysis, rerun with: --leak-check=3Dyes
+For counts of detected errors, rerun with: -v
Copied: trunk/memcheck/tests/sigkill.vgtest (from rev 4052, trunk/coreche=
ck/tests/sigkill.vgtest)
Copied: trunk/memcheck/tests/stack_changes.c (from rev 4052, trunk/corech=
eck/tests/stack_changes.c)
Copied: trunk/memcheck/tests/stack_changes.stderr.exp (from rev 4052, tru=
nk/corecheck/tests/stack_changes.stderr.exp)
Copied: trunk/memcheck/tests/stack_changes.stdout.exp (from rev 4052, tru=
nk/corecheck/tests/stack_changes.stdout.exp)
Copied: trunk/memcheck/tests/stack_changes.vgtest (from rev 4052, trunk/c=
orecheck/tests/stack_changes.vgtest)
|
|
From: Tom H. <th...@cy...> - 2005-07-01 03:12:33
|
Nightly build on audi ( i686, Red Hat 9 ) started at 2005-07-01 03:25:02 BST Checking out vex source tree ... done Building vex ... done Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 178 tests, 7 stderr failures, 1 stdout failure ================= memcheck/tests/sigaltstack (stderr) memcheck/tests/xml1 (stderr) none/tests/faultstatus (stderr) none/tests/pth_blockedsig (stderr) none/tests/pth_cancel1 (stdout) none/tests/pth_cancel1 (stderr) none/tests/pth_cancel2 (stderr) none/tests/x86/int (stderr) |