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
(26) |
2
(24) |
|
3
(21) |
4
(23) |
5
(19) |
6
(24) |
7
(27) |
8
(28) |
9
(18) |
|
10
(15) |
11
(14) |
12
(17) |
13
(18) |
14
(24) |
15
(27) |
16
(17) |
|
17
(26) |
18
(22) |
19
(27) |
20
(25) |
21
(19) |
22
(22) |
23
(17) |
|
24
(30) |
25
(21) |
26
(14) |
27
(20) |
28
(25) |
29
(23) |
30
(22) |
|
From: <sv...@va...> - 2012-06-01 22:04:35
|
florian 2012-06-01 23:04:27 +0100 (Fri, 01 Jun 2012)
New Revision: 2364
Log:
Fix a cut'n paste error.
Modified files:
trunk/priv/host_arm_isel.c
Modified: trunk/priv/host_arm_isel.c (+2 -2)
===================================================================
--- trunk/priv/host_arm_isel.c 2012-06-01 21:41:24 +01:00 (rev 2363)
+++ trunk/priv/host_arm_isel.c 2012-06-01 23:04:27 +01:00 (rev 2364)
@@ -1274,7 +1274,7 @@
|| e->Iex.Binop.op == Iop_GetElem16x4
|| e->Iex.Binop.op == Iop_GetElem32x2) {
HReg res = newVRegI(env);
- HReg arg = iselNeon64Expr(env, e->Iex.Triop.arg1);
+ HReg arg = iselNeon64Expr(env, e->Iex.Binop.arg1);
UInt index, size;
if (e->Iex.Binop.arg2->tag != Iex_Const ||
typeOfIRExpr(env->type_env, e->Iex.Binop.arg2) != Ity_I8) {
@@ -1299,7 +1299,7 @@
|| e->Iex.Binop.op == Iop_GetElem16x8
|| e->Iex.Binop.op == Iop_GetElem32x4) {
HReg res = newVRegI(env);
- HReg arg = iselNeonExpr(env, e->Iex.Triop.arg1);
+ HReg arg = iselNeonExpr(env, e->Iex.Binop.arg1);
UInt index, size;
if (e->Iex.Binop.arg2->tag != Iex_Const ||
typeOfIRExpr(env->type_env, e->Iex.Binop.arg2) != Ity_I8) {
|
|
From: Josef W. <Jos...@gm...> - 2012-06-01 21:29:03
|
Am 01.06.2012 18:25, schrieb Julian Seward:
>
> Hi Josef, Nick,
>
> Do either of you have any objection if I commit basically the patch
> below, after some testing?
I am fine with it.
The only issue is that the user will get a panic message from the
simulator for 32-byte (AVX) accesses when he configures a cache line
size of 16.
It would be nice to avoid that as you already suggested: allow a tool
to get the maximum guest register size, and let cachegrind/callgrind
check that the cache line size is not smaller (instead of the current
constant 16).
Josef
I am trying to finish up the AVX infrastructure
> changes this weekend and this is the last thing on my list.
>
> Thanks.
>
> J
>
>
> On Tuesday, May 22, 2012, Josef Weidendorfer wrote:
>> Am 22.05.2012 01:24, schrieb Nicholas Nethercote:
>>> On Mon, May 21, 2012 at 7:22 AM, Julian Seward<js...@ac...> wrote:
>>>> I recently added some AVX support to V, and as a result added a new type
>>>> of 32-byte values (Ity_V256) to IR. Loads and stores of such values
>>>> cause Cachegrind and Callgrind to assert, because the size (32 bytes)
>>>> is larger than MIN_LINE_SIZE, which is 16.
>>>>
>>>> As they currently are, both tools refuse to process memory accesses
>>>> bigger than 16, on the basis that the minimum possible line size is 16,
>>>> and so a 16 byte access could access 2 adjacent lines, which is a
>>>> situation they are prepared to handle. But not 3 lines, which is a
>>>> possible case for a 32 byte access w/ 16 byte lines (something for
>>>> which I'm sure no hardware actually exists).
>>>
>>> Can we model the 32-byte accesses correctly and just assert if the 3
>>> line case occurs?
>>
>> As far as I understand, the assertion in the simulator should not
>> trigger in any case, as memory access lengths are always cut down to
>> MIN_LINE_SIZE at the moment.
>>
>> This is needed, as there are some rare instructions with larger memory
>> accesses, such as PUSHA.
>>
>> I think it makes more sense to cut access lengths down to the real
>> minimum of used line sizes, using the patch below.
>>
>> Hmm. If people explicitly configure for 16-byte line size, and use AVX,
>> this will result in wrong simulations because of the large number of
>> cut down access sizes. I see these options:
>> * if we detect a processor with AVX, make 32 the minimal accepted
>> line size in manual configuration
>> * count the number of cuts, and print a warning if a threshould of e.g.
>> 10000 is reached ?
>> * handle accesses straddling>2 lines correctly
>>
>> Here is the result of vg_perf (vg_minline is with the patch), also
>> running "none" to see the measurement noise produced on my laptop. It
>> looks like all numbers more or less stay the same.
>>
>> Josef
>>
>> weidendo@lapbode134:~/SW/GitRepos/vg/valgrind (master)> perl
>> perf/vg_perf --tools=none,cachegrind --vg=. --vg=../vg-minline perf/
>> -- Running tests in perf ----------------------------------------------
>> -- bigcode1 --
>> bigcode1 . :0.14s no: 2.0s (14.5x, -----) ca: 6.3s (44.7x, -----)
>> bigcode1 vg-minline:0.14s no: 2.0s (14.3x, 1.5%) ca: 6.3s (44.7x, 0.0%)
>> -- bigcode2 --
>> bigcode2 . :0.14s no: 4.8s (34.6x, -----) ca:10.4s (74.5x, -----)
>> bigcode2 vg-minline:0.14s no: 4.8s (34.3x, 0.8%) ca:10.4s (74.3x, 0.3%)
>> -- bz2 --
>> bz2 . :0.67s no: 2.6s ( 3.9x, -----) ca:18.4s (27.5x, -----)
>> bz2 vg-minline:0.67s no: 2.6s ( 3.9x, -0.4%) ca:18.1s (27.1x, 1.6%)
>> -- fbench --
>> fbench . :0.28s no: 1.2s ( 4.4x, -----) ca: 5.1s (18.1x, -----)
>> fbench vg-minline:0.28s no: 1.2s ( 4.4x, 0.0%) ca: 5.1s (18.1x, 0.4%)
>> -- ffbench --
>> ffbench . :0.26s no: 1.2s ( 4.5x, -----) ca: 6.4s (24.5x, -----)
>> ffbench vg-minline:0.26s no: 1.2s ( 4.5x, 0.9%) ca: 6.4s (24.5x, -0.2%)
>> -- heap --
>> heap . :0.12s no: 0.8s ( 6.4x, -----) ca: 5.3s (44.3x, -----)
>> heap vg-minline:0.12s no: 0.8s ( 6.8x, -5.2%) ca: 5.3s (44.6x, -0.6%)
>> -- heap_pdb4 --
>> heap_pdb4 . :0.12s no: 0.9s ( 7.3x, -----) ca: 5.8s (48.3x,
>> -----) heap_pdb4 vg-minline:0.12s no: 0.8s ( 7.1x, 3.4%) ca: 5.8s
>> (48.1x, 0.5%) -- many-loss-records --
>> many-loss-records . :0.01s no: 0.3s (32.0x, -----) ca: 1.0s
>> (98.0x, -----)
>> many-loss-records vg-minline:0.01s no: 0.3s (29.0x, 9.4%) ca: 1.0s
>> (97.0x, 1.0%)
>> -- many-xpts --
>> many-xpts . :0.05s no: 0.4s ( 7.8x, -----) ca: 1.4s (28.0x,
>> -----) many-xpts vg-minline:0.05s no: 0.4s ( 7.6x, 2.6%) ca: 1.4s
>> (28.4x, -1.4%) -- sarp --
>> sarp . :0.03s no: 0.3s (11.0x, -----) ca: 1.4s (47.3x, -----)
>> sarp vg-minline:0.03s no: 0.3s (11.0x, 0.0%) ca: 1.4s (46.7x, 1.4%)
>> -- tinycc --
>> tinycc . :0.21s no: 1.7s ( 7.9x, -----) ca:11.5s (54.8x, -----)
>> tinycc vg-minline:0.21s no: 1.7s ( 8.0x, -1.8%) ca:11.4s (54.3x, 0.9%)
>> -- Finished tests in perf ----------------------------------------------
>>
>>
>>
>> ====================================================================
>>
>> diff --git a/cachegrind/cg_main.c b/cachegrind/cg_main.c
>> index 4b36204..9982f23 100644
>> --- a/cachegrind/cg_main.c
>> +++ b/cachegrind/cg_main.c
>> @@ -69,6 +69,13 @@ static Bool clo_cache_sim = True; /* do cache
>> simulation? */
>> static Bool clo_branch_sim = False; /* do branch simulation? */
>> static Char* clo_cachegrind_out_file = "cachegrind.out.%p";
>>
>> +
>> +/*------------------------------------------------------------*/
>> +/*--- Cachesim configuration ---*/
>> +/*------------------------------------------------------------*/
>> +
>> +static Int min_line_size = 0; /* min of L1 and LL cache line sizes */
>> +
>> /*------------------------------------------------------------*/
>> /*--- Types and Data Structures ---*/
>> /*------------------------------------------------------------*/
>> @@ -846,7 +853,7 @@ void addEvent_Dr ( CgState* cgs, InstrInfo* inode,
>> Int datasize, IRAtom*
>> {
>> Event* evt;
>> tl_assert(isIRAtom(ea));
>> - tl_assert(datasize>= 1&& datasize<= MIN_LINE_SIZE);
>> + tl_assert(datasize>= 1&& datasize<= min_line_size);
>> if (!clo_cache_sim)
>> return;
>> if (cgs->events_used == N_EVENTS)
>> @@ -868,7 +875,7 @@ void addEvent_Dw ( CgState* cgs, InstrInfo* inode,
>> Int datasize, IRAtom*
>> Event* evt;
>>
>> tl_assert(isIRAtom(ea));
>> - tl_assert(datasize>= 1&& datasize<= MIN_LINE_SIZE);
>> + tl_assert(datasize>= 1&& datasize<= min_line_size);
>>
>> if (!clo_cache_sim)
>> return;
>> @@ -1058,8 +1065,8 @@ IRSB* cg_instrument ( VgCallbackClosure* closure,
>> // instructions will be done inaccurately, but they're
>> // very rare and this avoids errors from hitting more
>> // than two cache lines in the simulation.
>> - if (dataSize> MIN_LINE_SIZE)
>> - dataSize = MIN_LINE_SIZE;
>> + if (dataSize> min_line_size)
>> + dataSize = min_line_size;
>> if (d->mFx == Ifx_Read || d->mFx == Ifx_Modify)
>> addEvent_Dr(&cgs, curr_inode, dataSize, d->mAddr );
>> if (d->mFx == Ifx_Write || d->mFx == Ifx_Modify)
>> @@ -1085,8 +1092,8 @@ IRSB* cg_instrument ( VgCallbackClosure* closure,
>> if (cas->dataHi != NULL)
>> dataSize *= 2; /* since it's a doubleword-CAS */
>> /* I don't think this can ever happen, but play safe. */
>> - if (dataSize> MIN_LINE_SIZE)
>> - dataSize = MIN_LINE_SIZE;
>> + if (dataSize> min_line_size)
>> + dataSize = min_line_size;
>> addEvent_Dr(&cgs, curr_inode, dataSize, cas->addr );
>> addEvent_Dw(&cgs, curr_inode, dataSize, cas->addr );
>> break;
>> @@ -1724,6 +1731,12 @@ static void cg_post_clo_init(void)
>> &clo_D1_cache,
>> &clo_LL_cache);
>>
>> + // min_line_size is used to make sure that we never feed
>> + // accesses to the simulator straddling more than two
>> + // cache lines at any cache level
>> + min_line_size = (I1c.size< D1c.size) ? I1c.size : D1c.size;
>> + min_line_size = (LLc.size< min_line_size) ? LLc.size : min_line_size;
>> +
>> cachesim_I1_initcache(I1c);
>> cachesim_D1_initcache(D1c);
>> cachesim_LL_initcache(LLc);
>> ====================================================================
>
>
> ------------------------------------------------------------------------------
> Live Security Virtual Conference
> Exclusive live event will cover all the ways today's security and
> threat landscape has changed and how IT managers can respond. Discussions
> will include endpoint security, mobile security and the latest in malware
> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
> _______________________________________________
> Valgrind-developers mailing list
> Val...@li...
> https://lists.sourceforge.net/lists/listinfo/valgrind-developers
>
|
|
From: <sv...@va...> - 2012-06-01 20:43:13
|
florian 2012-06-01 21:43:03 +0100 (Fri, 01 Jun 2012)
New Revision: 12599
Log:
Ripple from VEX r2363. Part of reducing size of IRExpr.
Modified files:
trunk/memcheck/mc_translate.c
Modified: trunk/memcheck/mc_translate.c (+11 -11)
===================================================================
--- trunk/memcheck/mc_translate.c 2012-06-01 17:11:41 +01:00 (rev 12598)
+++ trunk/memcheck/mc_translate.c 2012-06-01 21:43:03 +01:00 (rev 12599)
@@ -3824,9 +3824,9 @@
case Iex_Qop:
return expr2vbits_Qop(
mce,
- e->Iex.Qop.op,
- e->Iex.Qop.arg1, e->Iex.Qop.arg2,
- e->Iex.Qop.arg3, e->Iex.Qop.arg4
+ e->Iex.Qop.details->op,
+ e->Iex.Qop.details->arg1, e->Iex.Qop.details->arg2,
+ e->Iex.Qop.details->arg3, e->Iex.Qop.details->arg4
);
case Iex_Triop:
@@ -4985,10 +4985,10 @@
|| isBogusAtom(e->Iex.Triop.arg2)
|| isBogusAtom(e->Iex.Triop.arg3);
case Iex_Qop:
- return isBogusAtom(e->Iex.Qop.arg1)
- || isBogusAtom(e->Iex.Qop.arg2)
- || isBogusAtom(e->Iex.Qop.arg3)
- || isBogusAtom(e->Iex.Qop.arg4);
+ return isBogusAtom(e->Iex.Qop.details->arg1)
+ || isBogusAtom(e->Iex.Qop.details->arg2)
+ || isBogusAtom(e->Iex.Qop.details->arg3)
+ || isBogusAtom(e->Iex.Qop.details->arg4);
case Iex_Mux0X:
return isBogusAtom(e->Iex.Mux0X.cond)
|| isBogusAtom(e->Iex.Mux0X.expr0)
@@ -5733,10 +5733,10 @@
return gen_maxU32( mce, b1, gen_maxU32( mce, b2, b3 ));
}
case Iex_Qop: {
- IRAtom* b1 = schemeE( mce, e->Iex.Qop.arg1 );
- IRAtom* b2 = schemeE( mce, e->Iex.Qop.arg2 );
- IRAtom* b3 = schemeE( mce, e->Iex.Qop.arg3 );
- IRAtom* b4 = schemeE( mce, e->Iex.Qop.arg4 );
+ IRAtom* b1 = schemeE( mce, e->Iex.Qop.details->arg1 );
+ IRAtom* b2 = schemeE( mce, e->Iex.Qop.details->arg2 );
+ IRAtom* b3 = schemeE( mce, e->Iex.Qop.details->arg3 );
+ IRAtom* b4 = schemeE( mce, e->Iex.Qop.details->arg4 );
return gen_maxU32( mce, gen_maxU32( mce, b1, b2 ),
gen_maxU32( mce, b3, b4 ) );
}
|
|
From: <sv...@va...> - 2012-06-01 20:41:40
|
florian 2012-06-01 21:41:24 +0100 (Fri, 01 Jun 2012)
New Revision: 2363
Log:
Put the Qop member into a separate struct (IRQop) and link to that
from IRExpr. Reduces size of IRExpr from 48 to 40 bytes on LP64.
Modified files:
trunk/priv/host_amd64_isel.c
trunk/priv/host_ppc_isel.c
trunk/priv/host_s390_isel.c
trunk/priv/ir_defs.c
trunk/priv/ir_opt.c
trunk/priv/main_main.c
trunk/pub/libvex_ir.h
Modified: trunk/priv/ir_opt.c (+41 -37)
===================================================================
--- trunk/priv/ir_opt.c 2012-06-01 17:09:50 +01:00 (rev 2362)
+++ trunk/priv/ir_opt.c 2012-06-01 21:41:24 +01:00 (rev 2363)
@@ -290,15 +290,17 @@
IRStmt_WrTmp(t1, ex));
return IRExpr_RdTmp(t1);
- case Iex_Qop:
+ case Iex_Qop: {
+ IRQop* qop = ex->Iex.Qop.details;
t1 = newIRTemp(bb->tyenv, ty);
addStmtToIRSB(bb, IRStmt_WrTmp(t1,
- IRExpr_Qop(ex->Iex.Qop.op,
- flatten_Expr(bb, ex->Iex.Qop.arg1),
- flatten_Expr(bb, ex->Iex.Qop.arg2),
- flatten_Expr(bb, ex->Iex.Qop.arg3),
- flatten_Expr(bb, ex->Iex.Qop.arg4))));
+ IRExpr_Qop(qop->op,
+ flatten_Expr(bb, qop->arg1),
+ flatten_Expr(bb, qop->arg2),
+ flatten_Expr(bb, qop->arg3),
+ flatten_Expr(bb, qop->arg4))));
return IRExpr_RdTmp(t1);
+ }
case Iex_Triop:
t1 = newIRTemp(bb->tyenv, ty);
@@ -2038,18 +2040,20 @@
ex->Iex.GetI.bias
);
- case Iex_Qop:
- vassert(isIRAtom(ex->Iex.Qop.arg1));
- vassert(isIRAtom(ex->Iex.Qop.arg2));
- vassert(isIRAtom(ex->Iex.Qop.arg3));
- vassert(isIRAtom(ex->Iex.Qop.arg4));
+ case Iex_Qop: {
+ IRQop* qop = ex->Iex.Qop.details;
+ vassert(isIRAtom(qop->arg1));
+ vassert(isIRAtom(qop->arg2));
+ vassert(isIRAtom(qop->arg3));
+ vassert(isIRAtom(qop->arg4));
return IRExpr_Qop(
- ex->Iex.Qop.op,
- subst_Expr(env, ex->Iex.Qop.arg1),
- subst_Expr(env, ex->Iex.Qop.arg2),
- subst_Expr(env, ex->Iex.Qop.arg3),
- subst_Expr(env, ex->Iex.Qop.arg4)
+ qop->op,
+ subst_Expr(env, qop->arg1),
+ subst_Expr(env, qop->arg2),
+ subst_Expr(env, qop->arg3),
+ subst_Expr(env, qop->arg4)
);
+ }
case Iex_Triop:
vassert(isIRAtom(ex->Iex.Triop.arg1));
@@ -2383,10 +2387,10 @@
addUses_Expr(set, e->Iex.Load.addr);
return;
case Iex_Qop:
- addUses_Expr(set, e->Iex.Qop.arg1);
- addUses_Expr(set, e->Iex.Qop.arg2);
- addUses_Expr(set, e->Iex.Qop.arg3);
- addUses_Expr(set, e->Iex.Qop.arg4);
+ addUses_Expr(set, e->Iex.Qop.details->arg1);
+ addUses_Expr(set, e->Iex.Qop.details->arg2);
+ addUses_Expr(set, e->Iex.Qop.details->arg3);
+ addUses_Expr(set, e->Iex.Qop.details->arg4);
return;
case Iex_Triop:
addUses_Expr(set, e->Iex.Triop.arg1);
@@ -3813,10 +3817,10 @@
deltaIRExpr(e->Iex.GetI.ix, delta);
break;
case Iex_Qop:
- deltaIRExpr(e->Iex.Qop.arg1, delta);
- deltaIRExpr(e->Iex.Qop.arg2, delta);
- deltaIRExpr(e->Iex.Qop.arg3, delta);
- deltaIRExpr(e->Iex.Qop.arg4, delta);
+ deltaIRExpr(e->Iex.Qop.details->arg1, delta);
+ deltaIRExpr(e->Iex.Qop.details->arg2, delta);
+ deltaIRExpr(e->Iex.Qop.details->arg3, delta);
+ deltaIRExpr(e->Iex.Qop.details->arg4, delta);
break;
case Iex_Triop:
deltaIRExpr(e->Iex.Triop.arg1, delta);
@@ -4208,10 +4212,10 @@
setHints_Expr(doesLoad, doesGet, e->Iex.Mux0X.exprX);
return;
case Iex_Qop:
- setHints_Expr(doesLoad, doesGet, e->Iex.Qop.arg1);
- setHints_Expr(doesLoad, doesGet, e->Iex.Qop.arg2);
- setHints_Expr(doesLoad, doesGet, e->Iex.Qop.arg3);
- setHints_Expr(doesLoad, doesGet, e->Iex.Qop.arg4);
+ setHints_Expr(doesLoad, doesGet, e->Iex.Qop.details->arg1);
+ setHints_Expr(doesLoad, doesGet, e->Iex.Qop.details->arg2);
+ setHints_Expr(doesLoad, doesGet, e->Iex.Qop.details->arg3);
+ setHints_Expr(doesLoad, doesGet, e->Iex.Qop.details->arg4);
return;
case Iex_Triop:
setHints_Expr(doesLoad, doesGet, e->Iex.Triop.arg1);
@@ -4281,10 +4285,10 @@
return;
case Iex_Qop:
- aoccCount_Expr(uses, e->Iex.Qop.arg1);
- aoccCount_Expr(uses, e->Iex.Qop.arg2);
- aoccCount_Expr(uses, e->Iex.Qop.arg3);
- aoccCount_Expr(uses, e->Iex.Qop.arg4);
+ aoccCount_Expr(uses, e->Iex.Qop.details->arg1);
+ aoccCount_Expr(uses, e->Iex.Qop.details->arg2);
+ aoccCount_Expr(uses, e->Iex.Qop.details->arg3);
+ aoccCount_Expr(uses, e->Iex.Qop.details->arg4);
return;
case Iex_Triop:
@@ -4603,11 +4607,11 @@
);
case Iex_Qop:
return IRExpr_Qop(
- e->Iex.Qop.op,
- atbSubst_Expr(env, e->Iex.Qop.arg1),
- atbSubst_Expr(env, e->Iex.Qop.arg2),
- atbSubst_Expr(env, e->Iex.Qop.arg3),
- atbSubst_Expr(env, e->Iex.Qop.arg4)
+ e->Iex.Qop.details->op,
+ atbSubst_Expr(env, e->Iex.Qop.details->arg1),
+ atbSubst_Expr(env, e->Iex.Qop.details->arg2),
+ atbSubst_Expr(env, e->Iex.Qop.details->arg3),
+ atbSubst_Expr(env, e->Iex.Qop.details->arg4)
);
case Iex_Triop:
return IRExpr_Triop(
Modified: trunk/priv/host_s390_isel.c (+5 -5)
===================================================================
--- trunk/priv/host_s390_isel.c 2012-06-01 17:09:50 +01:00 (rev 2362)
+++ trunk/priv/host_s390_isel.c 2012-06-01 21:41:24 +01:00 (rev 2363)
@@ -1760,13 +1760,13 @@
s390_bfp_triop_t bfpop;
s390_round_t rounding_mode;
- op1 = s390_isel_float_expr(env, expr->Iex.Qop.arg2);
- op2 = s390_isel_float_expr(env, expr->Iex.Qop.arg3);
- op3 = s390_isel_float_expr(env, expr->Iex.Qop.arg4);
+ op1 = s390_isel_float_expr(env, expr->Iex.Qop.details->arg2);
+ op2 = s390_isel_float_expr(env, expr->Iex.Qop.details->arg3);
+ op3 = s390_isel_float_expr(env, expr->Iex.Qop.details->arg4);
dst = newVRegF(env);
addInstr(env, s390_insn_move(size, dst, op1));
- switch (expr->Iex.Qop.op) {
+ switch (expr->Iex.Qop.details->op) {
case Iop_MAddF32:
case Iop_MAddF64: bfpop = S390_BFP_MADD; break;
case Iop_MSubF32:
@@ -1776,7 +1776,7 @@
goto irreducible;
}
- rounding_mode = decode_rounding_mode(expr->Iex.Qop.arg1);
+ rounding_mode = decode_rounding_mode(expr->Iex.Qop.details->arg1);
addInstr(env, s390_insn_bfp_triop(size, bfpop, dst, op2, op3,
rounding_mode));
return dst;
Modified: trunk/priv/ir_defs.c (+51 -39)
===================================================================
--- trunk/priv/ir_defs.c 2012-06-01 17:09:50 +01:00 (rev 2362)
+++ trunk/priv/ir_defs.c 2012-06-01 21:41:24 +01:00 (rev 2363)
@@ -1017,18 +1017,20 @@
case Iex_RdTmp:
ppIRTemp(e->Iex.RdTmp.tmp);
break;
- case Iex_Qop:
- ppIROp(e->Iex.Qop.op);
+ case Iex_Qop: {
+ IRQop *qop = e->Iex.Qop.details;
+ ppIROp(qop->op);
vex_printf( "(" );
- ppIRExpr(e->Iex.Qop.arg1);
+ ppIRExpr(qop->arg1);
vex_printf( "," );
- ppIRExpr(e->Iex.Qop.arg2);
+ ppIRExpr(qop->arg2);
vex_printf( "," );
- ppIRExpr(e->Iex.Qop.arg3);
+ ppIRExpr(qop->arg3);
vex_printf( "," );
- ppIRExpr(e->Iex.Qop.arg4);
+ ppIRExpr(qop->arg4);
vex_printf( ")" );
break;
+ }
case Iex_Triop:
ppIROp(e->Iex.Triop.op);
vex_printf( "(" );
@@ -1475,12 +1477,14 @@
IRExpr* IRExpr_Qop ( IROp op, IRExpr* arg1, IRExpr* arg2,
IRExpr* arg3, IRExpr* arg4 ) {
IRExpr* e = LibVEX_Alloc(sizeof(IRExpr));
+ IRQop* qop = LibVEX_Alloc(sizeof(IRQop));
+ qop->op = op;
+ qop->arg1 = arg1;
+ qop->arg2 = arg2;
+ qop->arg3 = arg3;
+ qop->arg4 = arg4;
e->tag = Iex_Qop;
- e->Iex.Qop.op = op;
- e->Iex.Qop.arg1 = arg1;
- e->Iex.Qop.arg2 = arg2;
- e->Iex.Qop.arg3 = arg3;
- e->Iex.Qop.arg4 = arg4;
+ e->Iex.Qop.details = qop;
return e;
}
IRExpr* IRExpr_Triop ( IROp op, IRExpr* arg1,
@@ -1884,12 +1888,15 @@
e->Iex.GetI.bias);
case Iex_RdTmp:
return IRExpr_RdTmp(e->Iex.RdTmp.tmp);
- case Iex_Qop:
- return IRExpr_Qop(e->Iex.Qop.op,
- deepCopyIRExpr(e->Iex.Qop.arg1),
- deepCopyIRExpr(e->Iex.Qop.arg2),
- deepCopyIRExpr(e->Iex.Qop.arg3),
- deepCopyIRExpr(e->Iex.Qop.arg4));
+ case Iex_Qop: {
+ IRQop* qop = e->Iex.Qop.details;
+
+ return IRExpr_Qop(qop->op,
+ deepCopyIRExpr(qop->arg1),
+ deepCopyIRExpr(qop->arg2),
+ deepCopyIRExpr(qop->arg3),
+ deepCopyIRExpr(qop->arg4));
+ }
case Iex_Triop:
return IRExpr_Triop(e->Iex.Triop.op,
deepCopyIRExpr(e->Iex.Triop.arg1),
@@ -2870,7 +2877,7 @@
case Iex_Const:
return typeOfIRConst(e->Iex.Const.con);
case Iex_Qop:
- typeOfPrimop(e->Iex.Qop.op,
+ typeOfPrimop(e->Iex.Qop.details->op,
&t_dst, &t_arg1, &t_arg2, &t_arg3, &t_arg4);
return t_dst;
case Iex_Triop:
@@ -2937,6 +2944,7 @@
IRDirty* di;
IRCAS* cas;
IRPutI* puti;
+ IRQop* qop;
switch (st->tag) {
case Ist_AbiHint:
@@ -2958,11 +2966,12 @@
case Iex_Get: return True;
case Iex_GetI: return isIRAtom(e->Iex.GetI.ix);
case Iex_RdTmp: return True;
- case Iex_Qop: return toBool(
- isIRAtom(e->Iex.Qop.arg1)
- && isIRAtom(e->Iex.Qop.arg2)
- && isIRAtom(e->Iex.Qop.arg3)
- && isIRAtom(e->Iex.Qop.arg4));
+ case Iex_Qop: qop = e->Iex.Qop.details;
+ return toBool(
+ isIRAtom(qop->arg1)
+ && isIRAtom(qop->arg2)
+ && isIRAtom(qop->arg3)
+ && isIRAtom(qop->arg4));
case Iex_Triop: return toBool(
isIRAtom(e->Iex.Triop.arg1)
&& isIRAtom(e->Iex.Triop.arg2)
@@ -3116,12 +3125,14 @@
case Iex_RdTmp:
useBeforeDef_Temp(bb,stmt,expr->Iex.RdTmp.tmp,def_counts);
break;
- case Iex_Qop:
- useBeforeDef_Expr(bb,stmt,expr->Iex.Qop.arg1,def_counts);
- useBeforeDef_Expr(bb,stmt,expr->Iex.Qop.arg2,def_counts);
- useBeforeDef_Expr(bb,stmt,expr->Iex.Qop.arg3,def_counts);
- useBeforeDef_Expr(bb,stmt,expr->Iex.Qop.arg4,def_counts);
+ case Iex_Qop: {
+ IRQop* qop = expr->Iex.Qop.details;
+ useBeforeDef_Expr(bb,stmt,qop->arg1,def_counts);
+ useBeforeDef_Expr(bb,stmt,qop->arg2,def_counts);
+ useBeforeDef_Expr(bb,stmt,qop->arg3,def_counts);
+ useBeforeDef_Expr(bb,stmt,qop->arg4,def_counts);
break;
+ }
case Iex_Triop:
useBeforeDef_Expr(bb,stmt,expr->Iex.Triop.arg1,def_counts);
useBeforeDef_Expr(bb,stmt,expr->Iex.Triop.arg2,def_counts);
@@ -3234,29 +3245,30 @@
break;
case Iex_Qop: {
IRType ttarg1, ttarg2, ttarg3, ttarg4;
- tcExpr(bb,stmt, expr->Iex.Qop.arg1, gWordTy );
- tcExpr(bb,stmt, expr->Iex.Qop.arg2, gWordTy );
- tcExpr(bb,stmt, expr->Iex.Qop.arg3, gWordTy );
- tcExpr(bb,stmt, expr->Iex.Qop.arg4, gWordTy );
- typeOfPrimop(expr->Iex.Qop.op,
+ IRQop* qop = expr->Iex.Qop.details;
+ tcExpr(bb,stmt, qop->arg1, gWordTy );
+ tcExpr(bb,stmt, qop->arg2, gWordTy );
+ tcExpr(bb,stmt, qop->arg3, gWordTy );
+ tcExpr(bb,stmt, qop->arg4, gWordTy );
+ typeOfPrimop(qop->op,
&t_dst, &t_arg1, &t_arg2, &t_arg3, &t_arg4);
if (t_arg1 == Ity_INVALID || t_arg2 == Ity_INVALID
|| t_arg3 == Ity_INVALID || t_arg4 == Ity_INVALID) {
vex_printf(" op name: " );
- ppIROp(expr->Iex.Qop.op);
+ ppIROp(qop->op);
vex_printf("\n");
sanityCheckFail(bb,stmt,
"Iex.Qop: wrong arity op\n"
"... name of op precedes BB printout\n");
}
- ttarg1 = typeOfIRExpr(tyenv, expr->Iex.Qop.arg1);
- ttarg2 = typeOfIRExpr(tyenv, expr->Iex.Qop.arg2);
- ttarg3 = typeOfIRExpr(tyenv, expr->Iex.Qop.arg3);
- ttarg4 = typeOfIRExpr(tyenv, expr->Iex.Qop.arg4);
+ ttarg1 = typeOfIRExpr(tyenv, qop->arg1);
+ ttarg2 = typeOfIRExpr(tyenv, qop->arg2);
+ ttarg3 = typeOfIRExpr(tyenv, qop->arg3);
+ ttarg4 = typeOfIRExpr(tyenv, qop->arg4);
if (t_arg1 != ttarg1 || t_arg2 != ttarg2
|| t_arg3 != ttarg3 || t_arg4 != ttarg4) {
vex_printf(" op name: ");
- ppIROp(expr->Iex.Qop.op);
+ ppIROp(qop->op);
vex_printf("\n");
vex_printf(" op type is (");
ppIRType(t_arg1);
Modified: trunk/pub/libvex_ir.h (+13 -5)
===================================================================
--- trunk/pub/libvex_ir.h 2012-06-01 17:09:50 +01:00 (rev 2362)
+++ trunk/pub/libvex_ir.h 2012-06-01 21:41:24 +01:00 (rev 2363)
@@ -1477,6 +1477,9 @@
/* ------------------ Expressions ------------------ */
+typedef struct _IRQop IRQop; /* forward declaration */
+
+
/* The different kinds of expressions. Their meaning is explained below
in the comments for IRExpr. */
typedef
@@ -1580,11 +1583,7 @@
eg. MAddF64r32(t1, t2, t3, t4)
*/
struct {
- IROp op; /* op-code */
- IRExpr* arg1; /* operand 1 */
- IRExpr* arg2; /* operand 2 */
- IRExpr* arg3; /* operand 3 */
- IRExpr* arg4; /* operand 4 */
+ IRQop* details;
} Qop;
/* A ternary operation.
@@ -1697,6 +1696,15 @@
} Iex;
};
+/* ------------------ A quarternary expression ------------------ */
+struct _IRQop {
+ IROp op; /* op-code */
+ IRExpr* arg1; /* operand 1 */
+ IRExpr* arg2; /* operand 2 */
+ IRExpr* arg3; /* operand 3 */
+ IRExpr* arg4; /* operand 4 */
+};
+
/* Expression constructors. */
extern IRExpr* IRExpr_Binder ( Int binder );
extern IRExpr* IRExpr_Get ( Int off, IRType ty );
Modified: trunk/priv/main_main.c (+2 -2)
===================================================================
--- trunk/priv/main_main.c 2012-06-01 17:09:50 +01:00 (rev 2362)
+++ trunk/priv/main_main.c 2012-06-01 21:41:24 +01:00 (rev 2363)
@@ -159,11 +159,11 @@
/* These take a lot of space, so make sure we don't have
any unnoticed size regressions. */
if (VEX_HOST_WORDSIZE == 4) {
- vassert(sizeof(IRExpr) == 24);
+ vassert(sizeof(IRExpr) == 20);
vassert(sizeof(IRStmt) == 20 /* x86 */
|| sizeof(IRStmt) == 24 /* arm */);
} else {
- vassert(sizeof(IRExpr) == 48);
+ vassert(sizeof(IRExpr) == 40);
vassert(sizeof(IRStmt) == 32);
}
Modified: trunk/priv/host_amd64_isel.c (+5 -5)
===================================================================
--- trunk/priv/host_amd64_isel.c 2012-06-01 17:09:50 +01:00 (rev 2362)
+++ trunk/priv/host_amd64_isel.c 2012-06-01 21:41:24 +01:00 (rev 2363)
@@ -3419,7 +3419,7 @@
return;
}
- if (e->tag == Iex_Qop && e->Iex.Qop.op == Iop_64x4toV256) {
+ if (e->tag == Iex_Qop && e->Iex.Qop.details->op == Iop_64x4toV256) {
HReg rsp = hregAMD64_RSP();
HReg vHi = newVRegV(env);
HReg vLo = newVRegV(env);
@@ -3427,10 +3427,10 @@
AMD64AMode* m16_rsp = AMD64AMode_IR(-16, rsp);
/* arg1 is the most significant (Q3), arg4 the least (Q0) */
/* Get all the args into regs, before messing with the stack. */
- AMD64RI* q3 = iselIntExpr_RI(env, e->Iex.Qop.arg1);
- AMD64RI* q2 = iselIntExpr_RI(env, e->Iex.Qop.arg2);
- AMD64RI* q1 = iselIntExpr_RI(env, e->Iex.Qop.arg3);
- AMD64RI* q0 = iselIntExpr_RI(env, e->Iex.Qop.arg4);
+ AMD64RI* q3 = iselIntExpr_RI(env, e->Iex.Qop.details->arg1);
+ AMD64RI* q2 = iselIntExpr_RI(env, e->Iex.Qop.details->arg2);
+ AMD64RI* q1 = iselIntExpr_RI(env, e->Iex.Qop.details->arg3);
+ AMD64RI* q0 = iselIntExpr_RI(env, e->Iex.Qop.details->arg4);
/* less significant lane (Q2) at the lower address (-16(rsp)) */
addInstr(env, AMD64Instr_Alu64M(Aalu_MOV, q3, m8_rsp));
addInstr(env, AMD64Instr_Alu64M(Aalu_MOV, q2, m16_rsp));
Modified: trunk/priv/host_ppc_isel.c (+5 -5)
===================================================================
--- trunk/priv/host_ppc_isel.c 2012-06-01 17:09:50 +01:00 (rev 2362)
+++ trunk/priv/host_ppc_isel.c 2012-06-01 21:41:24 +01:00 (rev 2363)
@@ -3445,7 +3445,7 @@
/* --------- OPS --------- */
if (e->tag == Iex_Qop) {
PPCFpOp fpop = Pfp_INVALID;
- switch (e->Iex.Qop.op) {
+ switch (e->Iex.Qop.details->op) {
case Iop_MAddF64: fpop = Pfp_MADDD; break;
case Iop_MAddF64r32: fpop = Pfp_MADDS; break;
case Iop_MSubF64: fpop = Pfp_MSUBD; break;
@@ -3454,10 +3454,10 @@
}
if (fpop != Pfp_INVALID) {
HReg r_dst = newVRegF(env);
- HReg r_srcML = iselDblExpr(env, e->Iex.Qop.arg2);
- HReg r_srcMR = iselDblExpr(env, e->Iex.Qop.arg3);
- HReg r_srcAcc = iselDblExpr(env, e->Iex.Qop.arg4);
- set_FPU_rounding_mode( env, e->Iex.Qop.arg1 );
+ HReg r_srcML = iselDblExpr(env, e->Iex.Qop.details->arg2);
+ HReg r_srcMR = iselDblExpr(env, e->Iex.Qop.details->arg3);
+ HReg r_srcAcc = iselDblExpr(env, e->Iex.Qop.details->arg4);
+ set_FPU_rounding_mode( env, e->Iex.Qop.details->arg1 );
addInstr(env, PPCInstr_FpMulAcc(fpop, r_dst,
r_srcML, r_srcMR, r_srcAcc));
return r_dst;
|
|
From: Philippe W. <phi...@sk...> - 2012-06-01 20:16:57
|
On Fri, 2012-06-01 at 07:47 -0700, Sunny Das wrote: > Looks like we will need to change Vg_ClientRequest to add CLIENT_CALL4 and then just provide the CALL4 version of VALGRIND_NON_SIMD_CALLx. > > It also looks like it will be hard to go beyond 4 args. Is this doable? It is probably doable (did not look) but I think you can work with the following: define a struct containing the needed x args call VALGRIND_NON_SIMD_CALL1( passing the address of the struct). Philippe |
|
From: Sunny D. <int...@ya...> - 2012-06-01 19:58:29
|
anybody? -Not so Sunny...:( ----- Original Message ----- From: Sunny Das <int...@ya...> To: Philippe Waroquiers <phi...@sk...> Cc: "val...@li..." <val...@li...> Sent: Friday, June 1, 2012 7:47 AM Subject: Re: [Valgrind-developers] vmware backdoor patch Looks like we will need to change Vg_ClientRequest to add CLIENT_CALL4 and then just provide the CALL4 version of VALGRIND_NON_SIMD_CALLx. It also looks like it will be hard to go beyond 4 args. Is this doable? -Stay Sunny! --- On Fri, 6/1/12, Sunny Das <int...@ya...> wrote: > From: Sunny Das <int...@ya...> > Subject: Re: [Valgrind-developers] vmware backdoor patch > To: "Philippe Waroquiers" <phi...@sk...> > Cc: "val...@li..." <val...@li...> > Date: Friday, June 1, 2012, 7:10 AM > > > VALGRIND_NON_SIMD_CALLx(do_the_real_thing_on_the_real_cpu_function, > > args ...); > > The max version of this macro allows 3 args. The vmware > backdoor needs 4 args. Is it possible to extend this to > 4,5,6 args easily? > > -Stay Sunny! > > --- On Wed, 5/30/12, Philippe Waroquiers <phi...@sk...> > wrote: > > > From: Philippe Waroquiers <phi...@sk...> > > Subject: Re: [Valgrind-developers] vmware backdoor > patch > > To: "Sunny Das" <int...@ya...> > > Cc: "val...@li..." > <val...@li...> > > Date: Wednesday, May 30, 2012, 11:30 AM > > On Wed, 2012-05-30 at 08:09 -0700, > > Sunny Das wrote: > > > The patch still seems to apply (after some > path/file > > renaming) but it does not build. That answers my > original > > question. But it raises a new one: > > > > > > Is anyone planning on fixing and merging that > patch > > in? > > I have 0+epsilon intention to work on this patch, > > the epsilon is to cover the unlikely case the vmware > would > > donate > > 1_000_000 (1 million) dollars to support Valgrind > > development :). > > > > (the patch is many lines, only to support vmware > specific > > things, > > not clear how to test thist, etc). > > So, does not look very attractive to me. > > > > > > Why not rather do that at "user level" ? > > (i.e. in the vmware code or libraries, do something > like: > > > > if (RUNNING_ON_VALGRIND) > > > > > VALGRIND_NON_SIMD_CALLx(do_the_real_thing_on_the_real_cpu_function, > > args ...); > > else > > > > do_the_real_thing_on_the_real_cpu_function (args); > > > > Looks to me this should have the effect desired, > without > > introducing > > hundreds of vmware backdoor thingies in Valgrind. > > > > Philippe > > > > > > > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's > security and > threat landscape has changed and how IT managers can > respond. Discussions > will include endpoint security, mobile security and the > latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Valgrind-developers mailing list > Val...@li... > https://lists.sourceforge.net/lists/listinfo/valgrind-developers > ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Valgrind-developers mailing list Val...@li... https://lists.sourceforge.net/lists/listinfo/valgrind-developers |
|
From: Florian K. <br...@ac...> - 2012-06-01 17:34:12
|
On 06/01/2012 12:09 PM, sv...@va... wrote:
> +void vex_bzero ( void* sV, UInt n )
> +{
> + UInt i;
> + UChar* s = (UChar*)sV;
> + /* No laughing, please. Just don't call this too often. Thank you
> + for your attention. */
> + for (i = 0; i < n; i++) s[i] = 0;
> +}
>
OK, I'll bite.
How about using __builtin_memset ? gcc has it, clang has it, and we've
been using builtins elsewhere, too.
Florian
|
|
From: Julian S. <js...@ac...> - 2012-06-01 16:28:49
|
Hi Josef, Nick,
Do either of you have any objection if I commit basically the patch
below, after some testing? I am trying to finish up the AVX infrastructure
changes this weekend and this is the last thing on my list.
Thanks.
J
On Tuesday, May 22, 2012, Josef Weidendorfer wrote:
> Am 22.05.2012 01:24, schrieb Nicholas Nethercote:
> > On Mon, May 21, 2012 at 7:22 AM, Julian Seward<js...@ac...> wrote:
> >> I recently added some AVX support to V, and as a result added a new type
> >> of 32-byte values (Ity_V256) to IR. Loads and stores of such values
> >> cause Cachegrind and Callgrind to assert, because the size (32 bytes)
> >> is larger than MIN_LINE_SIZE, which is 16.
> >>
> >> As they currently are, both tools refuse to process memory accesses
> >> bigger than 16, on the basis that the minimum possible line size is 16,
> >> and so a 16 byte access could access 2 adjacent lines, which is a
> >> situation they are prepared to handle. But not 3 lines, which is a
> >> possible case for a 32 byte access w/ 16 byte lines (something for
> >> which I'm sure no hardware actually exists).
> >
> > Can we model the 32-byte accesses correctly and just assert if the 3
> > line case occurs?
>
> As far as I understand, the assertion in the simulator should not
> trigger in any case, as memory access lengths are always cut down to
> MIN_LINE_SIZE at the moment.
>
> This is needed, as there are some rare instructions with larger memory
> accesses, such as PUSHA.
>
> I think it makes more sense to cut access lengths down to the real
> minimum of used line sizes, using the patch below.
>
> Hmm. If people explicitly configure for 16-byte line size, and use AVX,
> this will result in wrong simulations because of the large number of
> cut down access sizes. I see these options:
> * if we detect a processor with AVX, make 32 the minimal accepted
> line size in manual configuration
> * count the number of cuts, and print a warning if a threshould of e.g.
> 10000 is reached ?
> * handle accesses straddling >2 lines correctly
>
> Here is the result of vg_perf (vg_minline is with the patch), also
> running "none" to see the measurement noise produced on my laptop. It
> looks like all numbers more or less stay the same.
>
> Josef
>
> weidendo@lapbode134:~/SW/GitRepos/vg/valgrind (master)> perl
> perf/vg_perf --tools=none,cachegrind --vg=. --vg=../vg-minline perf/
> -- Running tests in perf ----------------------------------------------
> -- bigcode1 --
> bigcode1 . :0.14s no: 2.0s (14.5x, -----) ca: 6.3s (44.7x, -----)
> bigcode1 vg-minline:0.14s no: 2.0s (14.3x, 1.5%) ca: 6.3s (44.7x, 0.0%)
> -- bigcode2 --
> bigcode2 . :0.14s no: 4.8s (34.6x, -----) ca:10.4s (74.5x, -----)
> bigcode2 vg-minline:0.14s no: 4.8s (34.3x, 0.8%) ca:10.4s (74.3x, 0.3%)
> -- bz2 --
> bz2 . :0.67s no: 2.6s ( 3.9x, -----) ca:18.4s (27.5x, -----)
> bz2 vg-minline:0.67s no: 2.6s ( 3.9x, -0.4%) ca:18.1s (27.1x, 1.6%)
> -- fbench --
> fbench . :0.28s no: 1.2s ( 4.4x, -----) ca: 5.1s (18.1x, -----)
> fbench vg-minline:0.28s no: 1.2s ( 4.4x, 0.0%) ca: 5.1s (18.1x, 0.4%)
> -- ffbench --
> ffbench . :0.26s no: 1.2s ( 4.5x, -----) ca: 6.4s (24.5x, -----)
> ffbench vg-minline:0.26s no: 1.2s ( 4.5x, 0.9%) ca: 6.4s (24.5x, -0.2%)
> -- heap --
> heap . :0.12s no: 0.8s ( 6.4x, -----) ca: 5.3s (44.3x, -----)
> heap vg-minline:0.12s no: 0.8s ( 6.8x, -5.2%) ca: 5.3s (44.6x, -0.6%)
> -- heap_pdb4 --
> heap_pdb4 . :0.12s no: 0.9s ( 7.3x, -----) ca: 5.8s (48.3x,
> -----) heap_pdb4 vg-minline:0.12s no: 0.8s ( 7.1x, 3.4%) ca: 5.8s
> (48.1x, 0.5%) -- many-loss-records --
> many-loss-records . :0.01s no: 0.3s (32.0x, -----) ca: 1.0s
> (98.0x, -----)
> many-loss-records vg-minline:0.01s no: 0.3s (29.0x, 9.4%) ca: 1.0s
> (97.0x, 1.0%)
> -- many-xpts --
> many-xpts . :0.05s no: 0.4s ( 7.8x, -----) ca: 1.4s (28.0x,
> -----) many-xpts vg-minline:0.05s no: 0.4s ( 7.6x, 2.6%) ca: 1.4s
> (28.4x, -1.4%) -- sarp --
> sarp . :0.03s no: 0.3s (11.0x, -----) ca: 1.4s (47.3x, -----)
> sarp vg-minline:0.03s no: 0.3s (11.0x, 0.0%) ca: 1.4s (46.7x, 1.4%)
> -- tinycc --
> tinycc . :0.21s no: 1.7s ( 7.9x, -----) ca:11.5s (54.8x, -----)
> tinycc vg-minline:0.21s no: 1.7s ( 8.0x, -1.8%) ca:11.4s (54.3x, 0.9%)
> -- Finished tests in perf ----------------------------------------------
>
>
>
> ====================================================================
>
> diff --git a/cachegrind/cg_main.c b/cachegrind/cg_main.c
> index 4b36204..9982f23 100644
> --- a/cachegrind/cg_main.c
> +++ b/cachegrind/cg_main.c
> @@ -69,6 +69,13 @@ static Bool clo_cache_sim = True; /* do cache
> simulation? */
> static Bool clo_branch_sim = False; /* do branch simulation? */
> static Char* clo_cachegrind_out_file = "cachegrind.out.%p";
>
> +
> +/*------------------------------------------------------------*/
> +/*--- Cachesim configuration ---*/
> +/*------------------------------------------------------------*/
> +
> +static Int min_line_size = 0; /* min of L1 and LL cache line sizes */
> +
> /*------------------------------------------------------------*/
> /*--- Types and Data Structures ---*/
> /*------------------------------------------------------------*/
> @@ -846,7 +853,7 @@ void addEvent_Dr ( CgState* cgs, InstrInfo* inode,
> Int datasize, IRAtom*
> {
> Event* evt;
> tl_assert(isIRAtom(ea));
> - tl_assert(datasize >= 1 && datasize <= MIN_LINE_SIZE);
> + tl_assert(datasize >= 1 && datasize <= min_line_size);
> if (!clo_cache_sim)
> return;
> if (cgs->events_used == N_EVENTS)
> @@ -868,7 +875,7 @@ void addEvent_Dw ( CgState* cgs, InstrInfo* inode,
> Int datasize, IRAtom*
> Event* evt;
>
> tl_assert(isIRAtom(ea));
> - tl_assert(datasize >= 1 && datasize <= MIN_LINE_SIZE);
> + tl_assert(datasize >= 1 && datasize <= min_line_size);
>
> if (!clo_cache_sim)
> return;
> @@ -1058,8 +1065,8 @@ IRSB* cg_instrument ( VgCallbackClosure* closure,
> // instructions will be done inaccurately, but they're
> // very rare and this avoids errors from hitting more
> // than two cache lines in the simulation.
> - if (dataSize > MIN_LINE_SIZE)
> - dataSize = MIN_LINE_SIZE;
> + if (dataSize > min_line_size)
> + dataSize = min_line_size;
> if (d->mFx == Ifx_Read || d->mFx == Ifx_Modify)
> addEvent_Dr( &cgs, curr_inode, dataSize, d->mAddr );
> if (d->mFx == Ifx_Write || d->mFx == Ifx_Modify)
> @@ -1085,8 +1092,8 @@ IRSB* cg_instrument ( VgCallbackClosure* closure,
> if (cas->dataHi != NULL)
> dataSize *= 2; /* since it's a doubleword-CAS */
> /* I don't think this can ever happen, but play safe. */
> - if (dataSize > MIN_LINE_SIZE)
> - dataSize = MIN_LINE_SIZE;
> + if (dataSize > min_line_size)
> + dataSize = min_line_size;
> addEvent_Dr( &cgs, curr_inode, dataSize, cas->addr );
> addEvent_Dw( &cgs, curr_inode, dataSize, cas->addr );
> break;
> @@ -1724,6 +1731,12 @@ static void cg_post_clo_init(void)
> &clo_D1_cache,
> &clo_LL_cache);
>
> + // min_line_size is used to make sure that we never feed
> + // accesses to the simulator straddling more than two
> + // cache lines at any cache level
> + min_line_size = (I1c.size < D1c.size) ? I1c.size : D1c.size;
> + min_line_size = (LLc.size < min_line_size) ? LLc.size : min_line_size;
> +
> cachesim_I1_initcache(I1c);
> cachesim_D1_initcache(D1c);
> cachesim_LL_initcache(LLc);
> ====================================================================
|
|
From: <sv...@va...> - 2012-06-01 16:11:57
|
sewardj 2012-06-01 17:11:41 +0100 (Fri, 01 Jun 2012)
New Revision: 12598
Log:
Track the change to IRDirty guest state effect annotations introduced
in vex r2362.
mc_translate.c: also do PCast 64->32 a bit more efficiently.
Modified files:
trunk/coregrind/m_gdbserver/m_gdbserver.c
trunk/coregrind/m_translate.c
trunk/memcheck/mc_translate.c
Modified: trunk/coregrind/m_gdbserver/m_gdbserver.c (+10 -6)
===================================================================
--- trunk/coregrind/m_gdbserver/m_gdbserver.c 2012-06-01 04:20:47 +01:00 (rev 12597)
+++ trunk/coregrind/m_gdbserver/m_gdbserver.c 2012-06-01 17:11:41 +01:00 (rev 12598)
@@ -1022,12 +1022,16 @@
gdb interactions. */
di->nFxState = 2;
- di->fxState[0].fx = Ifx_Read;
- di->fxState[0].offset = layout->offset_SP;
- di->fxState[0].size = layout->sizeof_SP;
- di->fxState[1].fx = Ifx_Modify;
- di->fxState[1].offset = layout->offset_IP;
- di->fxState[1].size = layout->sizeof_IP;
+ di->fxState[0].fx = Ifx_Read;
+ di->fxState[0].offset = layout->offset_SP;
+ di->fxState[0].size = layout->sizeof_SP;
+ di->fxState[0].nRepeats = 0;
+ di->fxState[0].repeatLen = 0;
+ di->fxState[1].fx = Ifx_Modify;
+ di->fxState[1].offset = layout->offset_IP;
+ di->fxState[1].size = layout->sizeof_IP;
+ di->fxState[1].nRepeats = 0;
+ di->fxState[1].repeatLen = 0;
addStmtToIRSB(irsb, IRStmt_Dirty(di));
Modified: trunk/memcheck/mc_translate.c (+135 -104)
===================================================================
--- trunk/memcheck/mc_translate.c 2012-06-01 04:20:47 +01:00 (rev 12597)
+++ trunk/memcheck/mc_translate.c 2012-06-01 17:11:41 +01:00 (rev 12598)
@@ -710,8 +710,8 @@
{
IRType src_ty;
IRAtom* tmp1;
+
/* Note, dst_ty is a shadow type, not an original type. */
- /* First of all, collapse vbits down to a single bit. */
tl_assert(isShadowAtom(mce,vbits));
src_ty = typeOfIRExpr(mce->sb->tyenv, vbits);
@@ -723,11 +723,20 @@
return assignNew('V', mce, Ity_I64, unop(Iop_CmpwNEZ64, vbits));
if (src_ty == Ity_I32 && dst_ty == Ity_I64) {
+ /* PCast the arg, then clone it. */
IRAtom* tmp = assignNew('V', mce, Ity_I32, unop(Iop_CmpwNEZ32, vbits));
return assignNew('V', mce, Ity_I64, binop(Iop_32HLto64, tmp, tmp));
}
+ if (src_ty == Ity_I64 && dst_ty == Ity_I32) {
+ /* PCast the arg. This gives all 0s or all 1s. Then throw away
+ the top half. */
+ IRAtom* tmp = assignNew('V', mce, Ity_I64, unop(Iop_CmpwNEZ64, vbits));
+ return assignNew('V', mce, Ity_I32, unop(Iop_64to32, tmp));
+ }
+
/* Else do it the slow way .. */
+ /* First of all, collapse vbits down to a single bit. */
tmp1 = NULL;
switch (src_ty) {
case Ity_I1:
@@ -1027,12 +1036,16 @@
static void setHelperAnns ( MCEnv* mce, IRDirty* di ) {
di->nFxState = 2;
- di->fxState[0].fx = Ifx_Read;
- di->fxState[0].offset = mce->layout->offset_SP;
- di->fxState[0].size = mce->layout->sizeof_SP;
- di->fxState[1].fx = Ifx_Read;
- di->fxState[1].offset = mce->layout->offset_IP;
- di->fxState[1].size = mce->layout->sizeof_IP;
+ di->fxState[0].fx = Ifx_Read;
+ di->fxState[0].offset = mce->layout->offset_SP;
+ di->fxState[0].size = mce->layout->sizeof_SP;
+ di->fxState[0].nRepeats = 0;
+ di->fxState[0].repeatLen = 0;
+ di->fxState[1].fx = Ifx_Read;
+ di->fxState[1].offset = mce->layout->offset_IP;
+ di->fxState[1].size = mce->layout->sizeof_IP;
+ di->fxState[1].nRepeats = 0;
+ di->fxState[1].repeatLen = 0;
}
@@ -4180,7 +4193,7 @@
static
void do_shadow_Dirty ( MCEnv* mce, IRDirty* d )
{
- Int i, n, toDo, gSz, gOff;
+ Int i, k, n, toDo, gSz, gOff;
IRAtom *src, *here, *curr;
IRType tySrc, tyDst;
IRTemp dst;
@@ -4217,34 +4230,37 @@
if (d->fxState[i].fx == Ifx_Write)
continue;
- /* Ignore any sections marked as 'always defined'. */
- if (isAlwaysDefd(mce, d->fxState[i].offset, d->fxState[i].size )) {
- if (0)
- VG_(printf)("memcheck: Dirty gst: ignored off %d, sz %d\n",
- d->fxState[i].offset, d->fxState[i].size );
- continue;
- }
+ /* Enumerate the described state segments */
+ for (k = 0; k < 1 + d->fxState[i].nRepeats; k++) {
+ gOff = d->fxState[i].offset + k * d->fxState[i].repeatLen;
+ gSz = d->fxState[i].size;
- /* This state element is read or modified. So we need to
- consider it. If larger than 8 bytes, deal with it in 8-byte
- chunks. */
- gSz = d->fxState[i].size;
- gOff = d->fxState[i].offset;
- tl_assert(gSz > 0);
- while (True) {
- if (gSz == 0) break;
- n = gSz <= 8 ? gSz : 8;
- /* update 'curr' with UifU of the state slice
- gOff .. gOff+n-1 */
- tySrc = szToITy( n );
- src = assignNew( 'V', mce, tySrc,
- shadow_GET(mce, gOff, tySrc ) );
- here = mkPCastTo( mce, Ity_I32, src );
- curr = mkUifU32(mce, here, curr);
- gSz -= n;
- gOff += n;
+ /* Ignore any sections marked as 'always defined'. */
+ if (isAlwaysDefd(mce, gOff, gSz)) {
+ if (0)
+ VG_(printf)("memcheck: Dirty gst: ignored off %d, sz %d\n",
+ gOff, gSz);
+ continue;
+ }
+
+ /* This state element is read or modified. So we need to
+ consider it. If larger than 8 bytes, deal with it in
+ 8-byte chunks. */
+ while (True) {
+ tl_assert(gSz >= 0);
+ if (gSz == 0) break;
+ n = gSz <= 8 ? gSz : 8;
+ /* update 'curr' with UifU of the state slice
+ gOff .. gOff+n-1 */
+ tySrc = szToITy( n );
+ src = assignNew( 'V', mce, tySrc,
+ shadow_GET(mce, gOff, tySrc ) );
+ here = mkPCastTo( mce, Ity_I32, src );
+ curr = mkUifU32(mce, here, curr);
+ gSz -= n;
+ gOff += n;
+ }
}
-
}
/* Inputs: memory. First set up some info needed regardless of
@@ -4309,26 +4325,32 @@
tl_assert(d->fxState[i].fx != Ifx_None);
if (d->fxState[i].fx == Ifx_Read)
continue;
- /* Ignore any sections marked as 'always defined'. */
- if (isAlwaysDefd(mce, d->fxState[i].offset, d->fxState[i].size ))
- continue;
- /* This state element is written or modified. So we need to
- consider it. If larger than 8 bytes, deal with it in 8-byte
- chunks. */
- gSz = d->fxState[i].size;
- gOff = d->fxState[i].offset;
- tl_assert(gSz > 0);
- while (True) {
- if (gSz == 0) break;
- n = gSz <= 8 ? gSz : 8;
- /* Write suitably-casted 'curr' to the state slice
- gOff .. gOff+n-1 */
- tyDst = szToITy( n );
- do_shadow_PUT( mce, gOff,
- NULL, /* original atom */
- mkPCastTo( mce, tyDst, curr ) );
- gSz -= n;
- gOff += n;
+
+ /* Enumerate the described state segments */
+ for (k = 0; k < 1 + d->fxState[i].nRepeats; k++) {
+ gOff = d->fxState[i].offset + k * d->fxState[i].repeatLen;
+ gSz = d->fxState[i].size;
+
+ /* Ignore any sections marked as 'always defined'. */
+ if (isAlwaysDefd(mce, gOff, gSz))
+ continue;
+
+ /* This state element is written or modified. So we need to
+ consider it. If larger than 8 bytes, deal with it in
+ 8-byte chunks. */
+ while (True) {
+ tl_assert(gSz >= 0);
+ if (gSz == 0) break;
+ n = gSz <= 8 ? gSz : 8;
+ /* Write suitably-casted 'curr' to the state slice
+ gOff .. gOff+n-1 */
+ tyDst = szToITy( n );
+ do_shadow_PUT( mce, gOff,
+ NULL, /* original atom */
+ mkPCastTo( mce, tyDst, curr ) );
+ gSz -= n;
+ gOff += n;
+ }
}
}
@@ -5776,7 +5798,7 @@
static void do_origins_Dirty ( MCEnv* mce, IRDirty* d )
{
// This is a hacked version of do_shadow_Dirty
- Int i, n, toDo, gSz, gOff;
+ Int i, k, n, toDo, gSz, gOff;
IRAtom *here, *curr;
IRTemp dst;
@@ -5801,38 +5823,42 @@
if (d->fxState[i].fx == Ifx_Write)
continue;
- /* Ignore any sections marked as 'always defined'. */
- if (isAlwaysDefd(mce, d->fxState[i].offset, d->fxState[i].size )) {
- if (0)
- VG_(printf)("memcheck: Dirty gst: ignored off %d, sz %d\n",
- d->fxState[i].offset, d->fxState[i].size );
- continue;
- }
+ /* Enumerate the described state segments */
+ for (k = 0; k < 1 + d->fxState[i].nRepeats; k++) {
+ gOff = d->fxState[i].offset + k * d->fxState[i].repeatLen;
+ gSz = d->fxState[i].size;
- /* This state element is read or modified. So we need to
- consider it. If larger than 4 bytes, deal with it in 4-byte
- chunks. */
- gSz = d->fxState[i].size;
- gOff = d->fxState[i].offset;
- tl_assert(gSz > 0);
- while (True) {
- Int b_offset;
- if (gSz == 0) break;
- n = gSz <= 4 ? gSz : 4;
- /* update 'curr' with maxU32 of the state slice
- gOff .. gOff+n-1 */
- b_offset = MC_(get_otrack_shadow_offset)(gOff, 4);
- if (b_offset != -1) {
- here = assignNew( 'B',mce,
- Ity_I32,
- IRExpr_Get(b_offset + 2*mce->layout->total_sizeB,
- Ity_I32));
- curr = gen_maxU32( mce, curr, here );
+ /* Ignore any sections marked as 'always defined'. */
+ if (isAlwaysDefd(mce, gOff, gSz)) {
+ if (0)
+ VG_(printf)("memcheck: Dirty gst: ignored off %d, sz %d\n",
+ gOff, gSz);
+ continue;
}
- gSz -= n;
- gOff += n;
+
+ /* This state element is read or modified. So we need to
+ consider it. If larger than 4 bytes, deal with it in
+ 4-byte chunks. */
+ while (True) {
+ Int b_offset;
+ tl_assert(gSz >= 0);
+ if (gSz == 0) break;
+ n = gSz <= 4 ? gSz : 4;
+ /* update 'curr' with maxU32 of the state slice
+ gOff .. gOff+n-1 */
+ b_offset = MC_(get_otrack_shadow_offset)(gOff, 4);
+ if (b_offset != -1) {
+ here = assignNew( 'B',mce,
+ Ity_I32,
+ IRExpr_Get(b_offset
+ + 2*mce->layout->total_sizeB,
+ Ity_I32));
+ curr = gen_maxU32( mce, curr, here );
+ }
+ gSz -= n;
+ gOff += n;
+ }
}
-
}
/* Inputs: memory */
@@ -5884,28 +5910,33 @@
if (d->fxState[i].fx == Ifx_Read)
continue;
- /* Ignore any sections marked as 'always defined'. */
- if (isAlwaysDefd(mce, d->fxState[i].offset, d->fxState[i].size ))
- continue;
+ /* Enumerate the described state segments */
+ for (k = 0; k < 1 + d->fxState[i].nRepeats; k++) {
+ gOff = d->fxState[i].offset + k * d->fxState[i].repeatLen;
+ gSz = d->fxState[i].size;
- /* This state element is written or modified. So we need to
- consider it. If larger than 4 bytes, deal with it in 4-byte
- chunks. */
- gSz = d->fxState[i].size;
- gOff = d->fxState[i].offset;
- tl_assert(gSz > 0);
- while (True) {
- Int b_offset;
- if (gSz == 0) break;
- n = gSz <= 4 ? gSz : 4;
- /* Write 'curr' to the state slice gOff .. gOff+n-1 */
- b_offset = MC_(get_otrack_shadow_offset)(gOff, 4);
- if (b_offset != -1) {
- stmt( 'B', mce, IRStmt_Put(b_offset + 2*mce->layout->total_sizeB,
- curr ));
+ /* Ignore any sections marked as 'always defined'. */
+ if (isAlwaysDefd(mce, gOff, gSz))
+ continue;
+
+ /* This state element is written or modified. So we need to
+ consider it. If larger than 4 bytes, deal with it in
+ 4-byte chunks. */
+ while (True) {
+ Int b_offset;
+ tl_assert(gSz >= 0);
+ if (gSz == 0) break;
+ n = gSz <= 4 ? gSz : 4;
+ /* Write 'curr' to the state slice gOff .. gOff+n-1 */
+ b_offset = MC_(get_otrack_shadow_offset)(gOff, 4);
+ if (b_offset != -1) {
+ stmt( 'B', mce, IRStmt_Put(b_offset
+ + 2*mce->layout->total_sizeB,
+ curr ));
+ }
+ gSz -= n;
+ gOff += n;
}
- gSz -= n;
- gOff += n;
}
}
Modified: trunk/coregrind/m_translate.c (+13 -6)
===================================================================
--- trunk/coregrind/m_translate.c 2012-06-01 04:20:47 +01:00 (rev 12597)
+++ trunk/coregrind/m_translate.c 2012-06-01 17:11:41 +01:00 (rev 12598)
@@ -262,7 +262,7 @@
IRType gWordTy,
IRType hWordTy )
{
- Int i, j, minoff_ST, maxoff_ST, sizeof_SP, offset_SP;
+ Int i, j, k, minoff_ST, maxoff_ST, sizeof_SP, offset_SP;
Int first_SP, last_SP, first_Put, last_Put;
IRDirty *dcall, *d;
IRStmt* st;
@@ -334,6 +334,8 @@
dcall->fxState[0].fx = Ifx_Read; \
dcall->fxState[0].offset = layout->offset_SP; \
dcall->fxState[0].size = layout->sizeof_SP; \
+ dcall->fxState[0].nRepeats = 0; \
+ dcall->fxState[0].repeatLen = 0; \
\
addStmtToIRSB( bb, IRStmt_Dirty(dcall) ); \
\
@@ -362,6 +364,8 @@
dcall->fxState[0].fx = Ifx_Read; \
dcall->fxState[0].offset = layout->offset_SP; \
dcall->fxState[0].size = layout->sizeof_SP; \
+ dcall->fxState[0].nRepeats = 0; \
+ dcall->fxState[0].repeatLen = 0; \
\
addStmtToIRSB( bb, IRStmt_Dirty(dcall) ); \
\
@@ -597,13 +601,16 @@
if (st->tag == Ist_Dirty) {
d = st->Ist.Dirty.details;
for (j = 0; j < d->nFxState; j++) {
- minoff_ST = d->fxState[j].offset;
- maxoff_ST = d->fxState[j].offset + d->fxState[j].size - 1;
if (d->fxState[j].fx == Ifx_Read || d->fxState[j].fx == Ifx_None)
continue;
- if (!(offset_SP > maxoff_ST
- || (offset_SP + sizeof_SP - 1) < minoff_ST))
- goto complain;
+ /* Enumerate the described state segments */
+ for (k = 0; k < 1 + d->fxState[j].nRepeats; k++) {
+ minoff_ST = d->fxState[j].offset + k * d->fxState[j].repeatLen;
+ maxoff_ST = minoff_ST + d->fxState[j].size - 1;
+ if (!(offset_SP > maxoff_ST
+ || (offset_SP + sizeof_SP - 1) < minoff_ST))
+ goto complain;
+ }
}
}
|
|
From: <sv...@va...> - 2012-06-01 16:10:04
|
sewardj 2012-06-01 17:09:50 +0100 (Fri, 01 Jun 2012)
New Revision: 2362
Log:
Enhance the guest state effects notation on IRDirty calls, so as to be
able to describe accesses to arrays of non-consecutive guest state
sections. This is needed to describe the behaviour of FXSAVE and
FXRSTOR in an environment where we also support AVX.
The IRDirty struct has got smaller (112 bytes vs 136 before, for a 64
bit target) whilst holding more information.
The new facility is then used to describe said FXSAVE and FXRSTOR on
amd64. For x86 there is no change since we don't model AVX state for
x86.
Modified files:
trunk/priv/guest_amd64_toIR.c
trunk/priv/guest_ppc_toIR.c
trunk/priv/guest_s390_toIR.c
trunk/priv/guest_x86_toIR.c
trunk/priv/host_s390_isel.c
trunk/priv/ir_defs.c
trunk/priv/main_main.c
trunk/priv/main_util.c
trunk/priv/main_util.h
trunk/pub/libvex_ir.h
Modified: trunk/priv/guest_x86_toIR.c (+10 -2)
===================================================================
--- trunk/priv/guest_x86_toIR.c 2012-05-31 16:46:18 +01:00 (rev 2361)
+++ trunk/priv/guest_x86_toIR.c 2012-06-01 17:09:50 +01:00 (rev 2362)
@@ -3954,6 +3954,7 @@
/* declare we're writing guest state */
d->nFxState = 4;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Write;
d->fxState[0].offset = OFFB_FTOP;
@@ -4049,6 +4050,7 @@
/* declare we're reading guest state */
d->nFxState = 4;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Read;
d->fxState[0].offset = OFFB_FTOP;
@@ -4738,6 +4740,7 @@
/* declare we're writing guest state */
d->nFxState = 5;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Write;
d->fxState[0].offset = OFFB_FTOP;
@@ -4942,6 +4945,7 @@
/* declare we're writing guest state */
d->nFxState = 5;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Write;
d->fxState[0].offset = OFFB_FTOP;
@@ -5000,6 +5004,7 @@
/* declare we're reading guest state */
d->nFxState = 5;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Read;
d->fxState[0].offset = OFFB_FTOP;
@@ -8138,10 +8143,11 @@
/* declare we're writing memory */
d->mFx = Ifx_Write;
d->mAddr = mkexpr(addr);
- d->mSize = 512;
+ d->mSize = 464; /* according to recent Intel docs */
/* declare we're reading guest state */
d->nFxState = 7;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Read;
d->fxState[0].offset = OFFB_FTOP;
@@ -8212,10 +8218,11 @@
/* declare we're reading memory */
d->mFx = Ifx_Read;
d->mAddr = mkexpr(addr);
- d->mSize = 512;
+ d->mSize = 464; /* according to recent Intel docs */
/* declare we're writing guest state */
d->nFxState = 7;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Write;
d->fxState[0].offset = OFFB_FTOP;
@@ -14608,6 +14615,7 @@
/* declare guest state effects */
d->needsBBP = True;
d->nFxState = 4;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Modify;
d->fxState[0].offset = OFFB_EAX;
d->fxState[0].size = 4;
Modified: trunk/priv/guest_s390_toIR.c (+6 -2)
===================================================================
--- trunk/priv/guest_s390_toIR.c 2012-05-31 16:46:18 +01:00 (rev 2361)
+++ trunk/priv/guest_s390_toIR.c 2012-06-01 17:09:50 +01:00 (rev 2362)
@@ -2120,10 +2120,12 @@
mkIRExprVec_0());
d->needsBBP = 1; /* Need to pass pointer to guest state to helper */
+ d->nFxState = 1;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
+
d->fxState[0].fx = Ifx_Modify; /* read then write */
d->fxState[0].offset = S390X_GUEST_OFFSET(guest_IA);
d->fxState[0].size = sizeof(ULong);
- d->nFxState = 1;
stmt(IRStmt_Dirty(d));
@@ -10779,10 +10781,12 @@
d->needsBBP = 1; /* Need to pass pointer to guest state to helper */
+ d->nFxState = 1;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
+
d->fxState[0].fx = Ifx_Modify; /* read then write */
d->fxState[0].offset = S390X_GUEST_OFFSET(guest_r0);
d->fxState[0].size = sizeof(ULong);
- d->nFxState = 1;
d->mAddr = mkexpr(op2addr);
/* Pretend all double words are written */
Modified: trunk/priv/guest_ppc_toIR.c (+2 -0)
===================================================================
--- trunk/priv/guest_ppc_toIR.c 2012-05-31 16:46:18 +01:00 (rev 2361)
+++ trunk/priv/guest_ppc_toIR.c 2012-06-01 17:09:50 +01:00 (rev 2362)
@@ -12801,6 +12801,7 @@
/* declare guest state effects */
d->needsBBP = True;
d->nFxState = 1;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Write;
d->fxState[0].offset = vD_off;
d->fxState[0].size = sizeof(U128);
@@ -12834,6 +12835,7 @@
/* declare guest state effects */
d->needsBBP = True;
d->nFxState = 1;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Write;
d->fxState[0].offset = vD_off;
d->fxState[0].size = sizeof(U128);
Modified: trunk/priv/guest_amd64_toIR.c (+25 -8)
===================================================================
--- trunk/priv/guest_amd64_toIR.c 2012-05-31 16:46:18 +01:00 (rev 2361)
+++ trunk/priv/guest_amd64_toIR.c 2012-06-01 17:09:50 +01:00 (rev 2362)
@@ -5174,6 +5174,7 @@
/* declare we're writing guest state */
d->nFxState = 4;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Write;
d->fxState[0].offset = OFFB_FTOP;
@@ -5270,6 +5271,7 @@
/* declare we're reading guest state */
d->nFxState = 4;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Read;
d->fxState[0].offset = OFFB_FTOP;
@@ -5927,6 +5929,7 @@
/* declare we're writing guest state */
d->nFxState = 5;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Write;
d->fxState[0].offset = OFFB_FTOP;
@@ -6150,6 +6153,7 @@
/* declare we're writing guest state */
d->nFxState = 5;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Write;
d->fxState[0].offset = OFFB_FTOP;
@@ -6227,6 +6231,7 @@
/* declare we're reading guest state */
d->nFxState = 5;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Read;
d->fxState[0].offset = OFFB_FTOP;
@@ -11850,10 +11855,11 @@
/* declare we're writing memory */
d->mFx = Ifx_Write;
d->mAddr = mkexpr(addr);
- d->mSize = 512;
+ d->mSize = 464; /* according to recent Intel docs */
/* declare we're reading guest state */
d->nFxState = 7;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Read;
d->fxState[0].offset = OFFB_FTOP;
@@ -11877,15 +11883,18 @@
d->fxState[5].fx = Ifx_Read;
d->fxState[5].offset = OFFB_YMM0;
- d->fxState[5].size = 16 * sizeof(U128);
+ d->fxState[5].size = sizeof(U128);
+ /* plus 15 more of the above, spaced out in YMM sized steps */
+ d->fxState[5].nRepeats = 15;
+ d->fxState[5].repeatLen = sizeof(U256);
d->fxState[6].fx = Ifx_Read;
d->fxState[6].offset = OFFB_SSEROUND;
d->fxState[6].size = sizeof(ULong);
/* Be paranoid ... this assertion tries to ensure the 16 %ymm
- images are packed back-to-back. If not, the value of
- d->fxState[5].size is wrong. */
+ images are packed back-to-back. If not, the settings for
+ d->fxState[5] are wrong. */
vassert(32 == sizeof(U256));
vassert(OFFB_YMM15 == (OFFB_YMM0 + 15 * 32));
@@ -11925,10 +11934,11 @@
/* declare we're reading memory */
d->mFx = Ifx_Read;
d->mAddr = mkexpr(addr);
- d->mSize = 512;
+ d->mSize = 464; /* according to recent Intel docs */
/* declare we're writing guest state */
d->nFxState = 7;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Write;
d->fxState[0].offset = OFFB_FTOP;
@@ -11952,15 +11962,18 @@
d->fxState[5].fx = Ifx_Write;
d->fxState[5].offset = OFFB_YMM0;
- d->fxState[5].size = 16 * sizeof(U128);
+ d->fxState[5].size = sizeof(U128);
+ /* plus 15 more of the above, spaced out in YMM sized steps */
+ d->fxState[5].nRepeats = 15;
+ d->fxState[5].repeatLen = sizeof(U256);
d->fxState[6].fx = Ifx_Write;
d->fxState[6].offset = OFFB_SSEROUND;
d->fxState[6].size = sizeof(ULong);
/* Be paranoid ... this assertion tries to ensure the 16 %ymm
- images are packed back-to-back. If not, the value of
- d->fxState[5].size is wrong. */
+ images are packed back-to-back. If not, the settings for
+ d->fxState[5] are wrong. */
vassert(32 == sizeof(U256));
vassert(OFFB_YMM15 == (OFFB_YMM0 + 15 * 32));
@@ -15399,6 +15412,7 @@
this roundabout scheme. */
d->needsBBP = True;
d->nFxState = 2;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
/* AES{ENC,ENCLAST,DEC,DECLAST} read both registers, and writes
the second.
AESIMC (0xDB) reads the first register, and writes the second. */
@@ -15644,6 +15658,7 @@
roundabout scheme. */
d->needsBBP = True;
d->nFxState = 2;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Read;
d->fxState[0].offset = gstOffL;
d->fxState[0].size = sizeof(U128);
@@ -16826,6 +16841,7 @@
this roundabout scheme. */
d->needsBBP = True;
d->nFxState = 2;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Read;
d->fxState[0].offset = gstOffL;
d->fxState[0].size = sizeof(U128);
@@ -18656,6 +18672,7 @@
/* declare guest state effects */
d->needsBBP = True;
d->nFxState = 4;
+ vex_bzero(&d->fxState, sizeof(d->fxState));
d->fxState[0].fx = Ifx_Modify;
d->fxState[0].offset = OFFB_RAX;
d->fxState[0].size = 8;
Modified: trunk/pub/libvex_ir.h (+22 -5)
===================================================================
--- trunk/pub/libvex_ir.h 2012-05-31 16:46:18 +01:00 (rev 2361)
+++ trunk/pub/libvex_ir.h 2012-06-01 17:09:50 +01:00 (rev 2362)
@@ -1870,7 +1870,7 @@
/* Effects on resources (eg. registers, memory locations) */
typedef
enum {
- Ifx_None = 0x17000, /* no effect */
+ Ifx_None = 0x1700, /* no effect */
Ifx_Read, /* reads the resource */
Ifx_Write, /* writes the resource */
Ifx_Modify, /* modifies the resource */
@@ -1882,7 +1882,7 @@
typedef
- struct {
+ struct _IRDirty {
/* What to call, and details of args/results */
IRCallee* cee; /* where to call */
IRExpr* guard; /* :: Ity_Bit. Controls whether call happens */
@@ -1898,10 +1898,26 @@
Bool needsBBP; /* True => also pass guest state ptr to callee */
Int nFxState; /* must be 0 .. VEX_N_FXSTATE */
struct {
- IREffect fx; /* read, write or modify? Ifx_None is invalid. */
- Int offset;
- Int size;
+ IREffect fx:16; /* read, write or modify? Ifx_None is invalid. */
+ UShort offset;
+ UShort size;
+ UChar nRepeats;
+ UChar repeatLen;
} fxState[VEX_N_FXSTATE];
+ /* The access can be repeated, as specified by nRepeats and
+ repeatLen. To describe only a single access, nRepeats and
+ repeatLen should be zero. Otherwise, repeatLen must be a
+ multiple of size and greater than size. */
+ /* Overall, the parts of the guest state denoted by (offset,
+ size, nRepeats, repeatLen) is
+ [offset, +size)
+ and, if nRepeats > 0,
+ for (i = 1; i <= nRepeats; i++)
+ [offset + i * repeatLen, +size)
+ A convenient way to enumerate all segments is therefore
+ for (i = 0; i < 1 + nRepeats; i++)
+ [offset + i * repeatLen, +size)
+ */
}
IRDirty;
@@ -2051,6 +2067,7 @@
extern IRPutI* deepCopyIRPutI ( IRPutI* );
+
/* ------------------ Statements ------------------ */
/* The different kinds of statements. Their meaning is explained
Modified: trunk/priv/main_util.h (+2 -1)
===================================================================
--- trunk/priv/main_util.h 2012-05-31 16:46:18 +01:00 (rev 2361)
+++ trunk/priv/main_util.h 2012-06-01 17:09:50 +01:00 (rev 2362)
@@ -75,7 +75,8 @@
/* String ops */
extern Bool vex_streq ( const HChar* s1, const HChar* s2 );
-extern Int vex_strlen ( const HChar* str );
+extern Int vex_strlen ( const HChar* str );
+extern void vex_bzero ( void* s, UInt n );
/* Storage management: clear the area, and allocate from it. */
Modified: trunk/priv/main_util.c (+9 -0)
===================================================================
--- trunk/priv/main_util.c 2012-05-31 16:46:18 +01:00 (rev 2361)
+++ trunk/priv/main_util.c 2012-06-01 17:09:50 +01:00 (rev 2362)
@@ -254,7 +254,16 @@
}
}
+void vex_bzero ( void* sV, UInt n )
+{
+ UInt i;
+ UChar* s = (UChar*)sV;
+ /* No laughing, please. Just don't call this too often. Thank you
+ for your attention. */
+ for (i = 0; i < n; i++) s[i] = 0;
+}
+
/* Convert N0 into ascii in BUF, which is assumed to be big enough (at
least 67 bytes long). Observe BASE, SYNED and HEXCAPS. */
static
Modified: trunk/priv/host_s390_isel.c (+3 -0)
===================================================================
--- trunk/priv/host_s390_isel.c 2012-05-31 16:46:18 +01:00 (rev 2361)
+++ trunk/priv/host_s390_isel.c 2012-06-01 17:09:50 +01:00 (rev 2362)
@@ -2419,6 +2419,9 @@
/* Invalidate tracked values of those guest state registers that are
modified by this helper. */
for (i = 0; i < d->nFxState; ++i) {
+ /* JRS 1 June 2012: AFAICS, s390 guest doesn't use 'repeat'
+ descriptors in guest state effect descriptions. Hence: */
+ vassert(d->fxState[i].nRepeats == 0 && d->fxState[i].repeatLen == 0);
if ((d->fxState[i].fx == Ifx_Write || d->fxState[i].fx == Ifx_Modify)) {
Int guest_reg = get_guest_reg(d->fxState[i].offset);
if (guest_reg != GUEST_UNKNOWN)
Modified: trunk/priv/ir_defs.c (+16 -1)
===================================================================
--- trunk/priv/ir_defs.c 2012-05-31 16:46:18 +01:00 (rev 2361)
+++ trunk/priv/ir_defs.c 2012-06-01 17:09:50 +01:00 (rev 2362)
@@ -1120,7 +1120,13 @@
for (i = 0; i < d->nFxState; i++) {
vex_printf(" ");
ppIREffect(d->fxState[i].fx);
- vex_printf("-gst(%d,%d)", d->fxState[i].offset, d->fxState[i].size);
+ vex_printf("-gst(%u,%u", (UInt)d->fxState[i].offset,
+ (UInt)d->fxState[i].size);
+ if (d->fxState[i].nRepeats > 0) {
+ vex_printf(",reps%u,step%u", (UInt)d->fxState[i].nRepeats,
+ (UInt)d->fxState[i].repeatLen);
+ }
+ vex_printf(")");
}
vex_printf(" ::: ");
ppIRCallee(d->cee);
@@ -3567,6 +3573,15 @@
for (i = 0; i < d->nFxState; i++) {
if (d->fxState[i].fx == Ifx_None) goto bad_dirty;
if (d->fxState[i].size <= 0) goto bad_dirty;
+ if (d->fxState[i].nRepeats == 0) {
+ if (d->fxState[i].repeatLen != 0) goto bad_dirty;
+ } else {
+ if (d->fxState[i].repeatLen <= d->fxState[i].size)
+ goto bad_dirty;
+ /* the % is safe because of the .size check above */
+ if ((d->fxState[i].repeatLen % d->fxState[i].size) != 0)
+ goto bad_dirty;
+ }
}
/* check types, minimally */
if (d->guard == NULL) goto bad_dirty;
Modified: trunk/priv/main_main.c (+1 -0)
===================================================================
--- trunk/priv/main_main.c 2012-05-31 16:46:18 +01:00 (rev 2361)
+++ trunk/priv/main_main.c 2012-06-01 17:09:50 +01:00 (rev 2362)
@@ -147,6 +147,7 @@
vassert(8 == sizeof(Addr64));
vassert(16 == sizeof(U128));
vassert(16 == sizeof(V128));
+ vassert(32 == sizeof(U256));
vassert(sizeof(void*) == 4 || sizeof(void*) == 8);
vassert(sizeof(void*) == sizeof(int*));
|
|
From: Sunny D. <int...@ya...> - 2012-06-01 14:47:56
|
Looks like we will need to change Vg_ClientRequest to add CLIENT_CALL4 and then just provide the CALL4 version of VALGRIND_NON_SIMD_CALLx. It also looks like it will be hard to go beyond 4 args. Is this doable? -Stay Sunny! --- On Fri, 6/1/12, Sunny Das <int...@ya...> wrote: > From: Sunny Das <int...@ya...> > Subject: Re: [Valgrind-developers] vmware backdoor patch > To: "Philippe Waroquiers" <phi...@sk...> > Cc: "val...@li..." <val...@li...> > Date: Friday, June 1, 2012, 7:10 AM > > > VALGRIND_NON_SIMD_CALLx(do_the_real_thing_on_the_real_cpu_function, > > args ...); > > The max version of this macro allows 3 args. The vmware > backdoor needs 4 args. Is it possible to extend this to > 4,5,6 args easily? > > -Stay Sunny! > > --- On Wed, 5/30/12, Philippe Waroquiers <phi...@sk...> > wrote: > > > From: Philippe Waroquiers <phi...@sk...> > > Subject: Re: [Valgrind-developers] vmware backdoor > patch > > To: "Sunny Das" <int...@ya...> > > Cc: "val...@li..." > <val...@li...> > > Date: Wednesday, May 30, 2012, 11:30 AM > > On Wed, 2012-05-30 at 08:09 -0700, > > Sunny Das wrote: > > > The patch still seems to apply (after some > path/file > > renaming) but it does not build. That answers my > original > > question. But it raises a new one: > > > > > > Is anyone planning on fixing and merging that > patch > > in? > > I have 0+epsilon intention to work on this patch, > > the epsilon is to cover the unlikely case the vmware > would > > donate > > 1_000_000 (1 million) dollars to support Valgrind > > development :). > > > > (the patch is many lines, only to support vmware > specific > > things, > > not clear how to test thist, etc). > > So, does not look very attractive to me. > > > > > > Why not rather do that at "user level" ? > > (i.e. in the vmware code or libraries, do something > like: > > > > if (RUNNING_ON_VALGRIND) > > > > > VALGRIND_NON_SIMD_CALLx(do_the_real_thing_on_the_real_cpu_function, > > args ...); > > else > > > > do_the_real_thing_on_the_real_cpu_function (args); > > > > Looks to me this should have the effect desired, > without > > introducing > > hundreds of vmware backdoor thingies in Valgrind. > > > > Philippe > > > > > > > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's > security and > threat landscape has changed and how IT managers can > respond. Discussions > will include endpoint security, mobile security and the > latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Valgrind-developers mailing list > Val...@li... > https://lists.sourceforge.net/lists/listinfo/valgrind-developers > |
|
From: Sunny D. <int...@ya...> - 2012-06-01 14:10:39
|
> VALGRIND_NON_SIMD_CALLx(do_the_real_thing_on_the_real_cpu_function, > args ...); The max version of this macro allows 3 args. The vmware backdoor needs 4 args. Is it possible to extend this to 4,5,6 args easily? -Stay Sunny! --- On Wed, 5/30/12, Philippe Waroquiers <phi...@sk...> wrote: > From: Philippe Waroquiers <phi...@sk...> > Subject: Re: [Valgrind-developers] vmware backdoor patch > To: "Sunny Das" <int...@ya...> > Cc: "val...@li..." <val...@li...> > Date: Wednesday, May 30, 2012, 11:30 AM > On Wed, 2012-05-30 at 08:09 -0700, > Sunny Das wrote: > > The patch still seems to apply (after some path/file > renaming) but it does not build. That answers my original > question. But it raises a new one: > > > > Is anyone planning on fixing and merging that patch > in? > I have 0+epsilon intention to work on this patch, > the epsilon is to cover the unlikely case the vmware would > donate > 1_000_000 (1 million) dollars to support Valgrind > development :). > > (the patch is many lines, only to support vmware specific > things, > not clear how to test thist, etc). > So, does not look very attractive to me. > > > Why not rather do that at "user level" ? > (i.e. in the vmware code or libraries, do something like: > > if (RUNNING_ON_VALGRIND) > > VALGRIND_NON_SIMD_CALLx(do_the_real_thing_on_the_real_cpu_function, > args ...); > else > > do_the_real_thing_on_the_real_cpu_function (args); > > Looks to me this should have the effect desired, without > introducing > hundreds of vmware backdoor thingies in Valgrind. > > Philippe > > > |
|
From: Philippe W. <phi...@sk...> - 2012-06-01 03:46:58
|
valgrind revision: 12596 VEX revision: 2361 C compiler: gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2) Assembler: GNU assembler version 2.21.53.0.1-6.fc16 20110716 C library: GNU C Library development release version 2.14.90 uname -mrs: Linux 3.3.1-3.fc16.ppc64 ppc64 Vendor version: Fedora release 16 (Verne) Nightly build on gcc110 ( Fedora release 16 (Verne), ppc64 ) Started at 2012-05-31 20:00:15 PDT Ended at 2012-05-31 20:45:53 PDT 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 == 524 tests, 15 stderr failures, 8 stdout failures, 1 stderrB failure, 1 stdoutB failure, 2 post failures == gdbserver_tests/mcmain_pic (stdout) gdbserver_tests/mcmain_pic (stderr) gdbserver_tests/mcmain_pic (stdoutB) gdbserver_tests/mcmain_pic (stderrB) memcheck/tests/ppc32/power_ISA2_05 (stdout) memcheck/tests/ppc32/power_ISA2_05 (stderr) memcheck/tests/ppc64/power_ISA2_05 (stdout) memcheck/tests/ppc64/power_ISA2_05 (stderr) memcheck/tests/supp_unknown (stderr) memcheck/tests/trivialleak (stderr) memcheck/tests/varinfo6 (stderr) memcheck/tests/wrap8 (stdout) memcheck/tests/wrap8 (stderr) massif/tests/big-alloc (post) massif/tests/deep-D (post) none/tests/empty-exe (stderr) none/tests/ppc32/jm-fp (stdout) none/tests/ppc32/jm-vmx (stdout) none/tests/ppc64/jm-fp (stdout) none/tests/ppc64/jm-vmx (stdout) none/tests/shell (stderr) none/tests/shell_valid1 (stderr) none/tests/shell_valid2 (stderr) none/tests/shell_valid3 (stderr) none/tests/shell_zerolength (stderr) helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc20_verifywrap (stderr) |
|
From: <sv...@va...> - 2012-06-01 03:21:40
|
florian 2012-06-01 04:20:47 +0100 (Fri, 01 Jun 2012)
New Revision: 12597
Log:
Add missing .exp files.
Added files:
trunk/memcheck/tests/s390x/cs.stdout.exp
trunk/memcheck/tests/s390x/csg.stdout.exp
Added: trunk/memcheck/tests/s390x/csg.stdout.exp (+0 -0)
===================================================================
Added: trunk/memcheck/tests/s390x/cs.stdout.exp (+0 -0)
===================================================================
|
|
From: Tom H. <to...@co...> - 2012-06-01 03:12:47
|
valgrind revision: 12596 VEX revision: 2361 C compiler: gcc (GCC) 4.3.0 20080428 (Red Hat 4.3.0-8) Assembler: GNU assembler version 2.18.50.0.6-2 20080403 C library: GNU C Library stable release version 2.8 uname -mrs: Linux 3.3.4-5.fc17.x86_64 x86_64 Vendor version: Fedora release 9 (Sulphur) Nightly build on bristol ( x86_64, Fedora 9 ) Started at 2012-06-01 03:41:51 BST Ended at 2012-06-01 04:12:25 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 == 600 tests, 1 stderr failure, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) none/tests/amd64/sse4-64 (stdout) |
|
From: Tom H. <to...@co...> - 2012-06-01 03:02:29
|
valgrind revision: 12596 VEX revision: 2361 C compiler: gcc (GCC) 4.4.1 20090725 (Red Hat 4.4.1-2) Assembler: GNU assembler version 2.19.51.0.14-3.fc11 20090722 C library: GNU C Library stable release version 2.10.2 uname -mrs: Linux 3.3.4-5.fc17.x86_64 x86_64 Vendor version: Fedora release 11 (Leonidas) Nightly build on bristol ( x86_64, Fedora 11 ) Started at 2012-06-01 03:31:23 BST Ended at 2012-06-01 04:02:07 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 == 602 tests, 2 stderr failures, 1 stdout failure, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) memcheck/tests/long_namespace_xml (stderr) none/tests/amd64/sse4-64 (stdout) |
|
From: Rich C. <rc...@wi...> - 2012-06-01 02:55:58
|
valgrind revision: 12596
VEX revision: 2361
C compiler: gcc (SUSE Linux) 4.5.1 20101208 [gcc-4_5-branch revision 167585]
Assembler: GNU assembler (GNU Binutils; openSUSE 11.4) 2.21
C library: GNU C Library stable release version 2.11.3 (20110203)
uname -mrs: Linux 2.6.37.6-0.7-desktop x86_64
Vendor version: Welcome to openSUSE 11.4 "Celadon" - Kernel %r (%t).
Nightly build on ultra ( gcc 4.5.1 Linux 2.6.37.6-0.7-desktop x86_64 )
Started at 2012-05-31 21:30:01 CDT
Ended at 2012-05-31 21:55:48 CDT
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
== 610 tests, 1 stderr failure, 0 stdout failures, 6 stderrB failures, 0 stdoutB failures, 0 post failures ==
gdbserver_tests/mcbreak (stderrB)
gdbserver_tests/mcclean_after_fork (stderrB)
gdbserver_tests/mcleak (stderrB)
gdbserver_tests/mcmain_pic (stderrB)
gdbserver_tests/mcvabits (stderrB)
gdbserver_tests/mssnapshot (stderrB)
memcheck/tests/origin5-bz2 (stderr)
=================================================
./valgrind-new/gdbserver_tests/mcbreak.stderrB.diff
=================================================
--- mcbreak.stderrB.exp 2012-05-31 21:43:09.901498730 -0500
+++ mcbreak.stderrB.out 2012-05-31 21:47:10.481624757 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
vgdb-error value changed from 999999 to 0
n_errs_found 1 n_errs_shown 1 (vgdb-error 0)
vgdb-error value changed from 0 to 0
=================================================
./valgrind-new/gdbserver_tests/mcclean_after_fork.stderrB.diff
=================================================
--- mcclean_after_fork.stderrB.exp 2012-05-31 21:43:09.900498875 -0500
+++ mcclean_after_fork.stderrB.out 2012-05-31 21:47:12.145383582 -0500
@@ -1,4 +1,6 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
monitor command request to kill this process
Remote connection closed
=================================================
./valgrind-new/gdbserver_tests/mcleak.stderrB.diff
=================================================
--- mcleak.stderrB.exp 2012-05-31 21:43:09.896499455 -0500
+++ mcleak.stderrB.out 2012-05-31 21:47:30.808678186 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
10 bytes in 1 blocks are still reachable in loss record ... of ...
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: f (leak-delta.c:14)
=================================================
./valgrind-new/gdbserver_tests/mcmain_pic.stderrB.diff
=================================================
--- mcmain_pic.stderrB.exp 2012-05-31 21:43:09.904498295 -0500
+++ mcmain_pic.stderrB.out 2012-05-31 21:47:32.372451506 -0500
@@ -1,3 +1,5 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
Remote connection closed
=================================================
./valgrind-new/gdbserver_tests/mcvabits.stderrB.diff
=================================================
--- mcvabits.stderrB.exp 2012-05-31 21:43:09.905498150 -0500
+++ mcvabits.stderrB.out 2012-05-31 21:47:37.259743052 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
Address 0x........ len 10 addressable
Address 0x........ is 0 bytes inside data symbol "undefined"
Address 0x........ len 10 defined
=================================================
./valgrind-new/gdbserver_tests/mssnapshot.stderrB.diff
=================================================
--- mssnapshot.stderrB.exp 2012-05-31 21:43:09.904498295 -0500
+++ mssnapshot.stderrB.out 2012-05-31 21:47:40.390289255 -0500
@@ -1,5 +1,9 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
+Missing separate debuginfo for /lib64/libc.so.6
+Try: zypper install -C "debuginfo(build-id)=92ec8fe859846a62345f74696ab349721415587a"
general valgrind monitor commands:
help [debug] : monitor command help. With debug: + debugging commands
v.wait [<ms>] : sleep <ms> (default 0) then continue
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc212-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc212-s390x 2012-05-31 21:44:36.958879094 -0500
+++ origin5-bz2.stderr.out 2012-05-31 21:49:01.138584129 -0500
@@ -75,17 +75,6 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
- at 0x........: mainSort (origin5-bz2.c:2859)
- by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
- by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
- by 0x........: handle_compress (origin5-bz2.c:4753)
- by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
- by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
- by 0x........: main (origin5-bz2.c:6484)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
-
-Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -131,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc234-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc234-s390x 2012-05-31 21:44:36.942881412 -0500
+++ origin5-bz2.stderr.out 2012-05-31 21:49:01.138584129 -0500
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc25-amd64
=================================================
--- origin5-bz2.stderr.exp-glibc25-amd64 2012-05-31 21:44:36.888889240 -0500
+++ origin5-bz2.stderr.out 2012-05-31 21:49:01.138584129 -0500
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc25-x86
=================================================
--- origin5-bz2.stderr.exp-glibc25-x86 2012-05-31 21:44:36.916885182 -0500
+++ origin5-bz2.stderr.out 2012-05-31 21:49:01.138584129 -0500
@@ -12,7 +12,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
by 0x........: handle_compress (origin5-bz2.c:4750)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -21,7 +21,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
by 0x........: handle_compress (origin5-bz2.c:4750)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -30,7 +30,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2820)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -41,7 +41,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2823)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -52,7 +52,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2854)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -63,7 +63,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2858)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -74,7 +74,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -85,7 +85,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2964)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -96,7 +96,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2269)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -107,7 +107,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2275)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
<truncated beyond 100 lines>
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc27-ppc64
=================================================
--- origin5-bz2.stderr.exp-glibc27-ppc64 2012-05-31 21:44:36.929883297 -0500
+++ origin5-bz2.stderr.out 2012-05-31 21:49:01.138584129 -0500
@@ -1,7 +1,7 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6481)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Conditional jump or move depends on uninitialised value(s)
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -10,7 +10,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -19,7 +19,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -28,7 +28,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2820)
@@ -39,7 +39,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2823)
@@ -50,7 +50,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2854)
@@ -61,7 +61,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2858)
@@ -72,7 +72,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
@@ -83,7 +83,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2964)
@@ -94,7 +94,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2269)
@@ -105,7 +105,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
<truncated beyond 100 lines>
=================================================
./valgrind-old/gdbserver_tests/mcbreak.stderrB.diff
=================================================
--- mcbreak.stderrB.exp 2012-05-31 21:30:35.823807436 -0500
+++ mcbreak.stderrB.out 2012-05-31 21:33:36.214658682 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
vgdb-error value changed from 999999 to 0
n_errs_found 1 n_errs_shown 1 (vgdb-error 0)
vgdb-error value changed from 0 to 0
=================================================
./valgrind-old/gdbserver_tests/mcclean_after_fork.stderrB.diff
=================================================
--- mcclean_after_fork.stderrB.exp 2012-05-31 21:30:35.823807436 -0500
+++ mcclean_after_fork.stderrB.out 2012-05-31 21:33:37.888416060 -0500
@@ -1,4 +1,6 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
monitor command request to kill this process
Remote connection closed
=================================================
./valgrind-old/gdbserver_tests/mcleak.stderrB.diff
=================================================
--- mcleak.stderrB.exp 2012-05-31 21:30:35.820807825 -0500
+++ mcleak.stderrB.out 2012-05-31 21:33:57.717541699 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
10 bytes in 1 blocks are still reachable in loss record ... of ...
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: f (leak-delta.c:14)
=================================================
./valgrind-old/gdbserver_tests/mcmain_pic.stderrB.diff
=================================================
--- mcmain_pic.stderrB.exp 2012-05-31 21:30:35.826807028 -0500
+++ mcmain_pic.stderrB.out 2012-05-31 21:33:59.296312846 -0500
@@ -1,3 +1,5 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
Remote connection closed
=================================================
./valgrind-old/gdbserver_tests/mcvabits.stderrB.diff
=================================================
--- mcvabits.stderrB.exp 2012-05-31 21:30:35.828806743 -0500
+++ mcvabits.stderrB.out 2012-05-31 21:34:04.197602372 -0500
@@ -1,5 +1,7 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
Address 0x........ len 10 addressable
Address 0x........ is 0 bytes inside data symbol "undefined"
Address 0x........ len 10 defined
=================================================
./valgrind-old/gdbserver_tests/mssnapshot.stderrB.diff
=================================================
--- mssnapshot.stderrB.exp 2012-05-31 21:30:35.827806887 -0500
+++ mssnapshot.stderrB.out 2012-05-31 21:34:07.437132781 -0500
@@ -1,5 +1,9 @@
relaying data between gdb and process ....
vgdb-error value changed from 0 to 999999
+
+
+Missing separate debuginfo for /lib64/libc.so.6
+Try: zypper install -C "debuginfo(build-id)=92ec8fe859846a62345f74696ab349721415587a"
general valgrind monitor commands:
help [debug] : monitor command help. With debug: + debugging commands
v.wait [<ms>] : sleep <ms> (default 0) then continue
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc212-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc212-s390x 2012-05-31 21:30:39.447282219 -0500
+++ origin5-bz2.stderr.out 2012-05-31 21:35:27.428537499 -0500
@@ -75,17 +75,6 @@
at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
- at 0x........: mainSort (origin5-bz2.c:2859)
- by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
- by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
- by 0x........: handle_compress (origin5-bz2.c:4753)
- by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
- by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
- by 0x........: main (origin5-bz2.c:6484)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
-
-Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -131,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc234-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc234-s390x 2012-05-31 21:30:39.431284539 -0500
+++ origin5-bz2.stderr.out 2012-05-31 21:35:27.428537499 -0500
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc25-amd64
=================================================
--- origin5-bz2.stderr.exp-glibc25-amd64 2012-05-31 21:30:39.376292510 -0500
+++ origin5-bz2.stderr.out 2012-05-31 21:35:27.428537499 -0500
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
+ by 0x........: g_serviceFn (origin5-bz2.c:6429)
+ by 0x........: default_bzalloc (origin5-bz2.c:4470)
+ by 0x........: BZ2_decompress (origin5-bz2.c:1578)
+ by 0x........: BZ2_bzDecompress (origin5-bz2.c:5192)
+ by 0x........: BZ2_bzBuffToBuffDecompress (origin5-bz2.c:5678)
+ by 0x........: main (origin5-bz2.c:6498)
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc25-x86
=================================================
--- origin5-bz2.stderr.exp-glibc25-x86 2012-05-31 21:30:39.405288307 -0500
+++ origin5-bz2.stderr.out 2012-05-31 21:35:27.428537499 -0500
@@ -12,7 +12,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
by 0x........: handle_compress (origin5-bz2.c:4750)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -21,7 +21,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
by 0x........: handle_compress (origin5-bz2.c:4750)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
@@ -30,7 +30,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2820)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -41,7 +41,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2823)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -52,7 +52,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2854)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -63,7 +63,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2858)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -74,7 +74,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -85,7 +85,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2964)
by 0x........: BZ2_blockSort (origin5-bz2.c:3105)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -96,7 +96,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2269)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -107,7 +107,7 @@
Uninitialised value was created by a client request
at 0x........: main (origin5-bz2.c:6479)
-Use of uninitialised value of size 4
+Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2275)
by 0x........: BZ2_blockSort (origin5-bz2.c:3116)
by 0x........: BZ2_compressBlock (origin5-bz2.c:4034)
@@ -120,6 +120,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6512)
- Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6479)
+ Uninitialised value was created by a heap allocation
+ at 0x........: malloc (vg_replace_malloc.c:...)
<truncated beyond 100 lines>
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc27-ppc64
=================================================
--- origin5-bz2.stderr.exp-glibc27-ppc64 2012-05-31 21:30:39.417286569 -0500
+++ origin5-bz2.stderr.out 2012-05-31 21:35:27.428537499 -0500
@@ -1,7 +1,7 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (origin5-bz2.c:6481)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Conditional jump or move depends on uninitialised value(s)
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -10,7 +10,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -19,7 +19,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: copy_input_until_stop (origin5-bz2.c:4686)
@@ -28,7 +28,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2820)
@@ -39,7 +39,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2823)
@@ -50,7 +50,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2854)
@@ -61,7 +61,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2858)
@@ -72,7 +72,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2963)
@@ -83,7 +83,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: mainSort (origin5-bz2.c:2964)
@@ -94,7 +94,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
at 0x........: fallbackSort (origin5-bz2.c:2269)
@@ -105,7 +105,7 @@
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
Uninitialised value was created by a client request
- at 0x........: main (origin5-bz2.c:6481)
+ at 0x........: main (origin5-bz2.c:6479)
Use of uninitialised value of size 8
<truncated beyond 100 lines>
|
|
From: <br...@ac...> - 2012-06-01 02:55:30
|
valgrind revision: 12596
VEX revision: 2361
C compiler: gcc (GCC) 3.4.6 20060404 (Red Hat 3.4.6-3)
Assembler: GNU assembler 2.15.92.0.2 20040927
C library: GNU C Library stable release version 2.3.4
uname -mrs: Linux 2.6.9-42.EL s390x
Vendor version: Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
Nightly build on z10-ec ( s390x build on z10-EC )
Started at 2012-05-31 22:20:15 EDT
Ended at 2012-05-31 22:55:18 EDT
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
== 504 tests, 8 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures ==
memcheck/tests/manuel3 (stderr)
memcheck/tests/partial_load_ok (stderr)
memcheck/tests/varinfo6 (stderr)
helgrind/tests/tc09_bad_unlock (stderr)
helgrind/tests/tc18_semabuse (stderr)
helgrind/tests/tc20_verifywrap (stderr)
drd/tests/tc04_free_lock (stderr)
drd/tests/tc09_bad_unlock (stderr)
=================================================
./valgrind-new/drd/tests/tc04_free_lock.stderr.diff-ppc
=================================================
--- tc04_free_lock.stderr.exp-ppc 2012-05-31 22:40:25.000000000 -0400
+++ tc04_free_lock.stderr.out 2012-05-31 22:54:36.000000000 -0400
@@ -7,28 +7,22 @@
by 0x........: main (tc04_free_lock.c:20)
Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: bar (tc04_free_lock.c:38)
- by 0x........: main (tc04_free_lock.c:26)
+ at 0x........: bar (tc04_free_lock.c:40)
+ by 0x........: process_dl_debug (in /lib64/ld-2.3.4.so)
+ by 0x........: ???
mutex 0x........ was first observed at:
at 0x........: pthread_mutex_lock (drd_pthread_intercepts.c:?)
by 0x........: bar (tc04_free_lock.c:38)
by 0x........: main (tc04_free_lock.c:26)
Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: foo (tc04_free_lock.c:47)
- by 0x........: main (tc04_free_lock.c:27)
+ at 0x........: foo (tc04_free_lock.c:49)
+ by 0x........: process_dl_debug (in /lib64/ld-2.3.4.so)
+ by 0x........: ???
mutex 0x........ was first observed at:
at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
by 0x........: foo (tc04_free_lock.c:46)
by 0x........: main (tc04_free_lock.c:27)
-Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: bar (tc04_free_lock.c:38)
- by 0x........: main (tc04_free_lock.c:28)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_lock (drd_pthread_intercepts.c:?)
- by 0x........: bar (tc04_free_lock.c:38)
- by 0x........: main (tc04_free_lock.c:28)
-
-ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 3 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/tc04_free_lock.stderr.diff-x86
=================================================
--- tc04_free_lock.stderr.exp-x86 2012-05-31 22:40:25.000000000 -0400
+++ tc04_free_lock.stderr.out 2012-05-31 22:54:36.000000000 -0400
@@ -8,7 +8,8 @@
Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
at 0x........: bar (tc04_free_lock.c:40)
- by 0x........: main (tc04_free_lock.c:26)
+ by 0x........: process_dl_debug (in /lib64/ld-2.3.4.so)
+ by 0x........: ???
mutex 0x........ was first observed at:
at 0x........: pthread_mutex_lock (drd_pthread_intercepts.c:?)
by 0x........: bar (tc04_free_lock.c:38)
@@ -16,19 +17,12 @@
Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
at 0x........: foo (tc04_free_lock.c:49)
- by 0x........: main (tc04_free_lock.c:27)
+ by 0x........: process_dl_debug (in /lib64/ld-2.3.4.so)
+ by 0x........: ???
mutex 0x........ was first observed at:
at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
by 0x........: foo (tc04_free_lock.c:46)
by 0x........: main (tc04_free_lock.c:27)
-Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: bar (tc04_free_lock.c:40)
- by 0x........: main (tc04_free_lock.c:28)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_lock (drd_pthread_intercepts.c:?)
- by 0x........: bar (tc04_free_lock.c:38)
- by 0x........: main (tc04_free_lock.c:28)
-
-ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 3 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/tc09_bad_unlock.stderr.diff-glibc2.8
=================================================
--- tc09_bad_unlock.stderr.exp-glibc2.8 2012-05-31 22:40:25.000000000 -0400
+++ tc09_bad_unlock.stderr.out 2012-05-31 22:54:39.000000000 -0400
@@ -26,7 +26,7 @@
Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: (below main)
+ by 0x........: ???
mutex 0x........ was first observed at:
at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
by 0x........: nearly_main (tc09_bad_unlock.c:31)
@@ -47,13 +47,5 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:50)
-Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: (below main)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:50)
-
-ERROR SUMMARY: 8 errors from 7 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 8 errors from 6 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/tc09_bad_unlock.stderr.diff-ppc
=================================================
--- tc09_bad_unlock.stderr.exp-ppc 2012-05-31 22:40:25.000000000 -0400
+++ tc09_bad_unlock.stderr.out 2012-05-31 22:54:39.000000000 -0400
@@ -25,8 +25,8 @@
by 0x........: main (tc09_bad_unlock.c:49)
Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:49)
+ at 0x........: nearly_main (tc09_bad_unlock.c:45)
+ by 0x........: ???
mutex 0x........ was first observed at:
at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
by 0x........: nearly_main (tc09_bad_unlock.c:31)
@@ -47,13 +47,5 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:50)
-Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:50)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:50)
-
-ERROR SUMMARY: 8 errors from 7 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 8 errors from 6 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/drd/tests/tc09_bad_unlock.stderr.diff-x86
=================================================
--- tc09_bad_unlock.stderr.exp-x86 2012-05-31 22:40:25.000000000 -0400
+++ tc09_bad_unlock.stderr.out 2012-05-31 22:54:39.000000000 -0400
@@ -26,7 +26,7 @@
Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: main (tc09_bad_unlock.c:49)
+ by 0x........: ???
mutex 0x........ was first observed at:
at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
by 0x........: nearly_main (tc09_bad_unlock.c:31)
@@ -47,13 +47,5 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:50)
-Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: main (tc09_bad_unlock.c:50)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:50)
-
-ERROR SUMMARY: 8 errors from 7 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 8 errors from 6 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/helgrind/tests/tc09_bad_unlock.stderr.diff
=================================================
--- tc09_bad_unlock.stderr.exp 2012-05-31 22:39:40.000000000 -0400
+++ tc09_bad_unlock.stderr.out 2012-05-31 22:50:54.000000000 -0400
@@ -42,14 +42,6 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:49)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:49)
-
---------------------
----------------------------------------------------------------
@@ -110,16 +102,8 @@
----------------------------------------------------------------
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:50)
-
-----------------------------------------------------------------
-
Thread #x: Exiting thread still holds 1 lock
...
-ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 9 errors from 9 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/helgrind/tests/tc18_semabuse.stderr.diff
=================================================
--- tc18_semabuse.stderr.exp 2012-05-31 22:39:40.000000000 -0400
+++ tc18_semabuse.stderr.out 2012-05-31 22:51:02.000000000 -0400
@@ -18,13 +18,5 @@
by 0x........: sem_wait (hg_intercepts.c:...)
by 0x........: main (tc18_semabuse.c:34)
-----------------------------------------------------------------
-Thread #x's call to sem_post failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: sem_post_WRK (hg_intercepts.c:...)
- by 0x........: sem_post (hg_intercepts.c:...)
- by 0x........: main (tc18_semabuse.c:37)
-
-
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/helgrind/tests/tc20_verifywrap.stderr.diff
=================================================
--- tc20_verifywrap.stderr.exp 2012-05-31 22:39:40.000000000 -0400
+++ tc20_verifywrap.stderr.out 2012-05-31 22:51:11.000000000 -0400
@@ -1,7 +1,7 @@
------- This is output for >= glibc 2.4 ------
+------ This is output for < glibc 2.4 ------
---------------- pthread_create/join ----------------
@@ -45,13 +45,6 @@
----------------------------------------------------------------
-Thread #x's call to pthread_mutex_init failed
- with error code 95 (EOPNOTSUPP: Operation not supported on transport endpoint)
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:92)
-
-----------------------------------------------------------------
-
Thread #x: pthread_mutex_destroy of a locked mutex
at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:102)
@@ -63,26 +56,8 @@
at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:102)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_lock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:108)
-
-----------------------------------------------------------------
-Thread #x's call to pthread_mutex_trylock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_trylock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:116)
-
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_timedlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_timedlock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:121)
+make pthread_mutex_lock fail: skipped on glibc < 2.4
----------------------------------------------------------------
@@ -90,13 +65,6 @@
at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:125)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:125)
-
---------------- pthread_cond_wait et al ----------------
@@ -215,14 +183,6 @@
by 0x........: sem_wait (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:242)
-----------------------------------------------------------------
-
-Thread #x's call to sem_post failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: sem_post_WRK (hg_intercepts.c:...)
- by 0x........: sem_post (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:245)
-
FIXME: can't figure out how to verify wrap of sem_post
@@ -235,4 +195,4 @@
...
-ERROR SUMMARY: 23 errors from 23 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 17 errors from 17 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/memcheck/tests/manuel3.stderr.diff
=================================================
--- manuel3.stderr.exp 2012-05-31 22:39:48.000000000 -0400
+++ manuel3.stderr.out 2012-05-31 22:45:58.000000000 -0400
@@ -1,4 +1,3 @@
Conditional jump or move depends on uninitialised value(s)
- at 0x........: gcc_cant_inline_me (manuel3.c:22)
- by 0x........: main (manuel3.c:14)
+ at 0x........: main (manuel3.c:12)
=================================================
./valgrind-new/memcheck/tests/partial_load_ok.stderr.diff
=================================================
--- partial_load_ok.stderr.exp 2012-05-31 22:39:48.000000000 -0400
+++ partial_load_ok.stderr.out 2012-05-31 22:46:29.000000000 -0400
@@ -1,7 +1,13 @@
-Invalid read of size 4
+Invalid read of size 1
+ at 0x........: main (partial_load.c:16)
+ Address 0x........ is 0 bytes after a block of size 7 alloc'd
+ at 0x........: calloc (vg_replace_malloc.c:...)
+ by 0x........: main (partial_load.c:14)
+
+Invalid read of size 8
at 0x........: main (partial_load.c:23)
- Address 0x........ is 1 bytes inside a block of size 4 alloc'd
+ Address 0x........ is 1 bytes inside a block of size 8 alloc'd
at 0x........: calloc (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:20)
@@ -11,9 +17,9 @@
at 0x........: calloc (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:28)
-Invalid read of size 4
+Invalid read of size 8
at 0x........: main (partial_load.c:37)
- Address 0x........ is 0 bytes inside a block of size 4 free'd
+ Address 0x........ is 0 bytes inside a block of size 8 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:36)
@@ -25,4 +31,4 @@
For a detailed leak analysis, rerun with: --leak-check=full
For counts of detected and suppressed errors, rerun with: -v
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/memcheck/tests/partial_load_ok.stderr.diff64
=================================================
--- partial_load_ok.stderr.exp64 2012-05-31 22:39:48.000000000 -0400
+++ partial_load_ok.stderr.out 2012-05-31 22:46:29.000000000 -0400
@@ -1,4 +1,10 @@
+Invalid read of size 1
+ at 0x........: main (partial_load.c:16)
+ Address 0x........ is 0 bytes after a block of size 7 alloc'd
+ at 0x........: calloc (vg_replace_malloc.c:...)
+ by 0x........: main (partial_load.c:14)
+
Invalid read of size 8
at 0x........: main (partial_load.c:23)
Address 0x........ is 1 bytes inside a block of size 8 alloc'd
@@ -25,4 +31,4 @@
For a detailed leak analysis, rerun with: --leak-check=full
For counts of detected and suppressed errors, rerun with: -v
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/memcheck/tests/varinfo6.stderr.diff
=================================================
--- varinfo6.stderr.exp 2012-05-31 22:39:48.000000000 -0400
+++ varinfo6.stderr.out 2012-05-31 22:47:25.000000000 -0400
@@ -7,8 +7,7 @@
by 0x........: BZ2_bzCompress (varinfo6.c:4860)
by 0x........: BZ2_bzBuffToBuffCompress (varinfo6.c:5667)
by 0x........: main (varinfo6.c:6517)
- Location 0x........ is 2 bytes inside local var "budget"
- declared at varinfo6.c:3115, in frame #2 of thread 1
+ Address 0x........ is on thread 1's stack
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo6.c:34)
=================================================
./valgrind-new/memcheck/tests/varinfo6.stderr.diff-ppc64
=================================================
--- varinfo6.stderr.exp-ppc64 2012-05-31 22:39:48.000000000 -0400
+++ varinfo6.stderr.out 2012-05-31 22:47:25.000000000 -0400
@@ -1,5 +1,5 @@
Uninitialised byte(s) found during client check request
- at 0x........: croak (varinfo6.c:35)
+ at 0x........: croak (varinfo6.c:34)
by 0x........: mainSort (varinfo6.c:2999)
by 0x........: BZ2_blockSort (varinfo6.c:3143)
by 0x........: BZ2_compressBlock (varinfo6.c:4072)
@@ -10,7 +10,7 @@
Address 0x........ is on thread 1's stack
Uninitialised byte(s) found during client check request
- at 0x........: croak (varinfo6.c:35)
+ at 0x........: croak (varinfo6.c:34)
by 0x........: BZ2_decompress (varinfo6.c:1699)
by 0x........: BZ2_bzDecompress (varinfo6.c:5230)
by 0x........: BZ2_bzBuffToBuffDecompress (varinfo6.c:5715)
=================================================
./valgrind-old/drd/tests/tc04_free_lock.stderr.diff-ppc
=================================================
--- tc04_free_lock.stderr.exp-ppc 2012-05-31 22:24:10.000000000 -0400
+++ tc04_free_lock.stderr.out 2012-05-31 22:38:43.000000000 -0400
@@ -7,28 +7,22 @@
by 0x........: main (tc04_free_lock.c:20)
Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: bar (tc04_free_lock.c:38)
- by 0x........: main (tc04_free_lock.c:26)
+ at 0x........: bar (tc04_free_lock.c:40)
+ by 0x........: process_dl_debug (in /lib64/ld-2.3.4.so)
+ by 0x........: ???
mutex 0x........ was first observed at:
at 0x........: pthread_mutex_lock (drd_pthread_intercepts.c:?)
by 0x........: bar (tc04_free_lock.c:38)
by 0x........: main (tc04_free_lock.c:26)
Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: foo (tc04_free_lock.c:47)
- by 0x........: main (tc04_free_lock.c:27)
+ at 0x........: foo (tc04_free_lock.c:49)
+ by 0x........: process_dl_debug (in /lib64/ld-2.3.4.so)
+ by 0x........: ???
mutex 0x........ was first observed at:
at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
by 0x........: foo (tc04_free_lock.c:46)
by 0x........: main (tc04_free_lock.c:27)
-Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: bar (tc04_free_lock.c:38)
- by 0x........: main (tc04_free_lock.c:28)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_lock (drd_pthread_intercepts.c:?)
- by 0x........: bar (tc04_free_lock.c:38)
- by 0x........: main (tc04_free_lock.c:28)
-
-ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 3 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/drd/tests/tc04_free_lock.stderr.diff-x86
=================================================
--- tc04_free_lock.stderr.exp-x86 2012-05-31 22:24:10.000000000 -0400
+++ tc04_free_lock.stderr.out 2012-05-31 22:38:43.000000000 -0400
@@ -8,7 +8,8 @@
Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
at 0x........: bar (tc04_free_lock.c:40)
- by 0x........: main (tc04_free_lock.c:26)
+ by 0x........: process_dl_debug (in /lib64/ld-2.3.4.so)
+ by 0x........: ???
mutex 0x........ was first observed at:
at 0x........: pthread_mutex_lock (drd_pthread_intercepts.c:?)
by 0x........: bar (tc04_free_lock.c:38)
@@ -16,19 +17,12 @@
Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
at 0x........: foo (tc04_free_lock.c:49)
- by 0x........: main (tc04_free_lock.c:27)
+ by 0x........: process_dl_debug (in /lib64/ld-2.3.4.so)
+ by 0x........: ???
mutex 0x........ was first observed at:
at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
by 0x........: foo (tc04_free_lock.c:46)
by 0x........: main (tc04_free_lock.c:27)
-Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: bar (tc04_free_lock.c:40)
- by 0x........: main (tc04_free_lock.c:28)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_lock (drd_pthread_intercepts.c:?)
- by 0x........: bar (tc04_free_lock.c:38)
- by 0x........: main (tc04_free_lock.c:28)
-
-ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 3 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/drd/tests/tc09_bad_unlock.stderr.diff-glibc2.8
=================================================
--- tc09_bad_unlock.stderr.exp-glibc2.8 2012-05-31 22:24:10.000000000 -0400
+++ tc09_bad_unlock.stderr.out 2012-05-31 22:38:47.000000000 -0400
@@ -26,7 +26,7 @@
Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: (below main)
+ by 0x........: ???
mutex 0x........ was first observed at:
at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
by 0x........: nearly_main (tc09_bad_unlock.c:31)
@@ -47,13 +47,5 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:50)
-Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: (below main)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:50)
-
-ERROR SUMMARY: 8 errors from 7 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 8 errors from 6 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/drd/tests/tc09_bad_unlock.stderr.diff-ppc
=================================================
--- tc09_bad_unlock.stderr.exp-ppc 2012-05-31 22:24:10.000000000 -0400
+++ tc09_bad_unlock.stderr.out 2012-05-31 22:38:47.000000000 -0400
@@ -25,8 +25,8 @@
by 0x........: main (tc09_bad_unlock.c:49)
Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:49)
+ at 0x........: nearly_main (tc09_bad_unlock.c:45)
+ by 0x........: ???
mutex 0x........ was first observed at:
at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
by 0x........: nearly_main (tc09_bad_unlock.c:31)
@@ -47,13 +47,5 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:50)
-Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:50)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:50)
-
-ERROR SUMMARY: 8 errors from 7 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 8 errors from 6 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/drd/tests/tc09_bad_unlock.stderr.diff-x86
=================================================
--- tc09_bad_unlock.stderr.exp-x86 2012-05-31 22:24:10.000000000 -0400
+++ tc09_bad_unlock.stderr.out 2012-05-31 22:38:47.000000000 -0400
@@ -26,7 +26,7 @@
Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: main (tc09_bad_unlock.c:49)
+ by 0x........: ???
mutex 0x........ was first observed at:
at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
by 0x........: nearly_main (tc09_bad_unlock.c:31)
@@ -47,13 +47,5 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:50)
-Destroying locked mutex: mutex 0x........, recursion count 1, owner 1.
- at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: main (tc09_bad_unlock.c:50)
-mutex 0x........ was first observed at:
- at 0x........: pthread_mutex_init (drd_pthread_intercepts.c:?)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:50)
-
-ERROR SUMMARY: 8 errors from 7 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 8 errors from 6 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/helgrind/tests/tc09_bad_unlock.stderr.diff
=================================================
--- tc09_bad_unlock.stderr.exp 2012-05-31 22:22:04.000000000 -0400
+++ tc09_bad_unlock.stderr.out 2012-05-31 22:35:01.000000000 -0400
@@ -42,14 +42,6 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:49)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:49)
-
---------------------
----------------------------------------------------------------
@@ -110,16 +102,8 @@
----------------------------------------------------------------
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:41)
- by 0x........: main (tc09_bad_unlock.c:50)
-
-----------------------------------------------------------------
-
Thread #x: Exiting thread still holds 1 lock
...
-ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 9 errors from 9 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/helgrind/tests/tc18_semabuse.stderr.diff
=================================================
--- tc18_semabuse.stderr.exp 2012-05-31 22:22:04.000000000 -0400
+++ tc18_semabuse.stderr.out 2012-05-31 22:35:09.000000000 -0400
@@ -18,13 +18,5 @@
by 0x........: sem_wait (hg_intercepts.c:...)
by 0x........: main (tc18_semabuse.c:34)
-----------------------------------------------------------------
-Thread #x's call to sem_post failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: sem_post_WRK (hg_intercepts.c:...)
- by 0x........: sem_post (hg_intercepts.c:...)
- by 0x........: main (tc18_semabuse.c:37)
-
-
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/helgrind/tests/tc20_verifywrap.stderr.diff
=================================================
--- tc20_verifywrap.stderr.exp 2012-05-31 22:22:04.000000000 -0400
+++ tc20_verifywrap.stderr.out 2012-05-31 22:35:19.000000000 -0400
@@ -1,7 +1,7 @@
------- This is output for >= glibc 2.4 ------
+------ This is output for < glibc 2.4 ------
---------------- pthread_create/join ----------------
@@ -45,13 +45,6 @@
----------------------------------------------------------------
-Thread #x's call to pthread_mutex_init failed
- with error code 95 (EOPNOTSUPP: Operation not supported on transport endpoint)
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:92)
-
-----------------------------------------------------------------
-
Thread #x: pthread_mutex_destroy of a locked mutex
at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:102)
@@ -63,26 +56,8 @@
at 0x........: pthread_mutex_destroy (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:102)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_lock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:108)
-
-----------------------------------------------------------------
-Thread #x's call to pthread_mutex_trylock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_trylock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:116)
-
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_timedlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_timedlock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:121)
+make pthread_mutex_lock fail: skipped on glibc < 2.4
----------------------------------------------------------------
@@ -90,13 +65,6 @@
at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:125)
-----------------------------------------------------------------
-
-Thread #x's call to pthread_mutex_unlock failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:125)
-
---------------- pthread_cond_wait et al ----------------
@@ -215,14 +183,6 @@
by 0x........: sem_wait (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:242)
-----------------------------------------------------------------
-
-Thread #x's call to sem_post failed
- with error code 22 (EINVAL: Invalid argument)
- at 0x........: sem_post_WRK (hg_intercepts.c:...)
- by 0x........: sem_post (hg_intercepts.c:...)
- by 0x........: main (tc20_verifywrap.c:245)
-
FIXME: can't figure out how to verify wrap of sem_post
@@ -235,4 +195,4 @@
...
-ERROR SUMMARY: 23 errors from 23 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 17 errors from 17 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/memcheck/tests/manuel3.stderr.diff
=================================================
--- manuel3.stderr.exp 2012-05-31 22:23:25.000000000 -0400
+++ manuel3.stderr.out 2012-05-31 22:30:06.000000000 -0400
@@ -1,4 +1,3 @@
Conditional jump or move depends on uninitialised value(s)
- at 0x........: gcc_cant_inline_me (manuel3.c:22)
- by 0x........: main (manuel3.c:14)
+ at 0x........: main (manuel3.c:12)
=================================================
./valgrind-old/memcheck/tests/partial_load_ok.stderr.diff
=================================================
--- partial_load_ok.stderr.exp 2012-05-31 22:23:25.000000000 -0400
+++ partial_load_ok.stderr.out 2012-05-31 22:30:36.000000000 -0400
@@ -1,7 +1,13 @@
-Invalid read of size 4
+Invalid read of size 1
+ at 0x........: main (partial_load.c:16)
+ Address 0x........ is 0 bytes after a block of size 7 alloc'd
+ at 0x........: calloc (vg_replace_malloc.c:...)
+ by 0x........: main (partial_load.c:14)
+
+Invalid read of size 8
at 0x........: main (partial_load.c:23)
- Address 0x........ is 1 bytes inside a block of size 4 alloc'd
+ Address 0x........ is 1 bytes inside a block of size 8 alloc'd
at 0x........: calloc (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:20)
@@ -11,9 +17,9 @@
at 0x........: calloc (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:28)
-Invalid read of size 4
+Invalid read of size 8
at 0x........: main (partial_load.c:37)
- Address 0x........ is 0 bytes inside a block of size 4 free'd
+ Address 0x........ is 0 bytes inside a block of size 8 free'd
at 0x........: free (vg_replace_malloc.c:...)
by 0x........: main (partial_load.c:36)
@@ -25,4 +31,4 @@
For a detailed leak analysis, rerun with: --leak-check=full
For counts of detected and suppressed errors, rerun with: -v
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/memcheck/tests/partial_load_ok.stderr.diff64
=================================================
--- partial_load_ok.stderr.exp64 2012-05-31 22:23:25.000000000 -0400
+++ partial_load_ok.stderr.out 2012-05-31 22:30:36.000000000 -0400
@@ -1,4 +1,10 @@
+Invalid read of size 1
+ at 0x........: main (partial_load.c:16)
+ Address 0x........ is 0 bytes after a block of size 7 alloc'd
+ at 0x........: calloc (vg_replace_malloc.c:...)
+ by 0x........: main (partial_load.c:14)
+
Invalid read of size 8
at 0x........: main (partial_load.c:23)
Address 0x........ is 1 bytes inside a block of size 8 alloc'd
@@ -25,4 +31,4 @@
For a detailed leak analysis, rerun with: --leak-check=full
For counts of detected and suppressed errors, rerun with: -v
-ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/memcheck/tests/varinfo6.stderr.diff
=================================================
--- varinfo6.stderr.exp 2012-05-31 22:23:25.000000000 -0400
+++ varinfo6.stderr.out 2012-05-31 22:31:32.000000000 -0400
@@ -7,8 +7,7 @@
by 0x........: BZ2_bzCompress (varinfo6.c:4860)
by 0x........: BZ2_bzBuffToBuffCompress (varinfo6.c:5667)
by 0x........: main (varinfo6.c:6517)
- Location 0x........ is 2 bytes inside local var "budget"
- declared at varinfo6.c:3115, in frame #2 of thread 1
+ Address 0x........ is on thread 1's stack
Uninitialised byte(s) found during client check request
at 0x........: croak (varinfo6.c:34)
=================================================
./valgrind-old/memcheck/tests/varinfo6.stderr.diff-ppc64
=================================================
--- varinfo6.stderr.exp-ppc64 2012-05-31 22:23:25.000000000 -0400
+++ varinfo6.stderr.out 2012-05-31 22:31:32.000000000 -0400
@@ -1,5 +1,5 @@
Uninitialised byte(s) found during client check request
- at 0x........: croak (varinfo6.c:35)
+ at 0x........: croak (varinfo6.c:34)
by 0x........: mainSort (varinfo6.c:2999)
by 0x........: BZ2_blockSort (varinfo6.c:3143)
by 0x........: BZ2_compressBlock (varinfo6.c:4072)
@@ -10,7 +10,7 @@
Address 0x........ is on thread 1's stack
Uninitialised byte(s) found during client check request
- at 0x........: croak (varinfo6.c:35)
+ at 0x........: croak (varinfo6.c:34)
by 0x........: BZ2_decompress (varinfo6.c:1699)
by 0x........: BZ2_bzDecompress (varinfo6.c:5230)
by 0x........: BZ2_bzBuffToBuffDecompress (varinfo6.c:5715)
|
|
From: Tom H. <to...@co...> - 2012-06-01 02:53:40
|
valgrind revision: 12596 VEX revision: 2361 C compiler: gcc (GCC) 4.4.5 20101112 (Red Hat 4.4.5-2) Assembler: GNU assembler version 2.20.51.0.2-20.fc13 20091009 C library: GNU C Library stable release version 2.12.2 uname -mrs: Linux 3.3.4-5.fc17.x86_64 x86_64 Vendor version: Fedora release 13 (Goddard) Nightly build on bristol ( x86_64, Fedora 13 ) Started at 2012-06-01 03:23:00 BST Ended at 2012-06-01 03:53:21 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 == 602 tests, 2 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/err_disable4 (stderr) helgrind/tests/pth_barrier3 (stderr) |
|
From: Tom H. <to...@co...> - 2012-06-01 02:45:24
|
valgrind revision: 12596 VEX revision: 2361 C compiler: gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4) Assembler: GNU assembler version 2.20.51.0.7-8.fc14 20100318 C library: GNU C Library stable release version 2.13 uname -mrs: Linux 3.3.4-5.fc17.x86_64 x86_64 Vendor version: Fedora release 14 (Laughlin) Nightly build on bristol ( x86_64, Fedora 14 ) Started at 2012-06-01 03:11:39 BST Ended at 2012-06-01 03:45:05 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 == 617 tests, 2 stderr failures, 0 stdout failures, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/nlcontrolc (stdoutB) gdbserver_tests/nlpasssigalrm (stdoutB) memcheck/tests/err_disable4 (stderr) memcheck/tests/origin5-bz2 (stderr) |
|
From: Tom H. <to...@co...> - 2012-06-01 02:44:21
|
valgrind revision: 12596 VEX revision: 2361 C compiler: gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2) Assembler: GNU assembler version 2.21.51.0.6-6.fc15 20110118 C library: GNU C Library stable release version 2.14.1 uname -mrs: Linux 3.3.4-5.fc17.x86_64 x86_64 Vendor version: Fedora release 15 (Lovelock) Nightly build on bristol ( x86_64, Fedora 15 ) Started at 2012-06-01 03:02:48 BST Ended at 2012-06-01 03:44: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 == 618 tests, 3 stderr failures, 0 stdout failures, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/nlcontrolc (stdoutB) gdbserver_tests/nlpasssigalrm (stdoutB) memcheck/tests/err_disable4 (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (stderr) |
|
From: Rich C. <rc...@wi...> - 2012-06-01 02:33:55
|
valgrind revision: 12595 VEX revision: 2360 C compiler: i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5646) Assembler: C library: unknown uname -mrs: Darwin 10.8.0 i386 Vendor version: unknown Nightly build on macbook ( Darwin 10.8.0 i386 ) Started at 2012-05-30 23:05:01 CDT Ended at 2012-05-31 21:33:27 CDT 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 == 493 tests, 478 stderr failures, 130 stdout failures, 3 stderrB failures, 3 stdoutB failures, 32 post failures == gdbserver_tests/mchelp (stdoutB) gdbserver_tests/mchelp (stderrB) gdbserver_tests/mcinvokeRU (stdoutB) gdbserver_tests/mcinvokeRU (stderrB) gdbserver_tests/mcinvokeWS (stdoutB) gdbserver_tests/mcinvokeWS (stderrB) gdbserver_tests/nlfork_chain (stdout) gdbserver_tests/nlfork_chain (stderr) memcheck/tests/accounting (stderr) memcheck/tests/addressable (stdout) memcheck/tests/addressable (stderr) memcheck/tests/atomic_incs (stdout) memcheck/tests/atomic_incs (stderr) memcheck/tests/badaddrvalue (stdout) memcheck/tests/badaddrvalue (stderr) memcheck/tests/badfree-2trace (stderr) memcheck/tests/badfree (stderr) memcheck/tests/badfree3 (stderr) memcheck/tests/badjump (stderr) memcheck/tests/badjump2 (stderr) memcheck/tests/badloop (stderr) memcheck/tests/badpoll (stderr) memcheck/tests/badrw (stderr) memcheck/tests/big_blocks_freed_list (stderr) memcheck/tests/brk2 (stderr) memcheck/tests/buflen_check (stderr) memcheck/tests/bug287260 (stderr) memcheck/tests/calloc-overflow (stderr) memcheck/tests/clientperm (stdout) memcheck/tests/clientperm (stderr) memcheck/tests/clireq_nofill (stdout) memcheck/tests/clireq_nofill (stderr) memcheck/tests/custom-overlap (stderr) memcheck/tests/custom_alloc (stderr) memcheck/tests/darwin/aio (stderr) memcheck/tests/darwin/env (stderr) memcheck/tests/darwin/pth-supp (stderr) memcheck/tests/darwin/scalar (stderr) memcheck/tests/darwin/scalar_fork (stderr) memcheck/tests/darwin/scalar_nocancel (stderr) memcheck/tests/darwin/scalar_vfork (stderr) memcheck/tests/deep_templates (stdout) memcheck/tests/deep_templates (stderr) memcheck/tests/describe-block (stderr) memcheck/tests/doublefree (stderr) memcheck/tests/err_disable1 (stderr) memcheck/tests/err_disable2 (stderr) memcheck/tests/err_disable3 (stderr) memcheck/tests/err_disable4 (stderr) memcheck/tests/erringfds (stdout) memcheck/tests/erringfds (stderr) memcheck/tests/error_counts (stderr) memcheck/tests/errs1 (stderr) memcheck/tests/execve1 (stderr) memcheck/tests/execve2 (stderr) memcheck/tests/exitprog (stderr) memcheck/tests/file_locking (stderr) memcheck/tests/fprw (stderr) memcheck/tests/fwrite (stderr) memcheck/tests/holey_buffer_too_small (stderr) memcheck/tests/inits (stderr) memcheck/tests/inline (stdout) memcheck/tests/inline (stderr) memcheck/tests/leak-0 (stderr) memcheck/tests/leak-cases-full (stderr) memcheck/tests/leak-cases-possible (stderr) memcheck/tests/leak-cases-summary (stderr) memcheck/tests/leak-cycle (stderr) memcheck/tests/leak-delta (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-tree (stderr) memcheck/tests/long-supps (stderr) memcheck/tests/long_namespace_xml (stdout) memcheck/tests/long_namespace_xml (stderr) memcheck/tests/mallinfo (stderr) memcheck/tests/malloc1 (stderr) memcheck/tests/malloc2 (stderr) memcheck/tests/malloc3 (stdout) memcheck/tests/malloc3 (stderr) memcheck/tests/malloc_free_fill (stderr) memcheck/tests/malloc_usable (stderr) memcheck/tests/manuel1 (stdout) memcheck/tests/manuel1 (stderr) memcheck/tests/manuel2 (stdout) memcheck/tests/manuel2 (stderr) memcheck/tests/manuel3 (stderr) memcheck/tests/match-overrun (stderr) memcheck/tests/memalign2 (stderr) memcheck/tests/memalign_test (stderr) memcheck/tests/memcmptest (stdout) memcheck/tests/memcmptest (stderr) memcheck/tests/mempool (stderr) memcheck/tests/mempool2 (stderr) memcheck/tests/metadata (stdout) memcheck/tests/metadata (stderr) memcheck/tests/mismatches (stderr) memcheck/tests/mmaptest (stderr) memcheck/tests/nanoleak2 (stderr) memcheck/tests/nanoleak_supp (stderr) memcheck/tests/new_nothrow (stderr) memcheck/tests/new_override (stdout) memcheck/tests/new_override (stderr) memcheck/tests/noisy_child (stderr) memcheck/tests/null_socket (stderr) memcheck/tests/origin1-yes (stderr) memcheck/tests/origin2-not-quite (stderr) memcheck/tests/origin3-no (stderr) memcheck/tests/origin4-many (stderr) memcheck/tests/origin5-bz2 (stdout) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/origin6-fp (stderr) memcheck/tests/overlap (stdout) memcheck/tests/overlap (stderr) memcheck/tests/partial_load_dflt (stderr) memcheck/tests/partial_load_ok (stderr) memcheck/tests/partiallydefinedeq (stdout) memcheck/tests/partiallydefinedeq (stderr) memcheck/tests/pdb-realloc (stderr) memcheck/tests/pdb-realloc2 (stdout) memcheck/tests/pdb-realloc2 (stderr) memcheck/tests/pipe (stderr) memcheck/tests/pointer-trace (stderr) memcheck/tests/post-syscall (stderr) memcheck/tests/realloc1 (stderr) memcheck/tests/realloc2 (stderr) memcheck/tests/realloc3 (stderr) memcheck/tests/sbfragment (stdout) memcheck/tests/sbfragment (stderr) memcheck/tests/sh-mem-random (stdout) memcheck/tests/sh-mem-random (stderr) memcheck/tests/sh-mem (stderr) memcheck/tests/sigaltstack (stderr) memcheck/tests/sigkill (stderr) memcheck/tests/signal2 (stdout) memcheck/tests/signal2 (stderr) memcheck/tests/sigprocmask (stderr) memcheck/tests/static_malloc (stderr) memcheck/tests/str_tester (stderr) memcheck/tests/strchr (stderr) memcheck/tests/supp1 (stderr) memcheck/tests/supp2 (stderr) memcheck/tests/supp_unknown (stderr) memcheck/tests/suppfree (stderr) memcheck/tests/test-plo-no (stderr) memcheck/tests/test-plo-yes (stderr) memcheck/tests/trivialleak (stderr) memcheck/tests/unit_libcbase (stderr) memcheck/tests/unit_oset (stdout) memcheck/tests/unit_oset (stderr) memcheck/tests/varinfo1 (stderr) memcheck/tests/varinfo2 (stderr) memcheck/tests/varinfo3 (stderr) memcheck/tests/varinfo4 (stdout) memcheck/tests/varinfo4 (stderr) memcheck/tests/varinfo5 (stderr) memcheck/tests/varinfo6 (stdout) memcheck/tests/varinfo6 (stderr) memcheck/tests/vcpu_bz2 (stdout) memcheck/tests/vcpu_bz2 (stderr) memcheck/tests/vcpu_fbench (stdout) memcheck/tests/vcpu_fbench (stderr) memcheck/tests/vcpu_fnfns (stdout) memcheck/tests/vcpu_fnfns (stderr) memcheck/tests/wrap1 (stdout) memcheck/tests/wrap1 (stderr) memcheck/tests/wrap2 (stdout) memcheck/tests/wrap2 (stderr) memcheck/tests/wrap3 (stdout) memcheck/tests/wrap3 (stderr) memcheck/tests/wrap4 (stdout) memcheck/tests/wrap4 (stderr) memcheck/tests/wrap5 (stdout) memcheck/tests/wrap5 (stderr) memcheck/tests/wrap6 (stdout) memcheck/tests/wrap6 (stderr) memcheck/tests/wrap7 (stdout) memcheck/tests/wrap7 (stderr) memcheck/tests/wrap8 (stdout) memcheck/tests/wrap8 (stderr) memcheck/tests/writev1 (stderr) memcheck/tests/x86/bug152022 (stderr) memcheck/tests/x86/espindola2 (stderr) memcheck/tests/x86/fpeflags (stderr) memcheck/tests/x86/fprem (stdout) memcheck/tests/x86/fprem (stderr) memcheck/tests/x86/fxsave (stdout) memcheck/tests/x86/fxsave (stderr) memcheck/tests/x86/insn_basic (stdout) memcheck/tests/x86/insn_basic (stderr) memcheck/tests/x86/insn_cmov (stdout) memcheck/tests/x86/insn_cmov (stderr) memcheck/tests/x86/insn_fpu (stdout) memcheck/tests/x86/insn_fpu (stderr) memcheck/tests/x86/insn_mmx (stdout) memcheck/tests/x86/insn_mmx (stderr) memcheck/tests/x86/insn_sse (stdout) memcheck/tests/x86/insn_sse (stderr) memcheck/tests/x86/insn_sse2 (stdout) memcheck/tests/x86/insn_sse2 (stderr) memcheck/tests/x86/more_x86_fp (stdout) memcheck/tests/x86/more_x86_fp (stderr) memcheck/tests/x86/pushfpopf (stdout) memcheck/tests/x86/pushfpopf (stderr) memcheck/tests/x86/pushfw_x86 (stdout) memcheck/tests/x86/pushfw_x86 (stderr) memcheck/tests/x86/pushpopmem (stdout) memcheck/tests/x86/pushpopmem (stderr) memcheck/tests/x86/sse1_memory (stdout) memcheck/tests/x86/sse1_memory (stderr) memcheck/tests/x86/sse2_memory (stdout) memcheck/tests/x86/sse2_memory (stderr) memcheck/tests/x86/tronical (stderr) memcheck/tests/x86/xor-undef-x86 (stdout) memcheck/tests/x86/xor-undef-x86 (stderr) memcheck/tests/xml1 (stdout) memcheck/tests/xml1 (stderr) cachegrind/tests/chdir (stderr) cachegrind/tests/clreq (stderr) cachegrind/tests/dlclose (stdout) cachegrind/tests/dlclose (stderr) cachegrind/tests/notpower2 (stderr) cachegrind/tests/wrap5 (stdout) cachegrind/tests/wrap5 (stderr) cachegrind/tests/x86/fpu-28-108 (stderr) callgrind/tests/clreq (stderr) callgrind/tests/notpower2-hwpref (stderr) callgrind/tests/notpower2-use (stderr) callgrind/tests/notpower2-wb (stderr) callgrind/tests/notpower2 (stderr) callgrind/tests/simwork-both (stdout) callgrind/tests/simwork-both (stderr) callgrind/tests/simwork-branch (stdout) callgrind/tests/simwork-branch (stderr) callgrind/tests/simwork-cache (stdout) callgrind/tests/simwork-cache (stderr) callgrind/tests/simwork1 (stdout) callgrind/tests/simwork1 (stderr) callgrind/tests/simwork2 (stdout) callgrind/tests/simwork2 (stderr) callgrind/tests/simwork3 (stdout) callgrind/tests/simwork3 (stderr) callgrind/tests/threads-use (stderr) callgrind/tests/threads (stderr) massif/tests/alloc-fns-A (stderr) massif/tests/alloc-fns-A (post) massif/tests/alloc-fns-B (stderr) massif/tests/alloc-fns-B (post) massif/tests/basic (stderr) massif/tests/basic (post) massif/tests/basic2 (stderr) massif/tests/basic2 (post) massif/tests/big-alloc (stderr) massif/tests/big-alloc (post) massif/tests/culling1 (stderr) massif/tests/culling2 (stderr) massif/tests/custom_alloc (stderr) massif/tests/custom_alloc (post) massif/tests/deep-A (stderr) massif/tests/deep-A (post) massif/tests/deep-B (stderr) massif/tests/deep-B (post) massif/tests/deep-C (stderr) massif/tests/deep-C (post) massif/tests/deep-D (stderr) massif/tests/deep-D (post) massif/tests/ignored (stderr) massif/tests/ignored (post) massif/tests/ignoring (stderr) massif/tests/ignoring (post) massif/tests/insig (stderr) massif/tests/insig (post) massif/tests/long-names (stderr) massif/tests/long-names (post) massif/tests/long-time (stderr) massif/tests/long-time (post) massif/tests/malloc_usable (stderr) massif/tests/new-cpp (stderr) massif/tests/new-cpp (post) massif/tests/no-stack-no-heap (stderr) massif/tests/no-stack-no-heap (post) massif/tests/null (stderr) massif/tests/null (post) massif/tests/one (stderr) massif/tests/one (post) massif/tests/overloaded-new (stderr) massif/tests/overloaded-new (post) massif/tests/pages_as_heap (stderr) massif/tests/peak (stderr) massif/tests/peak (post) massif/tests/peak2 (stderr) massif/tests/peak2 (post) massif/tests/realloc (stderr) massif/tests/realloc (post) massif/tests/thresholds_0_0 (stderr) massif/tests/thresholds_0_0 (post) massif/tests/thresholds_0_10 (stderr) massif/tests/thresholds_0_10 (post) massif/tests/thresholds_10_0 (stderr) massif/tests/thresholds_10_0 (post) massif/tests/thresholds_10_10 (stderr) massif/tests/thresholds_10_10 (post) massif/tests/thresholds_5_0 (stderr) massif/tests/thresholds_5_0 (post) massif/tests/thresholds_5_10 (stderr) massif/tests/thresholds_5_10 (post) massif/tests/zero1 (stderr) massif/tests/zero1 (post) massif/tests/zero2 (stderr) massif/tests/zero2 (post) lackey/tests/true (stderr) none/tests/allexec32 (stdout) none/tests/allexec32 (stderr) none/tests/allexec64 (stdout) none/tests/allexec64 (stderr) none/tests/ansi (stderr) none/tests/args (stdout) none/tests/args (stderr) none/tests/async-sigs (stderr) none/tests/bitfield1 (stderr) none/tests/bug129866 (stdout) none/tests/bug129866 (stderr) none/tests/closeall (stderr) none/tests/cmd-with-special (stderr) none/tests/cmdline5 (stderr) none/tests/coolo_sigaction (stdout) none/tests/coolo_sigaction (stderr) none/tests/coolo_strlen (stderr) none/tests/darwin/access_extended (stderr) none/tests/darwin/apple-main-arg (stderr) none/tests/darwin/rlimit (stderr) none/tests/discard (stdout) none/tests/discard (stderr) none/tests/empty-exe (stderr) none/tests/exec-sigmask (stderr) none/tests/execve (stderr) none/tests/faultstatus (stderr) none/tests/fcntl_setown (stderr) none/tests/fdleak_cmsg (stderr) none/tests/fdleak_creat (stderr) none/tests/fdleak_dup (stderr) none/tests/fdleak_dup2 (stderr) none/tests/fdleak_fcntl (stderr) none/tests/fdleak_ipv4 (stdout) none/tests/fdleak_ipv4 (stderr) none/tests/fdleak_open (stderr) none/tests/fdleak_pipe (stderr) none/tests/fdleak_socketpair (stderr) none/tests/floored (stdout) none/tests/floored (stderr) none/tests/fork (stdout) none/tests/fork (stderr) none/tests/fucomip (stderr) none/tests/gxx304 (stderr) none/tests/manythreads (stdout) none/tests/manythreads (stderr) none/tests/map_unaligned (stderr) none/tests/map_unmap (stdout) none/tests/map_unmap (stderr) none/tests/mmap_fcntl_bug (stderr) none/tests/mq (stderr) none/tests/munmap_exe (stderr) none/tests/nestedfns (stdout) none/tests/nestedfns (stderr) none/tests/nodir (stderr) none/tests/pending (stdout) none/tests/pending (stderr) none/tests/process_vm_readv_writev (stderr) none/tests/procfs-non-linux (stderr) none/tests/pth_atfork1 (stdout) none/tests/pth_atfork1 (stderr) none/tests/pth_blockedsig (stdout) none/tests/pth_blockedsig (stderr) none/tests/pth_cancel1 (stdout) none/tests/pth_cancel1 (stderr) none/tests/pth_cancel2 (stderr) none/tests/pth_cvsimple (stdout) none/tests/pth_cvsimple (stderr) none/tests/pth_empty (stderr) none/tests/pth_exit (stderr) none/tests/pth_exit2 (stderr) none/tests/pth_mutexspeed (stdout) none/tests/pth_mutexspeed (stderr) none/tests/pth_once (stdout) none/tests/pth_once (stderr) none/tests/pth_rwlock (stderr) none/tests/pth_stackalign (stdout) none/tests/pth_stackalign (stderr) none/tests/rcrl (stdout) none/tests/rcrl (stderr) none/tests/readline1 (stdout) none/tests/readline1 (stderr) none/tests/require-text-symbol-1 (stderr) none/tests/require-text-symbol-2 (stderr) none/tests/res_search (stdout) none/tests/res_search (stderr) none/tests/resolv (stdout) none/tests/resolv (stderr) none/tests/rlimit64_nofile (stderr) none/tests/rlimit_nofile (stderr) none/tests/sem (stderr) none/tests/semlimit (stderr) none/tests/sha1_test (stderr) none/tests/shell (stdout) none/tests/shell (stderr) none/tests/shell_nosuchfile (stderr) none/tests/shell_valid1 (stderr) none/tests/shell_valid2 (stderr) none/tests/shell_valid3 (stderr) none/tests/shell_zerolength (stderr) none/tests/shortpush (stderr) none/tests/shorts (stderr) none/tests/sigstackgrowth (stdout) none/tests/sigstackgrowth (stderr) none/tests/stackgrowth (stdout) none/tests/stackgrowth (stderr) none/tests/syscall-restart1 (stderr) none/tests/syscall-restart2 (stderr) none/tests/syslog (stderr) none/tests/system (stderr) none/tests/thread-exits (stdout) none/tests/thread-exits (stderr) none/tests/threaded-fork (stdout) none/tests/threaded-fork (stderr) none/tests/threadederrno (stdout) none/tests/threadederrno (stderr) none/tests/timestamp (stderr) none/tests/vgprintf (stderr) none/tests/x86/aad_aam (stdout) none/tests/x86/aad_aam (stderr) none/tests/x86/badseg (stdout) none/tests/x86/badseg (stderr) none/tests/x86/bt_everything (stdout) none/tests/x86/bt_everything (stderr) none/tests/x86/bt_literal (stdout) none/tests/x86/bt_literal (stderr) none/tests/x86/bug125959-x86 (stdout) none/tests/x86/bug125959-x86 (stderr) none/tests/x86/bug126147-x86 (stdout) none/tests/x86/bug126147-x86 (stderr) none/tests/x86/bug132813-x86 (stdout) none/tests/x86/bug132813-x86 (stderr) none/tests/x86/bug135421-x86 (stdout) none/tests/x86/bug135421-x86 (stderr) none/tests/x86/bug137714-x86 (stdout) none/tests/x86/bug137714-x86 (stderr) none/tests/x86/bug152818-x86 (stdout) none/tests/x86/bug152818-x86 (stderr) none/tests/x86/cmpxchg8b (stdout) none/tests/x86/cmpxchg8b (stderr) none/tests/x86/cpuid (stdout) none/tests/x86/cpuid (stderr) none/tests/x86/cse_fail (stdout) none/tests/x86/fcmovnu (stdout) none/tests/x86/fcmovnu (stderr) none/tests/x86/fpu_lazy_eflags (stdout) none/tests/x86/fpu_lazy_eflags (stderr) none/tests/x86/fxtract (stdout) none/tests/x86/fxtract (stderr) none/tests/x86/getseg (stdout) none/tests/x86/getseg (stderr) none/tests/x86/incdec_alt (stdout) none/tests/x86/incdec_alt (stderr) none/tests/x86/insn_basic (stdout) none/tests/x86/insn_basic (stderr) none/tests/x86/insn_cmov (stdout) none/tests/x86/insn_cmov (stderr) none/tests/x86/insn_fpu (stdout) none/tests/x86/insn_fpu (stderr) none/tests/x86/insn_mmx (stdout) none/tests/x86/insn_mmx (stderr) none/tests/x86/insn_sse (stdout) none/tests/x86/insn_sse (stderr) none/tests/x86/insn_sse2 (stdout) none/tests/x86/insn_sse2 (stderr) none/tests/x86/insn_sse3 (stdout) none/tests/x86/insn_sse3 (stderr) none/tests/x86/jcxz (stdout) none/tests/x86/jcxz (stderr) none/tests/x86/lahf (stdout) none/tests/x86/lahf (stderr) none/tests/x86/looper (stdout) none/tests/x86/looper (stderr) none/tests/x86/movx (stdout) none/tests/x86/movx (stderr) none/tests/x86/pushpopseg (stdout) none/tests/x86/pushpopseg (stderr) none/tests/x86/sbbmisc (stdout) none/tests/x86/sbbmisc (stderr) none/tests/x86/shift_ndep (stdout) none/tests/x86/shift_ndep (stderr) none/tests/x86/smc1 (stdout) none/tests/x86/smc1 (stderr) none/tests/x86/x86locked (stdout) none/tests/x86/x86locked (stderr) none/tests/x86/xadd (stdout) none/tests/x86/xadd (stderr) helgrind/tests/annotate_hbefore (stderr) helgrind/tests/annotate_rwlock (stderr) helgrind/tests/annotate_smart_pointer (stderr) helgrind/tests/cond_timedwait_invalid (stderr) helgrind/tests/free_is_write (stderr) helgrind/tests/hg01_all_ok (stderr) helgrind/tests/hg02_deadlock (stderr) helgrind/tests/hg03_inherit (stderr) helgrind/tests/hg04_race (stderr) helgrind/tests/hg05_race2 (stderr) helgrind/tests/hg06_readshared (stderr) helgrind/tests/locked_vs_unlocked1_fwd (stderr) helgrind/tests/locked_vs_unlocked1_rev (stderr) helgrind/tests/locked_vs_unlocked2 (stderr) helgrind/tests/locked_vs_unlocked3 (stderr) helgrind/tests/rwlock_race (stderr) helgrind/tests/rwlock_test (stderr) helgrind/tests/t2t_laog (stderr) helgrind/tests/tc01_simple_race (stderr) helgrind/tests/tc02_simple_tls (stderr) helgrind/tests/tc03_re_excl (stderr) helgrind/tests/tc04_free_lock (stderr) helgrind/tests/tc05_simple_race (stderr) helgrind/tests/tc06_two_races (stderr) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc07_hbl1 (stderr) helgrind/tests/tc08_hbl2 (stderr) helgrind/tests/tc09_bad_unlock (stderr) helgrind/tests/tc10_rec_lock (stderr) helgrind/tests/tc11_XCHG (stderr) helgrind/tests/tc12_rwl_trivial (stderr) helgrind/tests/tc13_laog1 (stderr) helgrind/tests/tc14_laog_dinphils (stderr) helgrind/tests/tc15_laog_lockdel (stderr) helgrind/tests/tc16_byterace (stderr) helgrind/tests/tc17_sembar (stderr) helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc19_shadowmem (stderr) helgrind/tests/tc21_pthonce (stderr) helgrind/tests/tc23_bogus_condwait (stderr) helgrind/tests/tc24_nonzero_sem (stderr) drd/tests/annotate_barrier (stderr) drd/tests/annotate_barrier_xml (stderr) drd/tests/annotate_hb_err (stderr) drd/tests/annotate_hb_race (stderr) drd/tests/annotate_hbefore (stderr) drd/tests/annotate_ignore_read (stderr) drd/tests/annotate_ignore_rw (stderr) drd/tests/annotate_ignore_rw2 (stderr) drd/tests/annotate_ignore_write (stderr) drd/tests/annotate_ignore_write2 (stderr) drd/tests/annotate_order_1 (stderr) drd/tests/annotate_order_2 (stderr) drd/tests/annotate_order_3 (stderr) drd/tests/annotate_publish_hg (stderr) drd/tests/annotate_rwlock (stderr) drd/tests/annotate_rwlock_hg (stderr) drd/tests/annotate_smart_pointer (stderr) drd/tests/annotate_smart_pointer2 (stderr) drd/tests/annotate_spinlock (stderr) drd/tests/annotate_static (stderr) drd/tests/annotate_trace_memory (stderr) drd/tests/annotate_trace_memory_xml (stderr) drd/tests/atomic_var (stderr) drd/tests/bug-235681 (stderr) drd/tests/circular_buffer (stderr) drd/tests/custom_alloc (stderr) drd/tests/custom_alloc_fiw (stderr) drd/tests/fp_race (stderr) drd/tests/fp_race2 (stderr) drd/tests/fp_race_xml (stderr) drd/tests/free_is_write (stderr) drd/tests/free_is_write2 (stderr) drd/tests/hg01_all_ok (stderr) drd/tests/hg02_deadlock (stderr) drd/tests/hg03_inherit (stderr) drd/tests/hg04_race (stderr) drd/tests/hg05_race2 (stderr) drd/tests/hg06_readshared (stderr) drd/tests/hold_lock_1 (stderr) drd/tests/hold_lock_2 (stderr) drd/tests/linuxthreads_det (stderr) drd/tests/memory_allocation (stderr) drd/tests/monitor_example (stderr) drd/tests/new_delete (stderr) drd/tests/pth_broadcast (stderr) drd/tests/pth_cancel_locked (stderr) drd/tests/pth_cleanup_handler (stderr) drd/tests/pth_cond_race (stderr) drd/tests/pth_cond_race2 (stderr) drd/tests/pth_cond_race3 (stderr) drd/tests/pth_create_chain (stderr) drd/tests/pth_detached (stderr) drd/tests/pth_detached2 (stderr) drd/tests/pth_detached3 (stderr) drd/tests/pth_inconsistent_cond_wait (stderr) drd/tests/pth_mutex_reinit (stderr) drd/tests/pth_once (stderr) drd/tests/pth_process_shared_mutex (stderr) drd/tests/pth_uninitialized_cond (stderr) drd/tests/read_and_free_race (stderr) drd/tests/recursive_mutex (stderr) drd/tests/rwlock_race (stderr) drd/tests/rwlock_test (stderr) drd/tests/rwlock_type_checking (stderr) drd/tests/sem_open (stderr) drd/tests/sem_open2 (stderr) drd/tests/sem_open3 (stderr) drd/tests/sem_open_traced (stderr) drd/tests/sigalrm (stderr) drd/tests/sigaltstack (stderr) drd/tests/tc01_simple_race (stderr) drd/tests/tc02_simple_tls (stderr) drd/tests/tc03_re_excl (stderr) drd/tests/tc04_free_lock (stderr) drd/tests/tc05_simple_race (stderr) drd/tests/tc06_two_races (stderr) drd/tests/tc07_hbl1 (stdout) drd/tests/tc07_hbl1 (stderr) drd/tests/tc08_hbl2 (stdout) drd/tests/tc08_hbl2 (stderr) drd/tests/tc09_bad_unlock (stderr) drd/tests/tc10_rec_lock (stderr) drd/tests/tc11_XCHG (stdout) drd/tests/tc11_XCHG (stderr) drd/tests/tc12_rwl_trivial (stderr) drd/tests/tc13_laog1 (stderr) drd/tests/tc15_laog_lockdel (stderr) drd/tests/tc16_byterace (stderr) drd/tests/tc17_sembar (stderr) drd/tests/tc19_shadowmem (stderr) drd/tests/tc21_pthonce (stdout) drd/tests/tc21_pthonce (stderr) drd/tests/tc23_bogus_condwait (stderr) drd/tests/thread_name (stderr) drd/tests/thread_name_xml (stderr) drd/tests/threaded-fork (stderr) drd/tests/trylock (stderr) drd/tests/unit_bitmap (stderr) drd/tests/unit_vc (stderr) exp-bbv/tests/x86/complex_rep (stderr) exp-bbv/tests/x86/fldcw_check (stderr) exp-bbv/tests/x86/million (stderr) exp-bbv/tests/x86/rep_prefix (stderr) ================================================= ./valgrind-new/cachegrind/tests/chdir.stderr.diff ================================================= --- chdir.stderr.exp 2012-05-31 20:27:47.000000000 -0500 +++ chdir.stderr.out 2012-05-31 21:30:47.000000000 -0500 @@ -1,17 +1,28 @@ -I refs: -I1 misses: -LLi misses: -I1 miss rate: -LLi miss rate: - -D refs: -D1 misses: -LLd misses: -D1 miss rate: -LLd miss rate: - -LL refs: -LL misses: -LL miss rate: +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3800D635: ??? + by 0x3800D7F8: ??? + by 0x38054797: ??? + by 0x38056627: ??? + by 0x3807BA88: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. + ================================================= ./valgrind-new/cachegrind/tests/clreq.stderr.diff ================================================= --- clreq.stderr.exp 2012-05-31 20:27:47.000000000 -0500 +++ clreq.stderr.out 2012-05-31 21:30:48.000000000 -0500 @@ -0,0 +1,27 @@ + +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3800D635: ??? + by 0x3800D7F8: ??? + by 0x38054797: ??? + by 0x38056627: ??? + by 0x3807BA88: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. + ================================================= ./valgrind-new/cachegrind/tests/dlclose.stderr.diff ================================================= --- dlclose.stderr.exp 2012-05-31 20:27:47.000000000 -0500 +++ dlclose.stderr.out 2012-05-31 21:30:48.000000000 -0500 @@ -1,17 +1,28 @@ -I refs: -I1 misses: -LLi misses: -I1 miss rate: -LLi miss rate: - -D refs: -D1 misses: -LLd misses: -D1 miss rate: -LLd miss rate: - -LL refs: -LL misses: -LL miss rate: +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3800D635: ??? + by 0x3800D7F8: ??? + by 0x38054797: ??? + by 0x38056627: ??? + by 0x3807BA88: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. + ================================================= ./valgrind-new/cachegrind/tests/dlclose.stdout.diff ================================================= --- dlclose.stdout.exp 2012-05-31 20:27:47.000000000 -0500 +++ dlclose.stdout.out 2012-05-31 21:30:48.000000000 -0500 @@ -1 +0,0 @@ -This is myprint! ================================================= ./valgrind-new/cachegrind/tests/notpower2.stderr.diff ================================================= --- notpower2.stderr.exp 2012-05-31 20:27:47.000000000 -0500 +++ notpower2.stderr.out 2012-05-31 21:30:48.000000000 -0500 @@ -1,17 +1,28 @@ -I refs: -I1 misses: -LLi misses: -I1 miss rate: -LLi miss rate: - -D refs: -D1 misses: -LLd misses: -D1 miss rate: -LLd miss rate: - -LL refs: -LL misses: -LL miss rate: +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3800D635: ??? + by 0x3800D7F8: ??? + by 0x38054797: ??? + by 0x38056627: ??? + by 0x3807BA88: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. + ================================================= ./valgrind-new/cachegrind/tests/wrap5.stderr.diff ================================================= --- wrap5.stderr.exp 2012-05-31 20:27:47.000000000 -0500 +++ wrap5.stderr.out 2012-05-31 21:30:48.000000000 -0500 @@ -1,17 +1,28 @@ -I refs: -I1 misses: -LLi misses: -I1 miss rate: -LLi miss rate: - -D refs: -D1 misses: -LLd misses: -D1 miss rate: -LLd miss rate: - -LL refs: -LL misses: -LL miss rate: +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3800D635: ??? + by 0x3800D7F8: ??? + by 0x38054797: ??? + by 0x38056627: ??? + by 0x3807BA88: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. + ================================================= ./valgrind-new/cachegrind/tests/wrap5.stdout.diff ================================================= --- wrap5.stdout.exp 2012-05-31 20:27:47.000000000 -0500 +++ wrap5.stdout.out 2012-05-31 21:30:48.000000000 -0500 @@ -1,37 +0,0 @@ -computing fact1(7) -in wrapper1-pre: fact(7) -in wrapper2-pre: fact(6) -in wrapper1-pre: fact(5) -in wrapper2-pre: fact(4) -in wrapper1-pre: fact(3) -in wrapper2-pre: fact(2) -in wrapper1-pre: fact(1) -in wrapper2-pre: fact(0) -in wrapper2-post: fact(0) = 1 -in wrapper1-post: fact(1) = 1 -in wrapper2-post: fact(2) = 2 -in wrapper1-post: fact(3) = 6 -in wrapper2-pre: fact(2) -in wrapper1-pre: fact(1) -in wrapper2-pre: fact(0) -in wrapper2-post: fact(0) = 1 -in wrapper1-post: fact(1) = 1 -in wrapper2-post: fact(2) = 2 -in wrapper2-post: fact(4) = 32 -in wrapper1-post: fact(5) = 160 -in wrapper2-pre: fact(2) -in wrapper1-pre: fact(1) -in wrapper2-pre: fact(0) -in wrapper2-post: fact(0) = 1 -in wrapper1-post: fact(1) = 1 -in wrapper2-post: fact(2) = 2 -in wrapper2-post: fact(6) = 972 -in wrapper1-post: fact(7) = 6804 -in wrapper2-pre: fact(2) -in wrapper1-pre: fact(1) -in wrapper2-pre: fact(0) -in wrapper2-post: fact(0) = 1 -in wrapper1-post: fact(1) = 1 -in wrapper2-post: fact(2) = 2 -fact1(7) = 6806 -allocated 51 Lards ================================================= ./valgrind-new/cachegrind/tests/x86/fpu-28-108.stderr.diff ================================================= --- fpu-28-108.stderr.exp 2012-05-31 20:27:47.000000000 -0500 +++ fpu-28-108.stderr.out 2012-05-31 21:30:48.000000000 -0500 @@ -1,17 +1,28 @@ -I refs: -I1 misses: -LLi misses: -I1 miss rate: -LLi miss rate: - -D refs: -D1 misses: -LLd misses: -D1 miss rate: -LLd miss rate: - -LL refs: -LL misses: -LL miss rate: +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3800D635: ??? + by 0x3800D7F8: ??? + by 0x38054797: ??? + by 0x38056627: ??? + by 0x3807BA88: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. + ================================================= ./valgrind-new/callgrind/tests/clreq.stderr.diff ================================================= --- clreq.stderr.exp 2012-05-31 20:27:43.000000000 -0500 +++ clreq.stderr.out 2012-05-31 21:30:48.000000000 -0500 @@ -1,6 +1,28 @@ -Events : Ir -Collected : +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3801F135: ??? + by 0x3801F2F8: ??? + by 0x38064987: ??? + by 0x38066817: ??? + by 0x3808BC78: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. -I refs: ================================================= ./valgrind-new/callgrind/tests/notpower2-hwpref.stderr.diff ================================================= --- notpower2-hwpref.stderr.exp 2012-05-31 20:27:43.000000000 -0500 +++ notpower2-hwpref.stderr.out 2012-05-31 21:30:49.000000000 -0500 @@ -1,20 +1,28 @@ -Events : Ir Dr Dw I1mr D1mr D1mw ILmr DLmr DLmw -Collected : +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3801F135: ??? + by 0x3801F2F8: ??? + by 0x38064987: ??? + by 0x38066817: ??? + by 0x3808BC78: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. -I refs: -I1 misses: -LLi misses: -I1 miss rate: -LLi miss rate: - -D refs: -D1 misses: -LLd misses: -D1 miss rate: -LLd miss rate: - -LL refs: -LL misses: -LL miss rate: ================================================= ./valgrind-new/callgrind/tests/notpower2-use.stderr.diff ================================================= --- notpower2-use.stderr.exp 2012-05-31 20:27:43.000000000 -0500 +++ notpower2-use.stderr.out 2012-05-31 21:30:49.000000000 -0500 @@ -1,20 +1,28 @@ -Events : Ir Dr Dw I1mr D1mr D1mw ILmr DLmr DLmw AcCost1 SpLoss1 AcCost2 SpLoss2 -Collected : +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3801F135: ??? + by 0x3801F2F8: ??? + by 0x38064987: ??? + by 0x38066817: ??? + by 0x3808BC78: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. -I refs: -I1 misses: -LLi misses: -I1 miss rate: -LLi miss rate: - -D refs: -D1 misses: -LLd misses: -D1 miss rate: -LLd miss rate: - -LL refs: -LL misses: -LL miss rate: ================================================= ./valgrind-new/callgrind/tests/notpower2-wb.stderr.diff ================================================= --- notpower2-wb.stderr.exp 2012-05-31 20:27:43.000000000 -0500 +++ notpower2-wb.stderr.out 2012-05-31 21:30:49.000000000 -0500 @@ -1,20 +1,28 @@ -Events : Ir Dr Dw I1mr D1mr D1mw ILmr DLmr DLmw ILdmr DLdmr DLdmw -Collected : +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3801F135: ??? + by 0x3801F2F8: ??? + by 0x38064987: ??? + by 0x38066817: ??? + by 0x3808BC78: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. -I refs: -I1 misses: -LLi misses: -I1 miss rate: -LLi miss rate: - -D refs: -D1 misses: -LLd misses: -D1 miss rate: -LLd miss rate: - -LL refs: -LL misses: -LL miss rate: ================================================= ./valgrind-new/callgrind/tests/notpower2.stderr.diff ================================================= --- notpower2.stderr.exp 2012-05-31 20:27:43.000000000 -0500 +++ notpower2.stderr.out 2012-05-31 21:30:49.000000000 -0500 @@ -1,20 +1,28 @@ -Events : Ir Dr Dw I1mr D1mr D1mw ILmr DLmr DLmw -Collected : +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3801F135: ??? + by 0x3801F2F8: ??? + by 0x38064987: ??? + by 0x38066817: ??? + by 0x3808BC78: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. -I refs: -I1 misses: -LLi misses: -I1 miss rate: -LLi miss rate: - -D refs: -D1 misses: -LLd misses: -D1 miss rate: -LLd miss rate: - -LL refs: -LL misses: -LL miss rate: ================================================= ./valgrind-new/callgrind/tests/simwork-both.stderr.diff ================================================= --- simwork-both.stderr.exp 2012-05-31 20:27:43.000000000 -0500 +++ simwork-both.stderr.out 2012-05-31 21:30:50.000000000 -0500 @@ -1,24 +1,28 @@ -Events : Ir Dr Dw I1mr D1mr D1mw ILmr DLmr DLmw Bc Bcm Bi Bim -Collected : +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3801F135: ??? + by 0x3801F2F8: ??? + by 0x38064987: ??? + by 0x38066817: ??? + by 0x3808BC78: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. -I refs: -I1 misses: -LLi misses: -I1 miss rate: -LLi miss rate: - -D refs: -D1 misses: -LLd misses: -D1 miss rate: -LLd miss rate: - -LL refs: -LL misses: -LL miss rate: - -Branches: -Mispredicts: -Mispred rate: ================================================= ./valgrind-new/callgrind/tests/simwork-both.stdout.diff ================================================= --- simwork-both.stdout.exp 2012-05-31 20:27:43.000000000 -0500 +++ simwork-both.stdout.out 2012-05-31 21:30:49.000000000 -0500 @@ -1 +0,0 @@ -Sum: 1000000 ================================================= ./valgrind-new/callgrind/tests/simwork-branch.stderr.diff ================================================= --- simwork-branch.stderr.exp 2012-05-31 20:27:43.000000000 -0500 +++ simwork-branch.stderr.out 2012-05-31 21:30:50.000000000 -0500 @@ -1,10 +1,28 @@ -Events : Ir Bc Bcm Bi Bim -Collected : +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3801F135: ??? + by 0x3801F2F8: ??? + by 0x38064987: ??? + by 0x38066817: ??? + by 0x3808BC78: ??? -I refs: +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. -Branches: -Mispredicts: -Mispred rate: ================================================= ./valgrind-new/callgrind/tests/simwork-branch.stdout.diff ================================================= --- simwork-branch.stdout.exp 2012-05-31 20:27:43.000000000 -0500 +++ simwork-branch.stdout.out 2012-05-31 21:30:50.000000000 -0500 @@ -1 +0,0 @@ -Sum: 1000000 ================================================= ./valgrind-new/callgrind/tests/simwork-cache.stderr.diff ================================================= --- simwork-cache.stderr.exp 2012-05-31 20:27:43.000000000 -0500 +++ simwork-cache.stderr.out 2012-05-31 21:30:50.000000000 -0500 @@ -1,20 +1,28 @@ -Events : Ir Dr Dw I1mr D1mr D1mw ILmr DLmr DLmw -Collected : +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3801F135: ??? + by 0x3801F2F8: ??? + by 0x38064987: ??? + by 0x38066817: ??? + by 0x3808BC78: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. -I refs: -I1 misses: -LLi misses: -I1 miss rate: -LLi miss rate: - -D refs: -D1 misses: -LLd misses: -D1 miss rate: -LLd miss rate: - -LL refs: -LL misses: -LL miss rate: ================================================= ./valgrind-new/callgrind/tests/simwork-cache.stdout.diff ================================================= --- simwork-cache.stdout.exp 2012-05-31 20:27:43.000000000 -0500 +++ simwork-cache.stdout.out 2012-05-31 21:30:50.000000000 -0500 @@ -1 +0,0 @@ -Sum: 1000000 ================================================= ./valgrind-new/callgrind/tests/simwork1.stderr.diff ================================================= --- simwork1.stderr.exp 2012-05-31 20:27:43.000000000 -0500 +++ simwork1.stderr.out 2012-05-31 21:30:50.000000000 -0500 @@ -1,20 +1,28 @@ -Events : Ir Dr Dw I1mr D1mr D1mw ILmr DLmr DLmw -Collected : +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3801F135: ??? + by 0x3801F2F8: ??? + by 0x38064987: ??? + by 0x38066817: ??? + by 0x3808BC78: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. -I refs: -I1 misses: -LLi misses: -I1 miss rate: -LLi miss rate: - -D refs: -D1 misses: -LLd misses: -D1 miss rate: -LLd miss rate: - -LL refs: -LL misses: -LL miss rate: ================================================= ./valgrind-new/callgrind/tests/simwork1.stdout.diff ================================================= --- simwork1.stdout.exp 2012-05-31 20:27:43.000000000 -0500 +++ simwork1.stdout.out 2012-05-31 21:30:50.000000000 -0500 @@ -1 +0,0 @@ -Sum: 1000000 ================================================= ./valgrind-new/callgrind/tests/simwork2.stderr.diff ================================================= --- simwork2.stderr.exp 2012-05-31 20:27:43.000000000 -0500 +++ simwork2.stderr.out 2012-05-31 21:30:50.000000000 -0500 @@ -1,20 +1,28 @@ -Events : Ir Dr Dw I1mr D1mr D1mw ILmr DLmr DLmw ILdmr DLdmr DLdmw -Collected : +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3801F135: ??? + by 0x3801F2F8: ??? + by 0x38064987: ??? + by 0x38066817: ??? + by 0x3808BC78: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. -I refs: -I1 misses: -LLi misses: -I1 miss rate: -LLi miss rate: - -D refs: -D1 misses: -LLd misses: -D1 miss rate: -LLd miss rate: - -LL refs: -LL misses: -LL miss rate: ================================================= ./valgrind-new/callgrind/tests/simwork2.stdout.diff ================================================= --- simwork2.stdout.exp 2012-05-31 20:27:43.000000000 -0500 +++ simwork2.stdout.out 2012-05-31 21:30:50.000000000 -0500 @@ -1 +0,0 @@ -Sum: 1000000 ================================================= ./valgrind-new/callgrind/tests/simwork3.stderr.diff ================================================= --- simwork3.stderr.exp 2012-05-31 20:27:43.000000000 -0500 +++ simwork3.stderr.out 2012-05-31 21:30:51.000000000 -0500 @@ -1,20 +1,28 @@ -Events : Ir Dr Dw I1mr D1mr D1mw ILmr DLmr DLmw AcCost1 SpLoss1 AcCost2 SpLoss2 -Collected : +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3801F135: ??? + by 0x3801F2F8: ??? + by 0x38064987: ??? + by 0x38066817: ??? + by 0x3808BC78: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. -I refs: -I1 misses: -LLi misses: -I1 miss rate: -LLi miss rate: - -D refs: -D1 misses: -LLd misses: -D1 miss rate: -LLd miss rate: - -LL refs: -LL misses: -LL miss rate: ================================================= ./valgrind-new/callgrind/tests/simwork3.stdout.diff ================================================= --- simwork3.stdout.exp 2012-05-31 20:27:43.000000000 -0500 +++ simwork3.stdout.out 2012-05-31 21:30:51.000000000 -0500 @@ -1 +0,0 @@ -Sum: 1000000 ================================================= ./valgrind-new/callgrind/tests/threads-use.stderr.diff ================================================= --- threads-use.stderr.exp 2012-05-31 20:27:43.000000000 -0500 +++ threads-use.stderr.out 2012-05-31 21:30:51.000000000 -0500 @@ -1,20 +1,28 @@ -Events : Ir Dr Dw I1mr D1mr D1mw ILmr DLmr DLmw AcCost1 SpLoss1 AcCost2 SpLoss2 Ge sysCount sysTime -Collected : +valgrind: m_scheduler/scheduler.c:707 (do_pre_run_checks): Assertion 'VG_IS_32_ALIGNED(a_vex)' failed. + at 0x3801F135: ??? + by 0x3801F2F8: ??? + by 0x38064987: ??? + by 0x38066817: ??? + by 0x3808BC78: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable + at 0x8FE01030: _dyld_start (in /usr/lib/dyld) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happe... [truncated message content] |
|
From: Tom H. <to...@co...> - 2012-06-01 02:27:16
|
valgrind revision: 12596 VEX revision: 2361 C compiler: gcc (GCC) 4.6.3 20120306 (Red Hat 4.6.3-2) Assembler: GNU assembler version 2.21.53.0.1-6.fc16 20110716 C library: GNU C Library development release version 2.14.90 uname -mrs: Linux 3.3.4-5.fc17.x86_64 x86_64 Vendor version: Fedora release 16 (Verne) Nightly build on bristol ( x86_64, Fedora 16 ) Started at 2012-06-01 02:51:56 BST Ended at 2012-06-01 03:27:00 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 == 618 tests, 4 stderr failures, 0 stdout failures, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/nlcontrolc (stdoutB) gdbserver_tests/nlpasssigalrm (stdoutB) memcheck/tests/err_disable4 (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (stderr) memcheck/tests/str_tester (stderr) |
|
From: Christian B. <bor...@de...> - 2012-06-01 02:12:12
|
valgrind revision: 12596 VEX revision: 2361 C compiler: gcc (SUSE Linux) 4.3.4 [gcc-4_3-branch revision 152973] Assembler: GNU assembler (GNU Binutils; SUSE Linux Enterprise 11) 2.20.0.20100122-0.7.9 C library: GNU C Library stable release version 2.11.1 (20100118) uname -mrs: Linux 2.6.32.54-0.3-default s390x Vendor version: Welcome to SUSE Linux Enterprise Server 11 SP1 (s390x) - Kernel %r (%t). Nightly build on sless390 ( SUSE Linux Enterprise Server 11 SP1 gcc 4.3.4 on z196 (s390x) ) Started at 2012-06-01 03:45:01 CEST Ended at 2012-06-01 04:12: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 == 540 tests, 4 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc20_verifywrap (stderr) drd/tests/tc04_free_lock (stderr) drd/tests/tc09_bad_unlock (stderr) |
|
From: Tom H. <to...@co...> - 2012-06-01 02:10:52
|
valgrind revision: 12596 VEX revision: 2361 C compiler: gcc (GCC) 4.7.0 20120507 (Red Hat 4.7.0-5) Assembler: GNU assembler version 2.22.52.0.1-10.fc17 20120131 C library: GNU C Library stable release version 2.15 uname -mrs: Linux 3.3.4-5.fc17.x86_64 x86_64 Vendor version: Fedora release 17 (Beefy Miracle) Nightly build on bristol ( x86_64, Fedora 17 (Beefy Miracle) ) Started at 2012-06-01 02:41:16 BST Ended at 2012-06-01 03:10:29 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 == 618 tests, 10 stderr failures, 1 stdout failure, 1 stderrB failure, 2 stdoutB failures, 0 post failures == gdbserver_tests/mcinfcallWSRU (stderr) gdbserver_tests/mcinfcallWSRU (stderrB) gdbserver_tests/mcmain_pic (stderr) gdbserver_tests/nlcontrolc (stdoutB) gdbserver_tests/nlpasssigalrm (stdoutB) memcheck/tests/err_disable4 (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/overlap (stderr) memcheck/tests/str_tester (stderr) drd/tests/bar_bad (stderr) drd/tests/bar_bad_xml (stderr) drd/tests/pth_cancel_locked (stderr) exp-sgcheck/tests/preen_invars (stdout) exp-sgcheck/tests/preen_invars (stderr) |