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
(10) |
2
(8) |
3
(17) |
4
(28) |
5
(22) |
6
(8) |
|
7
(8) |
8
(22) |
9
(12) |
10
(17) |
11
(14) |
12
(15) |
13
(6) |
|
14
(9) |
15
(9) |
16
(16) |
17
(13) |
18
(18) |
19
(7) |
20
(5) |
|
21
(6) |
22
(5) |
23
(11) |
24
(5) |
25
(11) |
26
(7) |
27
(15) |
|
28
(11) |
29
(12) |
30
(12) |
31
(15) |
|
|
|
|
From: <sv...@va...> - 2007-10-14 17:25:23
|
Author: sewardj
Date: 2007-10-14 18:25:22 +0100 (Sun, 14 Oct 2007)
New Revision: 6994
Log:
More tuning.
Modified:
branches/THRCHECK/thrcheck/tc_main.c
Modified: branches/THRCHECK/thrcheck/tc_main.c
===================================================================
--- branches/THRCHECK/thrcheck/tc_main.c 2007-10-14 13:42:27 UTC (rev 6993)
+++ branches/THRCHECK/thrcheck/tc_main.c 2007-10-14 17:25:22 UTC (rev 6994)
@@ -3062,7 +3062,7 @@
}
-static void cacheline_wback ( UWord way, UWord wix )
+static __attribute__((noinline)) void cacheline_wback ( UWord way, UWord wix )
{
Word i, j;
Bool anyShared = False;
@@ -3164,7 +3164,7 @@
associated with 'wix' is assumed to have already been filled in;
hence that is used to determine where in the backing store to read
from. */
-static void cacheline_fetch ( UWord way, UWord wix )
+static __attribute__((noinline)) void cacheline_fetch ( UWord way, UWord wix )
{
Word i;
Addr tag;
@@ -3249,9 +3249,9 @@
return (UWord)(a & (N_LINE_W8s - 1));
}
-static CacheLine* get_cacheline_MISS ( Addr a ); /* fwds */
-__attribute__((noinline))
-static /*inline*/ CacheLine* get_cacheline ( Addr a )
+static __attribute__((noinline))
+ CacheLine* get_cacheline_MISS ( Addr a ); /* fwds */
+static inline CacheLine* get_cacheline ( Addr a )
{
/* tag is 'a' with the in-line offset masked out,
eg a[31]..a[4] 0000 */
@@ -3266,7 +3266,8 @@
return get_cacheline_MISS( a );
}
-static CacheLine* get_cacheline_MISS ( Addr a )
+static __attribute__((noinline))
+ CacheLine* get_cacheline_MISS ( Addr a )
{
/* tag is 'a' with the in-line offset masked out,
eg a[31]..a[4] 0000 */
@@ -3365,7 +3366,7 @@
if (UNLIKELY(is_SHVAL_Invalid(svOld))) {
tl_assert(svOld == SHVAL_InvalidU);
pulldown_to_w8( cl, ix8 );
- tl_assert(is_sane_CacheLine(cl));
+ /* EXPENSIVE: tl_assert(is_sane_CacheLine(cl)); */
svOld = cl->w8[ix8];
}
svNew = msm__handle_read( thr_acc, a, svOld );
@@ -3383,7 +3384,7 @@
if (UNLIKELY(is_SHVAL_Invalid(svOld))) {
if (svOld == SHVAL_InvalidD) goto slowcase;
pulldown_to_w16( cl, ix16 );
- tl_assert(is_sane_CacheLine(cl));
+ /* EXPENSIVE: tl_assert(is_sane_CacheLine(cl)); */
svOld = cl->w16[ix16];
}
svNew = msm__handle_read( thr_acc, a, svOld );
@@ -3406,7 +3407,7 @@
if (UNLIKELY(is_SHVAL_Invalid(svOld))) {
if (svOld == SHVAL_InvalidD) goto slowcase;
pulldown_to_w32( cl, ix32 );
- tl_assert(is_sane_CacheLine(cl));
+ /* EXPENSIVE: tl_assert(is_sane_CacheLine(cl)); */
svOld = cl->w32[ix32];
}
svNew = msm__handle_read( thr_acc, a, svOld );
@@ -3450,7 +3451,7 @@
if (UNLIKELY(is_SHVAL_Invalid(svOld))) {
tl_assert(svOld == SHVAL_InvalidU);
pulldown_to_w8( cl, ix8 );
- tl_assert(is_sane_CacheLine(cl));
+ /* EXPENSIVE: tl_assert(is_sane_CacheLine(cl)); */
svOld = cl->w8[ix8];
}
svNew = msm__handle_write( thr_acc, a, svOld );
@@ -3468,7 +3469,7 @@
if (UNLIKELY(is_SHVAL_Invalid(svOld))) {
if (svOld == SHVAL_InvalidD) goto slowcase;
pulldown_to_w16( cl, ix16 );
- tl_assert(is_sane_CacheLine(cl));
+ /* EXPENSIVE: tl_assert(is_sane_CacheLine(cl)); */
svOld = cl->w16[ix16];
}
svNew = msm__handle_write( thr_acc, a, svOld );
@@ -3491,7 +3492,7 @@
if (UNLIKELY(is_SHVAL_Invalid(svOld))) {
if (svOld == SHVAL_InvalidD) goto slowcase;
pulldown_to_w32( cl, ix32 );
- tl_assert(is_sane_CacheLine(cl));
+ /* EXPENSIVE: tl_assert(is_sane_CacheLine(cl)); */
svOld = cl->w32[ix32];
}
svNew = msm__handle_write( thr_acc, a, svOld );
@@ -3535,7 +3536,7 @@
if (UNLIKELY(is_SHVAL_Invalid(svOld))) {
tl_assert(svOld == SHVAL_InvalidU);
pulldown_to_w8( cl, ix8 );
- tl_assert(is_sane_CacheLine(cl));
+ /* EXPENSIVE: tl_assert(is_sane_CacheLine(cl)); */
svOld = cl->w8[ix8];
tl_assert(is_SHVAL_valid(svOld));
}
@@ -3635,7 +3636,7 @@
if (UNLIKELY(is_SHVAL_Invalid(sv))) {
tl_assert(sv == SHVAL_InvalidU);
pulldown_to_w8( cl, ix8 );
- tl_assert(is_sane_CacheLine(cl));
+ /* tl_assert(is_sane_CacheLine(cl)); */
sv = cl->w8[ix8];
}
tl_assert(is_SHVAL_valid(sv));
|
|
From: <js...@ac...> - 2007-10-14 15:16:34
|
Nightly build on minnie ( SuSE 10.0, ppc32 ) started at 2007-10-14 09:00:01 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 220 tests, 10 stderr failures, 6 stdout failures, 0 posttest failures == memcheck/tests/leak-tree (stderr) memcheck/tests/leakotron (stdout) memcheck/tests/pointer-trace (stderr) memcheck/tests/stack_changes (stderr) memcheck/tests/xml1 (stderr) none/tests/faultstatus (stderr) none/tests/fdleak_cmsg (stderr) none/tests/mremap (stderr) none/tests/mremap2 (stdout) none/tests/ppc32/jm-fp (stdout) none/tests/ppc32/jm-fp (stderr) none/tests/ppc32/round (stdout) none/tests/ppc32/round (stderr) none/tests/ppc32/test_fx (stdout) none/tests/ppc32/test_fx (stderr) none/tests/ppc32/test_gx (stdout) |
|
From: <sv...@va...> - 2007-10-14 13:42:26
|
Author: sewardj
Date: 2007-10-14 14:42:27 +0100 (Sun, 14 Oct 2007)
New Revision: 6993
Log:
Get rid of lots of expensive "tl_assert(is_sane_CacheLine(cl))" and
try to replace with something equivalent but cheaper.
Modified:
branches/THRCHECK/thrcheck/tc_main.c
Modified: branches/THRCHECK/thrcheck/tc_main.c
===================================================================
--- branches/THRCHECK/thrcheck/tc_main.c 2007-10-14 09:51:37 UTC (rev 6992)
+++ branches/THRCHECK/thrcheck/tc_main.c 2007-10-14 13:42:27 UTC (rev 6993)
@@ -1421,6 +1421,7 @@
static XArray* dfsver_stack = NULL;
// FIXME: check this - is it really correct?
+__attribute__((noinline))
static Bool happens_before_do_dfs_from_to ( Segment* src, Segment* dst )
{
Segment* here;
@@ -1501,6 +1502,7 @@
}
}
+__attribute__((noinline))
static Bool happens_before_wrk ( SegmentID segid1, SegmentID segid2 )
{
Bool reachable;
@@ -2893,12 +2895,6 @@
{
Word i;
UInt svL, svR;
- for (i = 0; i < N_LINE_W64s; i++)
- cl->w64[i] = SHVAL_InvalidD;
- for (i = 0; i < N_LINE_W32s; i++)
- cl->w32[i] = SHVAL_InvalidD;
- for (i = 0; i < N_LINE_W16s; i++)
- cl->w16[i] = SHVAL_InvalidD;
/* build w16 layer from w8 layer. We only expect to see valid
SHVALs in the w8 layer. */
@@ -2911,6 +2907,8 @@
cl->w16[i] = svL;
cl->w8[LEFTCHILD(i)] = SHVAL_InvalidU;
cl->w8[RIGHTCHILD(i)] = SHVAL_InvalidU;
+ } else {
+ cl->w16[i] = SHVAL_InvalidD;
}
}
@@ -2922,6 +2920,8 @@
cl->w32[i] = svL;
cl->w16[LEFTCHILD(i)] = SHVAL_InvalidU;
cl->w16[RIGHTCHILD(i)] = SHVAL_InvalidU;
+ } else {
+ cl->w32[i] = SHVAL_InvalidD;
}
}
@@ -2933,10 +2933,12 @@
cl->w64[i] = svL;
cl->w32[LEFTCHILD(i)] = SHVAL_InvalidU;
cl->w32[RIGHTCHILD(i)] = SHVAL_InvalidU;
+ } else {
+ cl->w64[i] = SHVAL_InvalidD;
}
}
- tl_assert(is_sane_CacheLine(cl));
+ /* EXPENSIVE: tl_assert(is_sane_CacheLine(cl)); */
stats__cline_normalises++;
}
@@ -3103,7 +3105,7 @@
lineZ = &sm->linesZ[zix];
/* Generate the data to be stored */
- tl_assert(is_sane_CacheLine( cl ));
+ /* EXPENSIVE: tl_assert(is_sane_CacheLine( cl )); */
anyShared = sequentialise_into( shvals, N_LINE_W8s, cl );
lineZ->dict[0] = lineZ->dict[1]
@@ -3112,7 +3114,6 @@
for (i = 0; i < N_LINE_W8s; i++) {
sv = shvals[i];
- tl_assert(sv != 0);
for (j = 0; j < 4; j++) {
if (sv == lineZ->dict[j])
goto dict_ok;
@@ -3123,6 +3124,7 @@
}
tl_assert(j >= 0 && j <= 4);
if (j == 4) break; /* we'll have to use the f rep */
+ tl_assert(is_SHVAL_valid(sv));
lineZ->dict[j] = sv;
dict_ok:
write_twobit_array( lineZ->ix2s, i, j );
@@ -3142,10 +3144,11 @@
lineZ->dict[0] = lineZ->dict[2] = lineZ->dict[3] = 0;
lineZ->dict[1] = (UInt)fix;
lineF->inUse = True;
- sv = shvals[i];
- tl_assert(sv != 0);
- for (i = 0; i < N_LINE_W8s; i++)
+ for (i = 0; i < N_LINE_W8s; i++) {
+ sv = shvals[i];
+ tl_assert(is_SHVAL_valid(sv));
lineF->w32s[i] = sv;
+ }
stats__cache_F_wbacks++;
} else {
stats__cache_Z_wbacks++;
@@ -3247,7 +3250,8 @@
}
static CacheLine* get_cacheline_MISS ( Addr a ); /* fwds */
-static inline CacheLine* get_cacheline ( Addr a )
+__attribute__((noinline))
+static /*inline*/ CacheLine* get_cacheline ( Addr a )
{
/* tag is 'a' with the in-line offset masked out,
eg a[31]..a[4] 0000 */
@@ -3294,13 +3298,14 @@
}
if (is_valid_scache_tag( *tag_old_p )) {
- tl_assert(is_sane_CacheLine( cl ));
+ /* EXPENSIVE and REDUNDANT: callee does it
+ tl_assert(is_sane_CacheLine( cl )); */
cacheline_wback( way, wix );
}
/* and reload the new one */
*tag_old_p = tag;
cacheline_fetch( way, wix );
- tl_assert(is_sane_CacheLine( cl ));
+ /* EXPENSIVE tl_assert(is_sane_CacheLine( cl )); */
return cl;
}
@@ -5219,6 +5224,7 @@
VG_(printf)("}\n");
}
+__attribute__((noinline))
static void laog__add_edge ( Lock* src, Lock* dst ) {
Word keyW;
LAOGLinks* links;
@@ -5251,6 +5257,7 @@
}
}
+__attribute__((noinline))
static void laog__del_edge ( Lock* src, Lock* dst ) {
Word keyW;
LAOGLinks* links;
@@ -5273,6 +5280,7 @@
}
}
+__attribute__((noinline))
static WordSetID /* in univ_laog */ laog__succs ( Lock* lk ) {
Word keyW;
LAOGLinks* links;
@@ -5287,6 +5295,7 @@
}
}
+__attribute__((noinline))
static WordSetID /* in univ_laog */ laog__preds ( Lock* lk ) {
Word keyW;
LAOGLinks* links;
@@ -5341,6 +5350,7 @@
/* Return True iff there is a path in laog from 'src' to any of the
elements in 'dst'. */
+__attribute__((noinline))
static
Bool laog__do_dfs_from_to ( Lock* src, WordSetID dsts /* univ_lsets */ )
{
@@ -5396,6 +5406,7 @@
between 'lk' and the locks already held by 'thr' and issue a
complaint if so. Also, update the ordering graph appropriately.
*/
+__attribute__((noinline))
static void laog__pre_thread_acquires_lock (
Thread* thr, /* NB: BEFORE lock is added */
Lock* lk
@@ -5435,6 +5446,7 @@
/* Delete from 'laog' any pair mentioning a lock in locksToDelete */
+__attribute__((noinline))
static void laog__handle_one_lock_deletion ( Lock* lk )
{
WordSetID preds, succs;
@@ -5460,6 +5472,7 @@
}
}
+__attribute__((noinline))
static void laog__handle_lock_deletions (
WordSetID /* in univ_laog */ locksToDelete
)
|
|
From: <sv...@va...> - 2007-10-14 09:51:39
|
Author: sewardj
Date: 2007-10-14 10:51:37 +0100 (Sun, 14 Oct 2007)
New Revision: 6992
Log:
Performance improvements:
* shadow_mem_set{16,32,64}: operate directly at the stated granularity;
do not fragment requests unnecessarily
* shadow_mem_modify_range: reinstate more optimised version
* get_cacheline_MISS: fix bug causing only one way of each line
to ever be chosen for removal from the cache
Modified:
branches/THRCHECK/thrcheck/tc_main.c
Modified: branches/THRCHECK/thrcheck/tc_main.c
===================================================================
--- branches/THRCHECK/thrcheck/tc_main.c 2007-10-12 21:55:30 UTC (rev 6991)
+++ branches/THRCHECK/thrcheck/tc_main.c 2007-10-14 09:51:37 UTC (rev 6992)
@@ -2787,16 +2787,49 @@
tl_assert(0);
}
+__attribute__((unused))
+static void pp_CacheLine ( CacheLine* cl ) {
+ Word i;
+ if (!cl) {
+ VG_(printf)("pp_CacheLine(NULL)\n");
+ return;
+ }
+# define FMT "%08x\n"
+ for (i = 0; i < N_LINE_W64s; i++) {
+ Word iL = LEFTCHILD(i);
+ Word iR = RIGHTCHILD(i);
+ Word iLL = LEFTCHILD(iL);
+ Word iLR = RIGHTCHILD(iL);
+ Word iRL = LEFTCHILD(iR);
+ Word iRR = RIGHTCHILD(iR);
+ VG_(printf)(FMT, cl->w64[i]);
+ VG_(printf)(" " FMT, cl->w32[iL]);
+ VG_(printf)(" " FMT, cl->w16[iLL]);
+ VG_(printf)(" " FMT, cl->w8[LEFTCHILD(iLL)]);
+ VG_(printf)(" " FMT, cl->w8[RIGHTCHILD(iLL)]);
+ VG_(printf)(" " FMT, cl->w16[iLR]);
+ VG_(printf)(" " FMT, cl->w8[LEFTCHILD(iLR)]);
+ VG_(printf)(" " FMT, cl->w8[RIGHTCHILD(iLR)]);
+ VG_(printf)(" " FMT, cl->w32[iR]);
+ VG_(printf)(" " FMT, cl->w16[iRL]);
+ VG_(printf)(" " FMT, cl->w8[LEFTCHILD(iRL)]);
+ VG_(printf)(" " FMT, cl->w8[RIGHTCHILD(iRL)]);
+ VG_(printf)(" " FMT, cl->w16[iRR]);
+ VG_(printf)(" " FMT, cl->w8[LEFTCHILD(iRR)]);
+ VG_(printf)(" " FMT, cl->w8[RIGHTCHILD(iRR)]);
+ }
+# undef FMT
+}
/* Check that all paths from leaf to root are of the form
- InvalidU* one-valid-value InvalidD*
+ InvalidU* one-valid-value InvalidD*
*/
static Bool is_sane_CacheLine ( CacheLine* cl )
{
Word i, j;
UInt path[4];
- if (!cl) return False;
+ if (!cl) goto bad;
for (i = 0; i < N_LINE_W8s; i++) {
path[0] = cl->w8[i];
@@ -2805,54 +2838,26 @@
path[3] = cl->w64[ PARENT(PARENT(PARENT(i))) ];
j = 0;
while (1) {
- if (j >= 4) return False;
+ if (j >= 4) goto bad;
if (path[j] != SHVAL_InvalidU) break;
j++;
}
tl_assert(j <= 3);
- if (!is_SHVAL_valid(path[j])) return False;
+ if (!is_SHVAL_valid(path[j])) goto bad;
j++;
while (1) {
if (j == 4) break;
- if (path[j] != SHVAL_InvalidD) return False;
+ if (path[j] != SHVAL_InvalidD) goto bad;
j++;
}
/* it's ok. Move on to the next path. */
}
return True;
+ bad:
+ pp_CacheLine(cl);
+ return False;
}
-__attribute__((unused))
-static void pp_CacheLine ( CacheLine* cl ) {
- Word i;
-#define FMT "%08x\n"
- for (i = 0; i < N_LINE_W64s; i++) {
- Word iL = LEFTCHILD(i);
- Word iR = RIGHTCHILD(i);
- Word iLL = LEFTCHILD(iL);
- Word iLR = RIGHTCHILD(iL);
- Word iRL = LEFTCHILD(iR);
- Word iRR = RIGHTCHILD(iR);
- VG_(printf)(FMT, cl->w64[i]);
- VG_(printf)(" " FMT, cl->w32[iL]);
- VG_(printf)(" " FMT, cl->w32[iR]);
- VG_(printf)(" " FMT, cl->w16[iLL]);
- VG_(printf)(" " FMT, cl->w16[iLR]);
- VG_(printf)(" " FMT, cl->w16[iRL]);
- VG_(printf)(" " FMT, cl->w16[iRR]);
-
- VG_(printf)(" " FMT, cl->w8[LEFTCHILD(iLL)]);
- VG_(printf)(" " FMT, cl->w8[RIGHTCHILD(iLL)]);
- VG_(printf)(" " FMT, cl->w8[LEFTCHILD(iLR)]);
- VG_(printf)(" " FMT, cl->w8[RIGHTCHILD(iLR)]);
- VG_(printf)(" " FMT, cl->w8[LEFTCHILD(iRL)]);
- VG_(printf)(" " FMT, cl->w8[RIGHTCHILD(iRL)]);
- VG_(printf)(" " FMT, cl->w8[LEFTCHILD(iRR)]);
- VG_(printf)(" " FMT, cl->w8[RIGHTCHILD(iRR)]);
- }
-#undef FMT
-}
-
static void laog__pre_thread_acquires_lock ( Thread*, Lock* ); /* fwds */
static void laog__handle_lock_deletions ( WordSetID ); /* fwds */
@@ -3016,6 +3021,45 @@
}
+static void mb_tidy_one_cacheline ( void )
+{
+ Word i;
+ UInt shvals[N_LINE_W8s];
+ CacheLine* cl;
+ Addr tag;
+
+ static UWord way = 0; /* 0 .. 1 */
+ static UWord lno = 0; /* 0 .. N_WAY_NENT-1 */
+
+ if (way == 0) {
+ tag = cache_shmem.tags0[way];
+ cl = &cache_shmem.lyns0[way];
+ } else {
+ tag = cache_shmem.tags1[way];
+ cl = &cache_shmem.lyns1[way];
+ }
+
+ /* move cursor on */
+ lno++;
+ if (lno == N_WAY_NENT) {
+ lno = 0;
+ way++;
+ if (way == 2) way = 0;
+ }
+ tl_assert(way >= 0 && way < 2);
+ tl_assert(lno >= 0 && lno < N_WAY_NENT);
+
+ if (is_valid_scache_tag(tag)) {
+ if (0) VG_(printf)("tidying %d %d\n", (Int)way, (Int)lno);
+ /* tidy up line (way,lno) */
+ (void)sequentialise_into( shvals, N_LINE_W8s, cl );
+ for (i = 0; i < N_LINE_W8s; i++)
+ cl->w8[i] = shvals[i];
+ cacheline_normalise( cl );
+ }
+}
+
+
static void cacheline_wback ( UWord way, UWord wix )
{
Word i, j;
@@ -3109,6 +3153,8 @@
if (anyShared)
sm->mbHasShared = True;
+
+ /* mb_tidy_one_cacheline(); */
}
/* Fetch the cacheline 'wix' from the backing store. The tag
@@ -3236,7 +3282,8 @@
stats__cache_totmisses++;
/* arbitrarily choose the way to dump (not very scientific) */
- way = seed++ & 1;
+ way = seed & 1;
+ seed++; if (seed == 1021) seed = 0; /* 1021 is prime */
if (way == 0) {
cl = &cache_shmem.lyns0[wix];
@@ -3491,66 +3538,82 @@
}
static void shadow_mem_set16 ( Thread* uu_thr_acc, Addr a, UInt svNew ) {
CacheLine* cl;
- UWord ix16;
- UInt svOld;
+ UWord ix16, ix8;
stats__cline_set2s++;
if (UNLIKELY(!aligned16(a))) goto slowcase;
cl = get_cacheline(a);
ix16 = get_cacheline_offset(a) >> 1;
- svOld = cl->w16[ix16];
- if (UNLIKELY(is_SHVAL_Invalid(svOld))) {
- if (svOld == SHVAL_InvalidD) goto slowcase;
- pulldown_to_w16( cl, ix16 );
- tl_assert(is_sane_CacheLine(cl));
- svOld = cl->w16[ix16];
- tl_assert(is_SHVAL_valid(svOld));
+ /* We can't indiscriminately write on the w16 node as in the w64
+ case, as that might make the node inconsistent with its parent.
+ So first, pull down to this level. */
+ if (cl->w16[ix16] == SHVAL_InvalidU) {
+ pulldown_to_w16(cl, ix16);
}
cl->w16[ix16] = svNew;
+ ix8 = LEFTCHILD(ix16);
+ cl->w8[ ix8+0 ] = SHVAL_InvalidU;
+ cl->w8[ ix8+1 ] = SHVAL_InvalidU;
return;
- slowcase: /* misaligned, or must go further down the tree */
+ slowcase: /* misaligned */
stats__cline_2to1splits++;
shadow_mem_set8( NULL/*unused*/, a + 0, svNew );
shadow_mem_set8( NULL/*unused*/, a + 1, svNew );
}
static void shadow_mem_set32 ( Thread* uu_thr_acc, Addr a, UInt svNew ) {
CacheLine* cl;
- UWord ix32;
- UInt svOld;
+ UWord ix32, ix16, ix8;
stats__cline_set4s++;
if (UNLIKELY(!aligned32(a))) goto slowcase;
cl = get_cacheline(a);
ix32 = get_cacheline_offset(a) >> 2;
- svOld = cl->w32[ix32];
- if (UNLIKELY(is_SHVAL_Invalid(svOld))) {
- if (svOld == SHVAL_InvalidD) goto slowcase;
- pulldown_to_w32( cl, ix32 );
- tl_assert(is_sane_CacheLine(cl));
- svOld = cl->w32[ix32];
- tl_assert(is_SHVAL_valid(svOld));
+ /* We can't indiscriminately write on the w32 node as in the w64
+ case, as that might make the node inconsistent with its parent.
+ So first, pull down to this level. */
+ if (cl->w32[ix32] == SHVAL_InvalidU) {
+ pulldown_to_w32(cl, ix32);
}
cl->w32[ix32] = svNew;
+ ix16 = LEFTCHILD(ix32);
+ cl->w16[ ix16+0 ] = SHVAL_InvalidU;
+ cl->w16[ ix16+1 ] = SHVAL_InvalidU;
+ ix8 = LEFTCHILD(ix16);
+ cl->w8[ ix8+0 ] = SHVAL_InvalidU;
+ cl->w8[ ix8+1 ] = SHVAL_InvalidU;
+ cl->w8[ ix8+2 ] = SHVAL_InvalidU;
+ cl->w8[ ix8+3 ] = SHVAL_InvalidU;
return;
- slowcase: /* misaligned, or must go further down the tree */
+ slowcase: /* misaligned */
stats__cline_4to2splits++;
shadow_mem_set16( NULL/*unused*/, a + 0, svNew );
shadow_mem_set16( NULL/*unused*/, a + 2, svNew );
}
static void shadow_mem_set64 ( Thread* uu_thr_acc, Addr a, UInt svNew ) {
CacheLine* cl;
- UWord ix64;
- UInt svOld;
+ UWord ix64, ix32, ix16, ix8;
stats__cline_set8s++;
if (UNLIKELY(!aligned64(a))) goto slowcase;
cl = get_cacheline(a);
ix64 = get_cacheline_offset(a) >> 3;
- svOld = cl->w64[ix64];
- if (UNLIKELY(is_SHVAL_Invalid(svOld))) {
- tl_assert(svOld == SHVAL_InvalidD);
- goto slowcase;
- }
cl->w64[ix64] = svNew;
+ ix32 = LEFTCHILD(ix64);
+ cl->w32[ ix32+0 ] = SHVAL_InvalidU;
+ cl->w32[ ix32+1 ] = SHVAL_InvalidU;
+ ix16 = LEFTCHILD(ix32);
+ cl->w16[ ix16+0 ] = SHVAL_InvalidU;
+ cl->w16[ ix16+1 ] = SHVAL_InvalidU;
+ cl->w16[ ix16+2 ] = SHVAL_InvalidU;
+ cl->w16[ ix16+3 ] = SHVAL_InvalidU;
+ ix8 = LEFTCHILD(ix16);
+ cl->w8[ ix8+0 ] = SHVAL_InvalidU;
+ cl->w8[ ix8+1 ] = SHVAL_InvalidU;
+ cl->w8[ ix8+2 ] = SHVAL_InvalidU;
+ cl->w8[ ix8+3 ] = SHVAL_InvalidU;
+ cl->w8[ ix8+4 ] = SHVAL_InvalidU;
+ cl->w8[ ix8+5 ] = SHVAL_InvalidU;
+ cl->w8[ ix8+6 ] = SHVAL_InvalidU;
+ cl->w8[ ix8+7 ] = SHVAL_InvalidU;
return;
- slowcase: /* misaligned, or must go further down the tree */
+ slowcase: /* misaligned */
stats__cline_8to4splits++;
shadow_mem_set32( NULL/*unused*/, a + 0, svNew );
shadow_mem_set32( NULL/*unused*/, a + 4, svNew );
@@ -3596,92 +3659,78 @@
UInt opaque
)
{
- if (len == 0) return;
-
- while (!aligned64(a) && len > 0) {
- fn8( thr, a, opaque );
- a += 1;
- len -= 1;
+ /* fast track a couple of common cases */
+ if (len == 4 && aligned32(a)) {
+ fn32( thr, a, opaque );
+ return;
}
-
- if (len == 0) return;
-
- tl_assert(aligned64(a));
-
- while (len >= 8) {
+ if (len == 8 && aligned64(a)) {
fn64( thr, a, opaque );
- a += 8;
- len -= 8;
+ return;
}
+ /* be completely general (but as efficient as possible) */
if (len == 0) return;
- while (len > 0) {
- fn8( thr, a, opaque );
- a += 1;
- len -= 1;
- }
-
- tl_assert(len == 0);
-
-#if 0
-VG_(printf)("QQ %p %lu\n", a,len);
if (!aligned16(a) && len >= 1) {
fn8( thr, a, opaque );
a += 1;
len -= 1;
tl_assert(aligned16(a));
}
+ if (len == 0) return;
+
if (!aligned32(a) && len >= 2) {
fn16( thr, a, opaque );
a += 2;
len -= 2;
tl_assert(aligned32(a));
}
+ if (len == 0) return;
+
if (!aligned64(a) && len >= 4) {
fn32( thr, a, opaque );
a += 4;
len -= 4;
tl_assert(aligned64(a));
}
+ if (len == 0) return;
- if (len >= 8)
+ if (len >= 8) {
tl_assert(aligned64(a));
-
- while (len >= 8) {
- fn64( thr, a, opaque );
- a += 8;
- len -= 8;
+ while (len >= 8) {
+ fn64( thr, a, opaque );
+ a += 8;
+ len -= 8;
+ }
+ tl_assert(aligned64(a));
}
+ if (len == 0) return;
- if (len >= 8)
- tl_assert(aligned64(a));
-
+ if (len >= 4)
+ tl_assert(aligned32(a));
if (len >= 4) {
fn32( thr, a, opaque );
a += 4;
len -= 4;
}
+ if (len == 0) return;
- if (len >= 4)
- tl_assert(aligned32(a));
-
+ if (len >= 2)
+ tl_assert(aligned16(a));
if (len >= 2) {
fn16( thr, a, opaque );
a += 2;
len -= 2;
}
+ if (len == 0) return;
- if (len >= 2)
- tl_assert(aligned16(a));
-
if (len >= 1) {
fn8( thr, a, opaque );
a += 1;
len -= 1;
}
tl_assert(len == 0);
-#endif
}
/* Block-copy states (needed for implementing realloc()). */
@@ -6841,19 +6890,19 @@
}
VG_(printf)("\n");
- VG_(printf)(" hbefore: %10lu queries\n", stats__hbefore_queries);
- VG_(printf)(" hbefore: %10lu cache 0 hits\n", stats__hbefore_cache0s);
- VG_(printf)(" hbefore: %10lu cache > 0 hits\n", stats__hbefore_cacheNs);
- VG_(printf)(" hbefore: %10lu graph searches\n", stats__hbefore_gsearches);
- VG_(printf)(" hbefore: %10lu of which slow\n",
+ VG_(printf)(" hbefore: %,10lu queries\n", stats__hbefore_queries);
+ VG_(printf)(" hbefore: %,10lu cache 0 hits\n", stats__hbefore_cache0s);
+ VG_(printf)(" hbefore: %,10lu cache > 0 hits\n", stats__hbefore_cacheNs);
+ VG_(printf)(" hbefore: %,10lu graph searches\n", stats__hbefore_gsearches);
+ VG_(printf)(" hbefore: %,10lu of which slow\n",
stats__hbefore_gsearches - stats__hbefore_gsearchFs);
- VG_(printf)(" hbefore: %10lu stack high water mark\n",
+ VG_(printf)(" hbefore: %,10lu stack high water mark\n",
stats__hbefore_stk_hwm);
- VG_(printf)(" hbefore: %10lu cache invals\n", stats__hbefore_invals);
- VG_(printf)(" hbefore: %10lu probes\n", stats__hbefore_probes);
+ VG_(printf)(" hbefore: %,10lu cache invals\n", stats__hbefore_invals);
+ VG_(printf)(" hbefore: %,10lu probes\n", stats__hbefore_probes);
VG_(printf)("\n");
- VG_(printf)("segments: %10lu Segment objects allocated\n",
+ VG_(printf)("segments: %,10lu Segment objects allocated\n",
stats__mk_Segment);
VG_(printf)("locksets: %8d unique lock sets\n",
(Int)TC_(cardinalityWSU)( univ_lsets ));
@@ -6875,73 +6924,73 @@
(Int)(string_table ? TC_(sizeFM)( string_table ) : 0) );
VG_(printf)("\n");
- VG_(printf)(" msm: %10lu %10lu rd/wr_Excl_nochange\n",
+ VG_(printf)(" msm: %,12lu %,12lu rd/wr_Excl_nochange\n",
stats__msm_r32_Excl_nochange, stats__msm_w32_Excl_nochange);
- VG_(printf)(" msm: %10lu %10lu rd/wr_Excl_transfer\n",
+ VG_(printf)(" msm: %,12lu %,12lu rd/wr_Excl_transfer\n",
stats__msm_r32_Excl_transfer, stats__msm_w32_Excl_transfer);
- VG_(printf)(" msm: %10lu %10lu rd/wr_Excl_to_ShR/ShM\n",
+ VG_(printf)(" msm: %,12lu %,12lu rd/wr_Excl_to_ShR/ShM\n",
stats__msm_r32_Excl_to_ShR, stats__msm_w32_Excl_to_ShM);
- VG_(printf)(" msm: %10lu %10lu rd/wr_ShR_to_ShR/ShM\n",
+ VG_(printf)(" msm: %,12lu %,12lu rd/wr_ShR_to_ShR/ShM\n",
stats__msm_r32_ShR_to_ShR, stats__msm_w32_ShR_to_ShM);
- VG_(printf)(" msm: %10lu %10lu rd/wr_ShM_to_ShM\n",
+ VG_(printf)(" msm: %,12lu %,12lu rd/wr_ShM_to_ShM\n",
stats__msm_r32_ShM_to_ShM, stats__msm_w32_ShM_to_ShM);
- VG_(printf)(" msm: %10lu %10lu rd/wr_New_to_Excl\n",
+ VG_(printf)(" msm: %,12lu %,12lu rd/wr_New_to_Excl\n",
stats__msm_r32_New_to_Excl, stats__msm_w32_New_to_Excl);
- VG_(printf)(" msm: %10lu %10lu rd/wr_NoAccess\n",
+ VG_(printf)(" msm: %,12lu %,12lu rd/wr_NoAccess\n",
stats__msm_r32_NoAccess, stats__msm_w32_NoAccess);
VG_(printf)("\n");
- VG_(printf)(" secmaps: %10lu allocd (%10lu g-a-range)\n",
+ VG_(printf)(" secmaps: %,10lu allocd (%,10lu g-a-range)\n",
stats__secmaps_allocd,
stats__secmap_ga_space_covered);
- VG_(printf)(" linesZ: %10lu allocd (%10lu bytes occupied)\n",
+ VG_(printf)(" linesZ: %,10lu allocd (%,10lu bytes occupied)\n",
stats__secmap_linesZ_allocd,
stats__secmap_linesZ_bytes);
- VG_(printf)(" linesF: %10lu allocd (%10lu bytes occupied)\n",
+ VG_(printf)(" linesF: %,10lu allocd (%,10lu bytes occupied)\n",
stats__secmap_linesF_allocd,
stats__secmap_linesF_bytes);
- VG_(printf)(" secmaps: %10lu iterator steppings\n",
+ VG_(printf)(" secmaps: %,10lu iterator steppings\n",
stats__secmap_iterator_steppings);
VG_(printf)("\n");
- VG_(printf)(" cache: %,10lu totrefs (%,lu misses)\n",
+ VG_(printf)(" cache: %,lu totrefs (%,lu misses)\n",
stats__cache_totrefs, stats__cache_totmisses );
- VG_(printf)(" cache: %8lu Z-fetch, %8lu F-fetch\n",
+ VG_(printf)(" cache: %,10lu Z-fetch, %,10lu F-fetch\n",
stats__cache_Z_fetches, stats__cache_F_fetches );
- VG_(printf)(" cache: %8lu Z-wback, %8lu F-wback\n",
+ VG_(printf)(" cache: %,10lu Z-wback, %,10lu F-wback\n",
stats__cache_Z_wbacks, stats__cache_F_wbacks );
- VG_(printf)(" cache: %8lu invals, %8lu flushes\n",
+ VG_(printf)(" cache: %,10lu invals, %,10lu flushes\n",
stats__cache_invals, stats__cache_flushes );
VG_(printf)("\n");
- VG_(printf)(" cline: %10lu normalises\n",
+ VG_(printf)(" cline: %,10lu normalises\n",
stats__cline_normalises );
- VG_(printf)(" cline: reads 8/4/2/1: %10lu %10lu %10lu %10lu\n",
+ VG_(printf)(" cline: reads 8/4/2/1: %,12lu %,12lu %,12lu %,12lu\n",
stats__cline_read8s,
stats__cline_read4s,
stats__cline_read2s,
stats__cline_read1s );
- VG_(printf)(" cline: writes 8/4/2/1: %10lu %10lu %10lu %10lu\n",
+ VG_(printf)(" cline: writes 8/4/2/1: %,12lu %,12lu %,12lu %,12lu\n",
stats__cline_write8s,
stats__cline_write4s,
stats__cline_write2s,
stats__cline_write1s );
- VG_(printf)(" cline: sets 8/4/2/1: %10lu %10lu %10lu %10lu\n",
+ VG_(printf)(" cline: sets 8/4/2/1: %,12lu %,12lu %,12lu %,12lu\n",
stats__cline_set8s,
stats__cline_set4s,
stats__cline_set2s,
stats__cline_set1s );
- VG_(printf)(" cline: get1s %lu, copy1s %lu\n",
+ VG_(printf)(" cline: get1s %,lu, copy1s %,lu\n",
stats__cline_get1s, stats__cline_copy1s );
-
- VG_(printf)(" cline: splits: 8to4 %10lu, 4to2 %10lu, 2to1 %10lu\n",
+ VG_(printf)(" cline: splits: 8to4 %,12lu 4to2 %,12lu 2to1 %,12lu\n",
stats__cline_8to4splits,
stats__cline_4to2splits,
stats__cline_2to1splits );
- VG_(printf)(" cline: pulldowns: 8to4 %10lu, 4to2 %10lu, 2to1 %10lu\n",
+ VG_(printf)(" cline: pulldowns: 8to4 %,12lu 4to2 %,12lu 2to1 %,12lu\n",
stats__cline_8to4pulldown,
stats__cline_4to2pulldown,
stats__cline_2to1pulldown );
+
VG_(printf)("\n");
}
}
|
|
From: Tom H. <th...@cy...> - 2007-10-14 02:31:35
|
Nightly build on alvis ( i686, Red Hat 7.3 ) started at 2007-10-14 03:15:01 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 260 tests, 27 stderr failures, 1 stdout failure, 0 posttest failures == memcheck/tests/addressable (stderr) memcheck/tests/badjump (stderr) memcheck/tests/describe-block (stderr) memcheck/tests/erringfds (stderr) memcheck/tests/leak-0 (stderr) memcheck/tests/leak-cycle (stderr) memcheck/tests/leak-pool-0 (stderr) memcheck/tests/leak-pool-1 (stderr) memcheck/tests/leak-pool-2 (stderr) memcheck/tests/leak-pool-3 (stderr) memcheck/tests/leak-pool-4 (stderr) memcheck/tests/leak-pool-5 (stderr) memcheck/tests/leak-regroot (stderr) memcheck/tests/leak-tree (stderr) memcheck/tests/long_namespace_xml (stderr) memcheck/tests/match-overrun (stderr) memcheck/tests/partial_load_dflt (stderr) memcheck/tests/partial_load_ok (stderr) memcheck/tests/partiallydefinedeq (stderr) memcheck/tests/pointer-trace (stderr) memcheck/tests/sigkill (stderr) memcheck/tests/stack_changes (stderr) memcheck/tests/x86/scalar (stderr) memcheck/tests/x86/scalar_supp (stderr) memcheck/tests/x86/xor-undef-x86 (stderr) memcheck/tests/xml1 (stderr) none/tests/mremap (stderr) none/tests/mremap2 (stdout) |
|
From: Tom H. <th...@cy...> - 2007-10-14 02:23:44
|
Nightly build on lloyd ( x86_64, Fedora 7 ) started at 2007-10-14 03:05:06 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 293 tests, 4 stderr failures, 2 stdout failures, 0 posttest failures == memcheck/tests/pointer-trace (stderr) memcheck/tests/vcpu_fnfns (stdout) memcheck/tests/x86/scalar (stderr) memcheck/tests/xml1 (stderr) none/tests/mremap (stderr) none/tests/mremap2 (stdout) |
|
From: Tom H. <th...@cy...> - 2007-10-14 02:23:22
|
Nightly build on dellow ( x86_64, Fedora 7 ) started at 2007-10-14 03:10:04 BST Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 293 tests, 4 stderr failures, 2 stdout failures, 0 posttest failures == memcheck/tests/pointer-trace (stderr) memcheck/tests/vcpu_fnfns (stdout) memcheck/tests/x86/scalar (stderr) memcheck/tests/xml1 (stderr) none/tests/mremap (stderr) none/tests/mremap2 (stdout) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 293 tests, 4 stderr failures, 3 stdout failures, 0 posttest failures == memcheck/tests/pointer-trace (stderr) memcheck/tests/vcpu_fnfns (stdout) memcheck/tests/x86/scalar (stderr) memcheck/tests/xml1 (stderr) none/tests/mremap (stderr) none/tests/mremap2 (stdout) none/tests/pth_detached (stdout) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Sun Oct 14 03:16:46 2007 --- new.short Sun Oct 14 03:23:25 2007 *************** *** 8,10 **** ! == 293 tests, 4 stderr failures, 3 stdout failures, 0 posttest failures == memcheck/tests/pointer-trace (stderr) --- 8,10 ---- ! == 293 tests, 4 stderr failures, 2 stdout failures, 0 posttest failures == memcheck/tests/pointer-trace (stderr) *************** *** 15,17 **** none/tests/mremap2 (stdout) - none/tests/pth_detached (stdout) --- 15,16 ---- |
|
From: Tom H. <th...@cy...> - 2007-10-14 02:10:53
|
Nightly build on gill ( x86_64, Fedora Core 2 ) started at 2007-10-14 03:00:03 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 295 tests, 6 stderr failures, 1 stdout failure, 0 posttest failures == memcheck/tests/pointer-trace (stderr) memcheck/tests/stack_switch (stderr) memcheck/tests/x86/scalar (stderr) memcheck/tests/x86/scalar_supp (stderr) none/tests/fdleak_fcntl (stderr) none/tests/mremap (stderr) none/tests/mremap2 (stdout) |
|
From: <js...@ac...> - 2007-10-14 00:17:50
|
Nightly build on g5 ( SuSE 10.1, ppc970 ) started at 2007-10-14 02:00:01 CEST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 228 tests, 6 stderr failures, 2 stdout failures, 0 posttest failures == memcheck/tests/deep_templates (stdout) memcheck/tests/leak-cycle (stderr) memcheck/tests/leak-tree (stderr) memcheck/tests/pointer-trace (stderr) none/tests/faultstatus (stderr) none/tests/fdleak_cmsg (stderr) none/tests/mremap (stderr) none/tests/mremap2 (stdout) |