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
(9) |
|
2
(24) |
3
(22) |
4
(16) |
5
(32) |
6
(19) |
7
(22) |
8
(30) |
|
9
(21) |
10
(21) |
11
(20) |
12
(13) |
13
(24) |
14
(23) |
15
(13) |
|
16
(11) |
17
(6) |
18
(12) |
19
(17) |
20
(26) |
21
(25) |
22
(37) |
|
23
(32) |
24
(21) |
25
(30) |
26
(22) |
27
(24) |
28
(19) |
29
(9) |
|
30
(5) |
31
(6) |
|
|
|
|
|
|
From: <sv...@va...> - 2011-10-19 22:01:10
|
Author: florian Date: 2011-10-19 22:56:25 +0100 (Wed, 19 Oct 2011) New Revision: 12170 Log: Add some verbiage about "make dist". Modified: trunk/README_DEVELOPERS Modified: trunk/README_DEVELOPERS =================================================================== --- trunk/README_DEVELOPERS 2011-10-19 20:48:45 UTC (rev 12169) +++ trunk/README_DEVELOPERS 2011-10-19 21:56:25 UTC (rev 12170) @@ -17,6 +17,23 @@ warnings, etc. +Building a distribution tarball +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +To build a distribution tarball from the valgrind sources: + + make dist + +In addition to compiling, linking and packaging everything up, the command +will also build the documentation. Even if all required tools for building the +documentation are installed, this step may not succeed because of hidden +dependencies. E.g. on Ubuntu you must have "docbook-xsl" installed. +Additionally, specific tool versions maybe needed. + +If you only want to test whether the generated tarball is complete and runs +regression tests successfully, building documentation is not needed. +Edit docs/Makefile.am, search for BUILD_ALL_DOCS and follow instructions there. + + Running the regression tests ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ To build and run all the regression tests, run "make [--quiet] regtest". |
|
From: Philippe W. <phi...@sk...> - 2011-10-19 21:29:13
|
Have a naming convention for these files looks good.
> I propose to name exp files like so:
>
> BASE.STREAM.exp[-PLATFORM[-FAILCODE][-REASON]]
In the above, we have both . and - as separator, while - is also used
either in the platform (e.g. x86-linux) or in the test name (e.g. threaded-fork.stderr.exp).
=> It might be easier for possible automatic processing and/or ease of wildcards
to systematically use the . to separate the pieces.
Wouldn't a more flexible format be needed ?
With the above it is e.g.
mandatory to give the platform for a kfail.
and if multiple platforms share the same output file, then we need
two (or more) identical files.
So, maybe something like:
BASE.STREAM.exp[.[PLATFORM][.FAILCODE[.REASON]]]
and then in PLATFORM, allows an "or" of platforms (with an _ to separate them ?)
An empty PLATFORM (i.e. two successive . characters) would match any
platform. Not clear to me if you expect that the REASON can only be given
when a FAILCODE is given. The above assumes that.
It might also be better to have a proposal which keeps the "'fixed' file extension parts'
at the end to have e.g. *.exp
*.stdout.exp
matching
(otherwise, you need to always have the double of wildcards, e.g; *.exp *.exp.*).
Not clear however in which order to put what at the end.
> PLATFORM := x86 | x86-linux | x86-darwin | amd64 | arm | ppc32 | ppc64 |
> s390x
...
> The matching in vg_regtest would start with the most specialized exp
> file towards the generic one and it would stop as soon as a match is
> obtained. E.g. when looking for a stderr exp file for foo.vgtest while
> running on x86 Linux, vg_regtest would attempt to match in this order:
>
> foo.stderr.exp-x86-linux.*
> foo.stderr.exp-x86-*
> foo.stderr.exp-32bit-*
32bit is not one of the PLATFORM values above. I guess such 'generic' platforms
is however needed. vg_regtest will have the knowledge to translate a specific
platform in one or more of such generic platforms.
> foo.stderr.exp-*
I do not understand the matching logic and how you will avoid false positive.
This last line will e.g. match foo.stderr:exp-ARM.
And on linux, foo.stderr.exp-x86-* will match foo.stderr.exp-x86-darwin
> There is still a possibility for false positives in the case where
> there are several exp files that differ only in the REASON code. To
> handle that properly we would have to formalize the REASON code.
> I have no plans to do that as this happens rarely.
I am not sure to understand the concept of false positive you are looking at
(mentionned here, but also at the begin of the proposal).
I understand the one at the beginning of the mail i.e. that matching any file can
cause that a regression for a platform matches a "kfail" of another platform, and so
is considered "normal expected failure" while it is in fact a brand new regression.
I do not understand this second "false positive" concept:
Imagine that I have a test which (for bad reasons, but let's assume not easy to fix)
can give randomly two outputs:
foo.stderr.exp-x86-linux-kfail-notfixablebehaviour1
foo.stderr.exp-x86-linux-kfail-notfixablebehaviour2
The above only differs in the REASON code. Why/how can this give a false positive ?
Philippe
|
|
From: <sv...@va...> - 2011-10-19 20:53:31
|
Author: florian Date: 2011-10-19 21:48:45 +0100 (Wed, 19 Oct 2011) New Revision: 12169 Log: Fix a comment. Modified: trunk/docs/Makefile.am Modified: trunk/docs/Makefile.am =================================================================== --- trunk/docs/Makefile.am 2011-10-19 20:17:50 UTC (rev 12168) +++ trunk/docs/Makefile.am 2011-10-19 20:48:45 UTC (rev 12169) @@ -6,7 +6,7 @@ # Comment out the next line to skip building print docs. The default # is not to skip building print docs. Note, after changing it -# you of course need to re-run configure to make it take effect. +# you need to re-run autogen.sh and configure to make it take effect. BUILD_ALL_DOCS=yes ##------------------------------------------------------------- |
|
From: <sv...@va...> - 2011-10-19 20:41:04
|
Author: sewardj
Date: 2011-10-19 21:36:20 +0100 (Wed, 19 Oct 2011)
New Revision: 2220
Log:
Ignore redundant REX.W on PTEST. #279071.
(Jakub Jelinek, ja...@re...)
Modified:
trunk/priv/guest_amd64_toIR.c
Modified: trunk/priv/guest_amd64_toIR.c
===================================================================
--- trunk/priv/guest_amd64_toIR.c 2011-10-19 20:08:57 UTC (rev 2219)
+++ trunk/priv/guest_amd64_toIR.c 2011-10-19 20:36:20 UTC (rev 2220)
@@ -15814,7 +15814,8 @@
/* 66 0f 38 17 /r = PTEST xmm1, xmm2/m128
Logical compare (set ZF and CF from AND/ANDN of the operands) */
- if (have66noF2noF3( pfx ) && sz == 2
+ if (have66noF2noF3( pfx )
+ && (sz == 2 || /* ignore redundant REX.W */ sz == 8)
&& insn[0] == 0x0F && insn[1] == 0x38 && insn[2] == 0x17) {
modrm = insn[3];
IRTemp vecE = newTemp(Ity_V128);
|
|
From: Christian B. <bor...@de...> - 2011-10-19 20:23:58
|
valgrind revision: 12167 VEX revision: 2218 GCC version: gcc (SUSE Linux) 4.3.4 [gcc-4_3-branch revision 152973] C library: GNU C Library stable release version 2.11.1 (20100118), by Roland McGrath et al. uname -mrs: Linux 2.6.32.45-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 2011-10-19 21:45:01 CEST Ended at 2011-10-19 22:23:43 CEST Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 505 tests, 5 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/linux/timerfd-syscall (stderr) helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc20_verifywrap (stderr) drd/tests/tc04_free_lock (stderr) drd/tests/tc09_bad_unlock (stderr) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 504 tests, 5 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/linux/timerfd-syscall (stderr) helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc20_verifywrap (stderr) drd/tests/tc04_free_lock (stderr) drd/tests/tc09_bad_unlock (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Wed Oct 19 22:05:06 2011 --- new.short Wed Oct 19 22:23:43 2011 *************** *** 8,10 **** ! == 504 tests, 5 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/linux/timerfd-syscall (stderr) --- 8,10 ---- ! == 505 tests, 5 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/linux/timerfd-syscall (stderr) |
|
From: <sv...@va...> - 2011-10-19 20:22:34
|
Author: sewardj
Date: 2011-10-19 21:17:50 +0100 (Wed, 19 Oct 2011)
New Revision: 12168
Log:
Add test cases for PCMPxSTRx case 0x38. See #273318.
Modified:
trunk/none/tests/amd64/pcmpstr64.c
trunk/none/tests/amd64/pcmpstr64.stdout.exp
Modified: trunk/none/tests/amd64/pcmpstr64.c
===================================================================
--- trunk/none/tests/amd64/pcmpstr64.c 2011-10-19 16:22:50 UTC (rev 12167)
+++ trunk/none/tests/amd64/pcmpstr64.c 2011-10-19 20:17:50 UTC (rev 12168)
@@ -204,7 +204,7 @@
switch (imm8) {
case 0x00:
case 0x02: case 0x08: case 0x0C: case 0x12: case 0x1A:
- case 0x3A: case 0x44: case 0x4A:
+ case 0x38: case 0x3A: case 0x44: case 0x4A:
break;
default:
return False;
@@ -1155,7 +1155,99 @@
}
+//////////////////////////////////////////////////////////
+// //
+// ISTRI_38 //
+// //
+//////////////////////////////////////////////////////////
+UInt h_pcmpistri_38 ( V128* argL, V128* argR )
+{
+ V128 block[2];
+ memcpy(&block[0], argL, sizeof(V128));
+ memcpy(&block[1], argR, sizeof(V128));
+ ULong res, flags;
+ __asm__ __volatile__(
+ "subq $1024, %%rsp" "\n\t"
+ "movdqu 0(%2), %%xmm2" "\n\t"
+ "movdqu 16(%2), %%xmm11" "\n\t"
+ "pcmpistri $0x38, %%xmm2, %%xmm11" "\n\t"
+ "pushfq" "\n\t"
+ "popq %%rdx" "\n\t"
+ "movq %%rcx, %0" "\n\t"
+ "movq %%rdx, %1" "\n\t"
+ "addq $1024, %%rsp" "\n\t"
+ : /*out*/ "=r"(res), "=r"(flags) : "r"/*in*/(&block[0])
+ : "rcx","rdx","xmm0","xmm2","xmm11","cc","memory"
+ );
+ return ((flags & 0x8D5) << 16) | (res & 0xFFFF);
+}
+
+UInt s_pcmpistri_38 ( V128* argLU, V128* argRU )
+{
+ V128 resV;
+ UInt resOSZACP, resECX;
+ Bool ok
+ = pcmpXstrX_WRK( &resV, &resOSZACP, argLU, argRU,
+ zmask_from_V128(argLU),
+ zmask_from_V128(argRU),
+ 0x38, False/*!isSTRM*/
+ );
+ assert(ok);
+ resECX = resV.uInt[0];
+ return (resOSZACP << 16) | resECX;
+}
+
+void istri_38 ( void )
+{
+ char* wot = "38";
+ UInt(*h)(V128*,V128*) = h_pcmpistri_38;
+ UInt(*s)(V128*,V128*) = s_pcmpistri_38;
+
+ try_istri(wot,h,s, "0000000000000000", "0000000000000000");
+
+ try_istri(wot,h,s, "aaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaa");
+ try_istri(wot,h,s, "aaaa2aaaaaaaaaaa", "aaaaaaaaaaaaaaaa");
+ try_istri(wot,h,s, "aaaaaaaaa2aaaaaa", "aaaaaaaaaaaaaaaa");
+ try_istri(wot,h,s, "aaaaaaaaaaaaa2aa", "aaaaaaaaaaaaaaaa");
+
+ try_istri(wot,h,s, "aaaaaaaaaaaaaaaa", "aaaa2aaaaaaaaaaa");
+ try_istri(wot,h,s, "aaaaaaaaaaaaaaaa", "aaaaaaaaa2aaaaaa");
+ try_istri(wot,h,s, "aaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaa2a");
+
+ try_istri(wot,h,s, "aaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaa");
+ try_istri(wot,h,s, "baaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaa");
+ try_istri(wot,h,s, "b9aaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaa");
+ try_istri(wot,h,s, "b9baaaaaaaaaaaaa", "aaaaaaaaaaaaaaaa");
+
+ try_istri(wot,h,s, "b9baaaaaaaaaaaaa", "aaaaaaaaaaaaaaaa");
+ try_istri(wot,h,s, "b9baaaaaaaaaaaaa", "aaaaaaaaaaaa7aaa");
+ try_istri(wot,h,s, "b9baaaaaaaaaaaaa", "aaaaaaaa2aaa4aaa");
+
+ try_istri(wot,h,s, "aaaaaaaaaaaaaaaa", "aaaaaaaaaaaaaaaa");
+
+ try_istri(wot,h,s, "aaaaaaaaaaaa0aaa", "aaaaaaaaaaaaaaaa");
+ try_istri(wot,h,s, "aaaaaaaaaaaaaaaa", "aaaaaaaaaaaa0aaa");
+ try_istri(wot,h,s, "aaaaaaaaaaaa0aaa", "aaaaaaaaaaaa0aaa");
+
+ try_istri(wot,h,s, "aaaaaaaa0aaaaaaa", "aaaaaaaaaaaaaaaa");
+ try_istri(wot,h,s, "aaaaaaaaaaaaaaaa", "aaaaaaaaaaaa0aaa");
+ try_istri(wot,h,s, "aaaaaaaa0aaaaaaa", "aaaaaaaaaaaa0aaa");
+
+ try_istri(wot,h,s, "aaaaaaaaaaaa0aaa", "aaaaaaaaaaaaaaaa");
+ try_istri(wot,h,s, "aaaaaaaaaaaaaaaa", "aaaaaaaa0aaaaaaa");
+ try_istri(wot,h,s, "aaaaaaaaaaaa0aaa", "aaaaaaaa0aaaaaaa");
+
+ try_istri(wot,h,s, "0000000000000000", "aaaaaaaa0aaaaaaa");
+ try_istri(wot,h,s, "8000000000000000", "aaaaaaaa0aaaaaaa");
+ try_istri(wot,h,s, "0000000000000001", "aaaaaaaa0aaaaaaa");
+
+ try_istri(wot,h,s, "0000000000000000", "aaaaaaaaaaaaaaaa");
+ try_istri(wot,h,s, "aaaaaaaaaaaaaaaa", "0000000000000000");
+}
+
+
+
//////////////////////////////////////////////////////////
// //
// main //
@@ -1173,5 +1265,6 @@
istri_12();
istri_44();
istri_00();
+ istri_38();
return 0;
}
Modified: trunk/none/tests/amd64/pcmpstr64.stdout.exp
===================================================================
--- trunk/none/tests/amd64/pcmpstr64.stdout.exp 2011-10-19 16:22:50 UTC (rev 12167)
+++ trunk/none/tests/amd64/pcmpstr64.stdout.exp 2011-10-19 20:17:50 UTC (rev 12168)
@@ -226,3 +226,33 @@
istri 00 0000abcdabcdabcd 00000000000baba0 -> 00c00010 00c00010
istri 00 0ddc0ffeebadf00d 00000000cafebabe -> 00c00010 00c00010
istri 00 0ddc0ffeebadfeed 00000000cafebabe -> 00c10001 00c10001
+istri 38 0000000000000000 0000000000000000 -> 08c10000 08c10000
+istri 38 aaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaa -> 00000010 00000010
+istri 38 aaaa2aaaaaaaaaaa aaaaaaaaaaaaaaaa -> 0001000b 0001000b
+istri 38 aaaaaaaaa2aaaaaa aaaaaaaaaaaaaaaa -> 00010006 00010006
+istri 38 aaaaaaaaaaaaa2aa aaaaaaaaaaaaaaaa -> 00010002 00010002
+istri 38 aaaaaaaaaaaaaaaa aaaa2aaaaaaaaaaa -> 0001000b 0001000b
+istri 38 aaaaaaaaaaaaaaaa aaaaaaaaa2aaaaaa -> 00010006 00010006
+istri 38 aaaaaaaaaaaaaaaa aaaaaaaaaaaaaa2a -> 00010001 00010001
+istri 38 aaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaa -> 00000010 00000010
+istri 38 baaaaaaaaaaaaaaa aaaaaaaaaaaaaaaa -> 0001000f 0001000f
+istri 38 b9aaaaaaaaaaaaaa aaaaaaaaaaaaaaaa -> 0001000e 0001000e
+istri 38 b9baaaaaaaaaaaaa aaaaaaaaaaaaaaaa -> 0001000d 0001000d
+istri 38 b9baaaaaaaaaaaaa aaaaaaaaaaaaaaaa -> 0001000d 0001000d
+istri 38 b9baaaaaaaaaaaaa aaaaaaaaaaaa7aaa -> 00010003 00010003
+istri 38 b9baaaaaaaaaaaaa aaaaaaaa2aaa4aaa -> 00010003 00010003
+istri 38 aaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaa -> 00000010 00000010
+istri 38 aaaaaaaaaaaa0aaa aaaaaaaaaaaaaaaa -> 00400010 00400010
+istri 38 aaaaaaaaaaaaaaaa aaaaaaaaaaaa0aaa -> 00810003 00810003
+istri 38 aaaaaaaaaaaa0aaa aaaaaaaaaaaa0aaa -> 00c10003 00c10003
+istri 38 aaaaaaaa0aaaaaaa aaaaaaaaaaaaaaaa -> 00400010 00400010
+istri 38 aaaaaaaaaaaaaaaa aaaaaaaaaaaa0aaa -> 00810003 00810003
+istri 38 aaaaaaaa0aaaaaaa aaaaaaaaaaaa0aaa -> 00c10003 00c10003
+istri 38 aaaaaaaaaaaa0aaa aaaaaaaaaaaaaaaa -> 00400010 00400010
+istri 38 aaaaaaaaaaaaaaaa aaaaaaaa0aaaaaaa -> 00810007 00810007
+istri 38 aaaaaaaaaaaa0aaa aaaaaaaa0aaaaaaa -> 00c10007 00c10007
+istri 38 0000000000000000 aaaaaaaa0aaaaaaa -> 00c10007 00c10007
+istri 38 8000000000000000 aaaaaaaa0aaaaaaa -> 00c10007 00c10007
+istri 38 0000000000000001 aaaaaaaa0aaaaaaa -> 08c10000 08c10000
+istri 38 0000000000000000 aaaaaaaaaaaaaaaa -> 00400010 00400010
+istri 38 aaaaaaaaaaaaaaaa 0000000000000000 -> 08810000 08810000
|
|
From: <sv...@va...> - 2011-10-19 20:13:42
|
Author: sewardj
Date: 2011-10-19 21:08:57 +0100 (Wed, 19 Oct 2011)
New Revision: 2219
Log:
Handle PCMPxSTRx case 0x38. Fixes #273318.
Modified:
trunk/priv/guest_amd64_toIR.c
trunk/priv/guest_generic_x87.c
Modified: trunk/priv/guest_amd64_toIR.c
===================================================================
--- trunk/priv/guest_amd64_toIR.c 2011-10-19 15:24:01 UTC (rev 2218)
+++ trunk/priv/guest_amd64_toIR.c 2011-10-19 20:08:57 UTC (rev 2219)
@@ -15733,7 +15733,7 @@
switch (imm) {
case 0x00:
case 0x02: case 0x08: case 0x0A: case 0x0C: case 0x12:
- case 0x1A: case 0x3A: case 0x44: case 0x4A:
+ case 0x1A: case 0x38: case 0x3A: case 0x44: case 0x4A:
break;
default:
goto decode_failure;
Modified: trunk/priv/guest_generic_x87.c
===================================================================
--- trunk/priv/guest_generic_x87.c 2011-10-19 15:24:01 UTC (rev 2218)
+++ trunk/priv/guest_generic_x87.c 2011-10-19 20:08:57 UTC (rev 2219)
@@ -717,7 +717,7 @@
switch (imm8) {
case 0x00:
case 0x02: case 0x08: case 0x0A: case 0x0C: case 0x12:
- case 0x1A: case 0x3A: case 0x44: case 0x4A:
+ case 0x1A: case 0x38: case 0x3A: case 0x44: case 0x4A:
break;
default:
return False;
|
|
From: Christian B. <bor...@de...> - 2011-10-19 20:06:16
|
valgrind revision: 12167 VEX revision: 2218 GCC version: gcc (GCC) 4.5.3 20110121 (Red Hat 4.5.3-3) C library: GNU C Library stable release version 2.12.1, by Roland McGrath et al. uname -mrs: Linux 2.6.38-06555.ga44f99c.48.x.20110321-s390xgit s390x Vendor version: unknown Nightly build on fedora390 ( Fedora 13/14/15 mix with gcc 3.5.3 on z196 (s390x) ) Started at 2011-10-19 21:45:01 CEST Ended at 2011-10-19 22:06:31 CEST Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 504 tests, 6 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/linux/timerfd-syscall (stderr) helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc20_verifywrap (stderr) drd/tests/annotate_barrier_xml (stderr) drd/tests/tc04_free_lock (stderr) drd/tests/tc09_bad_unlock (stderr) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 503 tests, 6 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/linux/timerfd-syscall (stderr) helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc20_verifywrap (stderr) drd/tests/annotate_barrier_xml (stderr) drd/tests/tc04_free_lock (stderr) drd/tests/tc09_bad_unlock (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Wed Oct 19 21:55:39 2011 --- new.short Wed Oct 19 22:06:31 2011 *************** *** 8,10 **** ! == 503 tests, 6 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/linux/timerfd-syscall (stderr) --- 8,10 ---- ! == 504 tests, 6 stderr failures, 0 stdout failures, 0 stderrB failures, 0 stdoutB failures, 0 post failures == memcheck/tests/linux/timerfd-syscall (stderr) |
|
From: <sv...@va...> - 2011-10-19 16:27:35
|
Author: bart Date: 2011-10-19 17:22:50 +0100 (Wed, 19 Oct 2011) New Revision: 12167 Log: Add missing backslash Modified: trunk/helgrind/tests/Makefile.am Modified: trunk/helgrind/tests/Makefile.am =================================================================== --- trunk/helgrind/tests/Makefile.am 2011-10-19 15:26:36 UTC (rev 12166) +++ trunk/helgrind/tests/Makefile.am 2011-10-19 16:22:50 UTC (rev 12167) @@ -11,7 +11,7 @@ annotate_smart_pointer.vgtest annotate_smart_pointer.stdout.exp \ annotate_smart_pointer.stderr.exp \ cond_timedwait_invalid.vgtest cond_timedwait_invalid.stdout.exp \ - cond_timedwait_invalid.stderr.exp + cond_timedwait_invalid.stderr.exp \ bar_bad.vgtest bar_bad.stdout.exp bar_bad.stderr.exp \ bar_trivial.vgtest bar_trivial.stdout.exp bar_trivial.stderr.exp \ free_is_write.vgtest free_is_write.stdout.exp \ |
|
From: Bart V. A. <bva...@ac...> - 2011-10-19 16:16:39
|
On Wed, Oct 19, 2011 at 6:00 PM, Florian Krohm <br...@ac...> wrote: > Does anybody see a problem with this approach? Comments welcome. Makes a lot of sense to me. But my opinion is still that a well-designed regression test has the same output on all platforms. Bart. |
|
From: Florian K. <br...@ac...> - 2011-10-19 16:01:01
|
Hi, I'd like to formalize the names that we give to the .exp files in the regression test buckets. There are at least three reasons. First, when vg_regtest matches the .out file as obtained by running the test against the existing exp files it will report success if *any* of the existing exp files matches. That is the wrong thing because it can lead to false positives (claiming that a test passes where in fact it does not). In the future, if we're running on, say, ARM and there is an ARM-specific exp file then vg_regtest should only compare against that one and not any others. To do that we must be able to extract the architecture from the file name. Secondly, we have currently a bunch of platform-specific exp files that contain a result that is actually incorrect. E.g. the line numbers in a backtrace are off-by-one. vg_regtest will report success because the actual result matches the incorrect exp file and the issue is hidden. I've begun to name these files by appending -kfail to the name. With this notation I'm piggy-backing on notation invented for POSIX 1003.3 conformance testing. See here: http://www.delorie.com/gnu/docs/dejagnu/dejagnu_6.html This enables us to change vg_regtest to summarize how many testcases passed and how many kfail'ed. Thirdly, consistency. Always a good thing. And simplifies vg_regtest's file name matching. I propose to name exp files like so: BASE.STREAM.exp[-PLATFORM[-FAILCODE][-REASON]] Stuff written in all-caps indicates a syntactic variable, [...] is something optional and | means 'or'. All other characters stand for themselves. BASE := basename of the test; e.g. for foo.vgtest BASE would be foo STREAM := stdout | stderr | stdoutB | stderrB PLATFORM := x86 | x86-linux | x86-darwin | amd64 | arm | ppc32 | ppc64 | s390x FAILCODE := kfail REASON := any character string; needed e.g. if we need more than one exp file for a given platform As usual, matching is greedy. E.g. foo.exp-x86-linux means PLATFORM=x86-linux. It does not mean, PLATFORM=x86, REASON=linux The matching in vg_regtest would start with the most specialized exp file towards the generic one and it would stop as soon as a match is obtained. E.g. when looking for a stderr exp file for foo.vgtest while running on x86 Linux, vg_regtest would attempt to match in this order: foo.stderr.exp-x86-linux.* foo.stderr.exp-x86-* foo.stderr.exp-32bit-* foo.stderr.exp-* There is still a possibility for false positives in the case where there are several exp files that differ only in the REASON code. To handle that properly we would have to formalize the REASON code. I have no plans to do that as this happens rarely. Does anybody see a problem with this approach? Comments welcome. Florian |
|
From: <sv...@va...> - 2011-10-19 15:31:20
|
Author: sewardj Date: 2011-10-19 16:26:36 +0100 (Wed, 19 Oct 2011) New Revision: 12166 Log: Add test cases for PMULUDQ and PCMPEQQ. Duh -- in future, add test cases at the end, since adding in the middle changes the random data used for all tests that follow, and makes the diff huge. Modified: trunk/none/tests/amd64/sse4-64.c trunk/none/tests/amd64/sse4-64.stdout.exp [... diff too large to include ...] |
|
From: <sv...@va...> - 2011-10-19 15:29:43
|
Author: sewardj
Date: 2011-10-19 16:24:55 +0100 (Wed, 19 Oct 2011)
New Revision: 12165
Log:
Handle new Iop_CmpEQ64x2 introduced in vex r2218.
Modified:
trunk/memcheck/mc_translate.c
Modified: trunk/memcheck/mc_translate.c
===================================================================
--- trunk/memcheck/mc_translate.c 2011-10-19 05:41:34 UTC (rev 12164)
+++ trunk/memcheck/mc_translate.c 2011-10-19 15:24:55 UTC (rev 12165)
@@ -2705,6 +2705,7 @@
case Iop_Sub64x2:
case Iop_Add64x2:
+ case Iop_CmpEQ64x2:
case Iop_CmpGT64Sx2:
case Iop_QSal64x2:
case Iop_QShl64x2:
|
|
From: <sv...@va...> - 2011-10-19 15:28:51
|
Author: sewardj
Date: 2011-10-19 16:24:01 +0100 (Wed, 19 Oct 2011)
New Revision: 2218
Log:
Implement the SSE4.1 insn PCMPEQQ. n-i-bz. (VEX side changes)
** MERGE TO AVX **
Modified:
trunk/priv/guest_amd64_toIR.c
trunk/priv/host_amd64_isel.c
trunk/priv/host_generic_simd128.c
trunk/priv/host_generic_simd128.h
trunk/priv/ir_defs.c
trunk/pub/libvex_ir.h
Modified: trunk/priv/guest_amd64_toIR.c
===================================================================
--- trunk/priv/guest_amd64_toIR.c 2011-10-19 14:50:27 UTC (rev 2217)
+++ trunk/priv/guest_amd64_toIR.c 2011-10-19 15:24:01 UTC (rev 2218)
@@ -16135,6 +16135,17 @@
goto decode_success;
}
+ /* 66 0F 38 29 = PCMPEQQ
+ 64x2 equality comparison
+ */
+ if ( have66noF2noF3( pfx ) && sz == 2
+ && insn[0] == 0x0F && insn[1] == 0x38 && insn[2] == 0x29) {
+ /* FIXME: this needs an alignment check */
+ delta = dis_SSEint_E_to_G( vbi, pfx, delta+3,
+ "pcmpeqq", Iop_CmpEQ64x2, False );
+ goto decode_success;
+ }
+
/* ---------------------------------------------------- */
/* --- end of the SSE4 decoder --- */
/* ---------------------------------------------------- */
Modified: trunk/priv/host_amd64_isel.c
===================================================================
--- trunk/priv/host_amd64_isel.c 2011-10-19 14:50:27 UTC (rev 2217)
+++ trunk/priv/host_amd64_isel.c 2011-10-19 15:24:01 UTC (rev 2218)
@@ -3658,6 +3658,8 @@
goto do_SseAssistedBinary;
case Iop_Min8Sx16: fn = (HWord)h_generic_calc_Min8Sx16;
goto do_SseAssistedBinary;
+ case Iop_CmpEQ64x2: fn = (HWord)h_generic_calc_CmpEQ64x2;
+ goto do_SseAssistedBinary;
case Iop_CmpGT64Sx2: fn = (HWord)h_generic_calc_CmpGT64Sx2;
goto do_SseAssistedBinary;
case Iop_QNarrowBin32Sto16Ux8:
Modified: trunk/priv/host_generic_simd128.c
===================================================================
--- trunk/priv/host_generic_simd128.c 2011-10-19 14:50:27 UTC (rev 2217)
+++ trunk/priv/host_generic_simd128.c 2011-10-19 15:24:01 UTC (rev 2218)
@@ -88,6 +88,12 @@
return toUChar((xx < yy) ? xx : yy);
}
+static inline ULong cmpEQ64 ( Long xx, Long yy )
+{
+ return (((Long)xx) == ((Long)yy))
+ ? 0xFFFFFFFFFFFFFFFFULL : 0ULL;
+}
+
static inline ULong cmpGT64S ( Long xx, Long yy )
{
return (((Long)xx) > ((Long)yy))
@@ -225,6 +231,13 @@
res->w8[15] = min8S(argL->w8[15], argR->w8[15]);
}
+void h_generic_calc_CmpEQ64x2 ( /*OUT*/V128* res,
+ V128* argL, V128* argR )
+{
+ res->w64[0] = cmpEQ64(argL->w64[0], argR->w64[0]);
+ res->w64[1] = cmpEQ64(argL->w64[1], argR->w64[1]);
+}
+
void h_generic_calc_CmpGT64Sx2 ( /*OUT*/V128* res,
V128* argL, V128* argR )
{
Modified: trunk/priv/host_generic_simd128.h
===================================================================
--- trunk/priv/host_generic_simd128.h 2011-10-19 14:50:27 UTC (rev 2217)
+++ trunk/priv/host_generic_simd128.h 2011-10-19 15:24:01 UTC (rev 2218)
@@ -57,6 +57,7 @@
extern void h_generic_calc_Min16Ux8 ( /*OUT*/V128*, V128*, V128* );
extern void h_generic_calc_Max8Sx16 ( /*OUT*/V128*, V128*, V128* );
extern void h_generic_calc_Min8Sx16 ( /*OUT*/V128*, V128*, V128* );
+extern void h_generic_calc_CmpEQ64x2 ( /*OUT*/V128*, V128*, V128* );
extern void h_generic_calc_CmpGT64Sx2 ( /*OUT*/V128*, V128*, V128* );
extern void h_generic_calc_SarN64x2 ( /*OUT*/V128*, V128*, UInt );
extern void h_generic_calc_SarN8x16 ( /*OUT*/V128*, V128*, UInt );
Modified: trunk/priv/ir_defs.c
===================================================================
--- trunk/priv/ir_defs.c 2011-10-19 14:50:27 UTC (rev 2217)
+++ trunk/priv/ir_defs.c 2011-10-19 15:24:01 UTC (rev 2218)
@@ -777,6 +777,7 @@
case Iop_CmpEQ8x16: vex_printf("CmpEQ8x16"); return;
case Iop_CmpEQ16x8: vex_printf("CmpEQ16x8"); return;
case Iop_CmpEQ32x4: vex_printf("CmpEQ32x4"); return;
+ case Iop_CmpEQ64x2: vex_printf("CmpEQ64x2"); return;
case Iop_CmpGT8Sx16: vex_printf("CmpGT8Sx16"); return;
case Iop_CmpGT16Sx8: vex_printf("CmpGT16Sx8"); return;
case Iop_CmpGT32Sx4: vex_printf("CmpGT32Sx4"); return;
@@ -2434,6 +2435,7 @@
case Iop_Min8Sx16: case Iop_Min16Sx8: case Iop_Min32Sx4:
case Iop_Min8Ux16: case Iop_Min16Ux8: case Iop_Min32Ux4:
case Iop_CmpEQ8x16: case Iop_CmpEQ16x8: case Iop_CmpEQ32x4:
+ case Iop_CmpEQ64x2:
case Iop_CmpGT8Sx16: case Iop_CmpGT16Sx8: case Iop_CmpGT32Sx4:
case Iop_CmpGT64Sx2:
case Iop_CmpGT8Ux16: case Iop_CmpGT16Ux8: case Iop_CmpGT32Ux4:
Modified: trunk/pub/libvex_ir.h
===================================================================
--- trunk/pub/libvex_ir.h 2011-10-19 14:50:27 UTC (rev 2217)
+++ trunk/pub/libvex_ir.h 2011-10-19 15:24:01 UTC (rev 2218)
@@ -1170,7 +1170,7 @@
Iop_Min8Ux16, Iop_Min16Ux8, Iop_Min32Ux4,
/* COMPARISON */
- Iop_CmpEQ8x16, Iop_CmpEQ16x8, Iop_CmpEQ32x4,
+ Iop_CmpEQ8x16, Iop_CmpEQ16x8, Iop_CmpEQ32x4, Iop_CmpEQ64x2,
Iop_CmpGT8Sx16, Iop_CmpGT16Sx8, Iop_CmpGT32Sx4, Iop_CmpGT64Sx2,
Iop_CmpGT8Ux16, Iop_CmpGT16Ux8, Iop_CmpGT32Ux4,
|
|
From: <sv...@va...> - 2011-10-19 14:55:16
|
Author: sewardj
Date: 2011-10-19 15:50:27 +0100 (Wed, 19 Oct 2011)
New Revision: 2217
Log:
Implement SSE4.1 PMULUDQ. Fixes #280290. ** MERGE TO AVX **
Modified:
trunk/priv/guest_amd64_toIR.c
Modified: trunk/priv/guest_amd64_toIR.c
===================================================================
--- trunk/priv/guest_amd64_toIR.c 2011-10-14 15:44:00 UTC (rev 2216)
+++ trunk/priv/guest_amd64_toIR.c 2011-10-19 14:50:27 UTC (rev 2217)
@@ -16095,6 +16095,46 @@
goto decode_success;
}
+ /* 66 0F 38 28 = PMULUDQ -- signed widening multiply of 32-lanes 0 x
+ 0 to form lower 64-bit half and lanes 2 x 2 to form upper 64-bit
+ half */
+ /* This is a really poor translation -- could be improved if
+ performance critical. It's a copy-paste of PMULDQ, too. */
+ if (have66noF2noF3(pfx) && sz == 2
+ && insn[0] == 0x0F && insn[1] == 0x38 && insn[2] == 0x28) {
+ IRTemp sV, dV;
+ IRTemp s3, s2, s1, s0, d3, d2, d1, d0;
+ sV = newTemp(Ity_V128);
+ dV = newTemp(Ity_V128);
+ s3 = s2 = s1 = s0 = d3 = d2 = d1 = d0 = IRTemp_INVALID;
+ t1 = newTemp(Ity_I64);
+ t0 = newTemp(Ity_I64);
+ modrm = insn[3];
+ assign( dV, getXMMReg(gregOfRexRM(pfx,modrm)) );
+
+ if (epartIsReg(modrm)) {
+ assign( sV, getXMMReg(eregOfRexRM(pfx,modrm)) );
+ delta += 3+1;
+ DIP("pmuldq %s,%s\n", nameXMMReg(eregOfRexRM(pfx,modrm)),
+ nameXMMReg(gregOfRexRM(pfx,modrm)));
+ } else {
+ addr = disAMode ( &alen, vbi, pfx, delta+3, dis_buf, 0 );
+ assign( sV, loadLE(Ity_V128, mkexpr(addr)) );
+ delta += 3+alen;
+ DIP("pmuldq %s,%s\n", dis_buf,
+ nameXMMReg(gregOfRexRM(pfx,modrm)));
+ }
+
+ breakup128to32s( dV, &d3, &d2, &d1, &d0 );
+ breakup128to32s( sV, &s3, &s2, &s1, &s0 );
+
+ assign( t0, binop( Iop_MullS32, mkexpr(d0), mkexpr(s0)) );
+ putXMMRegLane64( gregOfRexRM(pfx,modrm), 0, mkexpr(t0) );
+ assign( t1, binop( Iop_MullS32, mkexpr(d2), mkexpr(s2)) );
+ putXMMRegLane64( gregOfRexRM(pfx,modrm), 1, mkexpr(t1) );
+ goto decode_success;
+ }
+
/* ---------------------------------------------------- */
/* --- end of the SSE4 decoder --- */
/* ---------------------------------------------------- */
|
|
From: Rich C. <rc...@wi...> - 2011-10-19 14:22:49
|
valgrind revision: 12164
VEX revision: 2216
GCC version: gcc (SUSE Linux) 4.6.1 20110801 [gcc-4_6-branch revision 177033]
C library: GNU C Library stable release version 2.14 (20110915), by Roland McGrath et al.
uname -mrs: Linux 3.1.0-rc7-3-desktop x86_64
Vendor version: Welcome to openSUSE 12.1 "Asparagus" Beta 1 - Kernel %r (%t).
Nightly build on groovy ( gcc 4.6.1 Linux 3.1.0-rc7-3-desktop x86_64 )
Started at 2011-10-19 08:50:12 CDT
Ended at 2011-10-19 09:22:35 CDT
Results differ from 24 hours ago
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... failed
Regression test results follow
== 590 tests, 4 stderr failures, 0 stdout failures, 1 stderrB failure, 0 stdoutB failures, 0 post failures ==
gdbserver_tests/mssnapshot (stderrB)
memcheck/tests/origin5-bz2 (stderr)
memcheck/tests/overlap (stderr)
helgrind/tests/hg05_race2 (stderr)
drd/tests/annotate_barrier_xml (stderr)
=================================================
== Results from 24 hours ago ==
=================================================
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... failed
Regression test results follow
== 589 tests, 4 stderr failures, 0 stdout failures, 1 stderrB failure, 0 stdoutB failures, 0 post failures ==
gdbserver_tests/mssnapshot (stderrB)
memcheck/tests/origin5-bz2 (stderr)
memcheck/tests/overlap (stderr)
helgrind/tests/hg05_race2 (stderr)
drd/tests/annotate_barrier_xml (stderr)
=================================================
== Difference between 24 hours ago and now ==
=================================================
*** old.short 2011-10-19 09:06:22.967785275 -0500
--- new.short 2011-10-19 09:22:35.077055385 -0500
***************
*** 8,10 ****
! == 589 tests, 4 stderr failures, 0 stdout failures, 1 stderrB failure, 0 stdoutB failures, 0 post failures ==
gdbserver_tests/mssnapshot (stderrB)
--- 8,10 ----
! == 590 tests, 4 stderr failures, 0 stdout failures, 1 stderrB failure, 0 stdoutB failures, 0 post failures ==
gdbserver_tests/mssnapshot (stderrB)
=================================================
./valgrind-new/drd/tests/annotate_barrier_xml.stderr.diff
=================================================
--- annotate_barrier_xml.stderr.exp 2011-10-19 09:06:49.483574057 -0500
+++ annotate_barrier_xml.stderr.out 2011-10-19 09:19:16.572648221 -0500
@@ -189,9 +189,6 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
- <dir>...</dir>
- <file>pthread_create.c</file>
- <line>...</line>
</frame>
</stack>
<auxwhat>Address 0x........ is at offset 0 from 0x.........</auxwhat>
=================================================
./valgrind-new/gdbserver_tests/mssnapshot.stderrB.diff
=================================================
--- mssnapshot.stderrB.exp 2011-10-19 09:06:29.895730081 -0500
+++ mssnapshot.stderrB.out 2011-10-19 09:12:27.409887799 -0500
@@ -1,5 +1,11 @@
relaying data between gdb and process ....
+Missing separate debuginfo for /lib64/ld-linux-x86-64.so.2
+Try: zypper install -C "debuginfo(build-id)=ac683ba6be09ae76b8744550fe0ed881f3b280b8"
vgdb-error value changed from 0 to 999999
+Missing separate debuginfo for /lib64/libpthread.so.0
+Try: zypper install -C "debuginfo(build-id)=16f543112387038b38f615be4401811c123f7ad3"
+Missing separate debuginfo for /lib64/libc.so.6
+Try: zypper install -C "debuginfo(build-id)=fb1aefd71e7d13098c66f6b338ead78a7bb156d8"
general valgrind monitor commands:
help [debug] : monitor command help. With debug: + debugging commands
v.wait [<ms>] : sleep <ms> (default 0) then continue
=================================================
./valgrind-new/helgrind/tests/hg05_race2.stderr.diff
=================================================
--- hg05_race2.stderr.exp 2011-10-19 09:06:27.814746662 -0500
+++ hg05_race2.stderr.out 2011-10-19 09:18:28.374029141 -0500
@@ -1,4 +1,6 @@
+warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x........
+warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x........
---Thread-Announcement------------------------------------------
Thread #x was created
@@ -32,6 +34,8 @@
Location 0x........ is 0 bytes inside foo.poot[5].plop[11],
declared at hg05_race2.c:24, in frame #x of thread x
+warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x........
+warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x........
----------------------------------------------------------------
Possible data race during write of size 4 at 0x........ by thread #x
=================================================
./valgrind-new/memcheck/tests/origin5-bz2.stderr.diff-glibc212-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc212-s390x 2011-10-19 09:06:34.385694314 -0500
+++ origin5-bz2.stderr.out 2011-10-19 09:14:14.299040176 -0500
@@ -72,17 +72,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)
@@ -128,6 +117,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 2011-10-19 09:06:34.342694656 -0500
+++ origin5-bz2.stderr.out 2011-10-19 09:14:14.299040176 -0500
@@ -4,8 +4,7 @@
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)
- by 0x........: handle_compress (origin5-bz2.c:4750)
+ at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
@@ -13,8 +12,7 @@
at 0x........: main (origin5-bz2.c:6479)
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)
+ at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
@@ -22,8 +20,7 @@
at 0x........: main (origin5-bz2.c:6479)
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)
+ at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
@@ -120,6 +117,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 2011-10-19 09:06:34.319694840 -0500
+++ origin5-bz2.stderr.out 2011-10-19 09:14:14.299040176 -0500
@@ -117,6 +117,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 2011-10-19 09:06:34.403694172 -0500
+++ origin5-bz2.stderr.out 2011-10-19 09:14:14.299040176 -0500
@@ -11,7 +11,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........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -19,7 +19,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........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -27,7 +27,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)
@@ -38,7 +38,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)
@@ -49,7 +49,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)
@@ -60,7 +60,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)
@@ -71,7 +71,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)
@@ -82,7 +82,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)
@@ -93,7 +93,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)
@@ -104,7 +104,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)
@@ -117,6 +117,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 2011-10-19 09:06:34.316694864 -0500
+++ origin5-bz2.stderr.out 2011-10-19 09:14:14.299040176 -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........: handle_compress (origin5-bz2.c:4686)
@@ -9,7 +9,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........: handle_compress (origin5-bz2.c:4686)
@@ -17,7 +17,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........: handle_compress (origin5-bz2.c:4686)
@@ -25,7 +25,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)
@@ -36,7 +36,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)
@@ -47,7 +47,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)
@@ -58,7 +58,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)
@@ -69,7 +69,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)
@@ -80,7 +80,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)
@@ -91,7 +91,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)
@@ -102,7 +102,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-new/memcheck/tests/overlap.stderr.diff
=================================================
--- overlap.stderr.exp 2011-10-19 09:06:34.352694578 -0500
+++ overlap.stderr.out 2011-10-19 09:14:21.514982989 -0500
@@ -1,9 +1,9 @@
Source and destination overlap in memcpy(0x........, 0x........, 21)
- at 0x........: memcpy (mc_replace_strmem.c:...)
+ at 0x........: memcpy@@GLIBC_2.14 (mc_replace_strmem.c:...)
by 0x........: main (overlap.c:40)
Source and destination overlap in memcpy(0x........, 0x........, 21)
- at 0x........: memcpy (mc_replace_strmem.c:...)
+ at 0x........: memcpy@@GLIBC_2.14 (mc_replace_strmem.c:...)
by 0x........: main (overlap.c:42)
Source and destination overlap in strncpy(0x........, 0x........, 21)
=================================================
./valgrind-old/drd/tests/annotate_barrier_xml.stderr.diff
=================================================
--- annotate_barrier_xml.stderr.exp 2011-10-19 08:50:44.375307313 -0500
+++ annotate_barrier_xml.stderr.out 2011-10-19 09:03:04.819365765 -0500
@@ -189,9 +189,6 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
- <dir>...</dir>
- <file>pthread_create.c</file>
- <line>...</line>
</frame>
</stack>
<auxwhat>Address 0x........ is at offset 0 from 0x.........</auxwhat>
=================================================
./valgrind-old/gdbserver_tests/mssnapshot.stderrB.diff
=================================================
--- mssnapshot.stderrB.exp 2011-10-19 08:50:24.743465666 -0500
+++ mssnapshot.stderrB.out 2011-10-19 08:56:17.179629506 -0500
@@ -1,5 +1,11 @@
relaying data between gdb and process ....
+Missing separate debuginfo for /lib64/ld-linux-x86-64.so.2
+Try: zypper install -C "debuginfo(build-id)=ac683ba6be09ae76b8744550fe0ed881f3b280b8"
vgdb-error value changed from 0 to 999999
+Missing separate debuginfo for /lib64/libpthread.so.0
+Try: zypper install -C "debuginfo(build-id)=16f543112387038b38f615be4401811c123f7ad3"
+Missing separate debuginfo for /lib64/libc.so.6
+Try: zypper install -C "debuginfo(build-id)=fb1aefd71e7d13098c66f6b338ead78a7bb156d8"
general valgrind monitor commands:
help [debug] : monitor command help. With debug: + debugging commands
v.wait [<ms>] : sleep <ms> (default 0) then continue
=================================================
./valgrind-old/helgrind/tests/hg05_race2.stderr.diff
=================================================
--- hg05_race2.stderr.exp 2011-10-19 08:50:22.662482455 -0500
+++ hg05_race2.stderr.out 2011-10-19 09:02:16.744749795 -0500
@@ -1,4 +1,6 @@
+warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x........
+warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x........
---Thread-Announcement------------------------------------------
Thread #x was created
@@ -32,6 +34,8 @@
Location 0x........ is 0 bytes inside foo.poot[5].plop[11],
declared at hg05_race2.c:24, in frame #x of thread x
+warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x........
+warning: evaluate_Dwarf3_Expr: unhandled DW_OP_ 0x........
----------------------------------------------------------------
Possible data race during write of size 4 at 0x........ by thread #x
=================================================
./valgrind-old/memcheck/tests/origin5-bz2.stderr.diff-glibc212-s390x
=================================================
--- origin5-bz2.stderr.exp-glibc212-s390x 2011-10-19 08:50:29.242429376 -0500
+++ origin5-bz2.stderr.out 2011-10-19 08:58:03.718774849 -0500
@@ -72,17 +72,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)
@@ -128,6 +117,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 2011-10-19 08:50:29.199429724 -0500
+++ origin5-bz2.stderr.out 2011-10-19 08:58:03.718774849 -0500
@@ -4,8 +4,7 @@
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)
- by 0x........: handle_compress (origin5-bz2.c:4750)
+ at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
@@ -13,8 +12,7 @@
at 0x........: main (origin5-bz2.c:6479)
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)
+ at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
@@ -22,8 +20,7 @@
at 0x........: main (origin5-bz2.c:6479)
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)
+ at 0x........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
by 0x........: main (origin5-bz2.c:6484)
@@ -120,6 +117,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 2011-10-19 08:50:29.177429900 -0500
+++ origin5-bz2.stderr.out 2011-10-19 08:58:03.718774849 -0500
@@ -117,6 +117,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 2011-10-19 08:50:29.260429232 -0500
+++ origin5-bz2.stderr.out 2011-10-19 08:58:03.718774849 -0500
@@ -11,7 +11,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........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -19,7 +19,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........: handle_compress (origin5-bz2.c:4686)
by 0x........: BZ2_bzCompress (origin5-bz2.c:4822)
by 0x........: BZ2_bzBuffToBuffCompress (origin5-bz2.c:5630)
@@ -27,7 +27,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)
@@ -38,7 +38,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)
@@ -49,7 +49,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)
@@ -60,7 +60,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)
@@ -71,7 +71,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)
@@ -82,7 +82,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)
@@ -93,7 +93,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)
@@ -104,7 +104,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)
@@ -117,6 +117,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 2011-10-19 08:50:29.173429932 -0500
+++ origin5-bz2.stderr.out 2011-10-19 08:58:03.718774849 -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........: handle_compress (origin5-bz2.c:4686)
@@ -9,7 +9,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........: handle_compress (origin5-bz2.c:4686)
@@ -17,7 +17,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........: handle_compress (origin5-bz2.c:4686)
@@ -25,7 +25,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)
@@ -36,7 +36,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)
@@ -47,7 +47,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)
@@ -58,7 +58,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)
@@ -69,7 +69,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)
@@ -80,7 +80,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)
@@ -91,7 +91,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)
@@ -102,7 +102,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/memcheck/tests/overlap.stderr.diff
=================================================
--- overlap.stderr.exp 2011-10-19 08:50:29.209429642 -0500
+++ overlap.stderr.out 2011-10-19 08:58:10.901717270 -0500
@@ -1,9 +1,9 @@
Source and destination overlap in memcpy(0x........, 0x........, 21)
- at 0x........: memcpy (mc_replace_strmem.c:...)
+ at 0x........: memcpy@@GLIBC_2.14 (mc_replace_strmem.c:...)
by 0x........: main (overlap.c:40)
Source and destination overlap in memcpy(0x........, 0x........, 21)
- at 0x........: memcpy (mc_replace_strmem.c:...)
+ at 0x........: memcpy@@GLIBC_2.14 (mc_replace_strmem.c:...)
by 0x........: main (overlap.c:42)
Source and destination overlap in strncpy(0x........, 0x........, 21)
|
|
From: <sv...@va...> - 2011-10-19 05:46:21
|
Author: sewardj
Date: 2011-10-19 06:41:34 +0100 (Wed, 19 Oct 2011)
New Revision: 12164
Log:
Fix false positive following pthread_cond_timedwait failure.
Fixes #271917. (Philippe Waroquiers, phi...@sk...)
Added:
trunk/helgrind/tests/cond_timedwait_invalid.c
trunk/helgrind/tests/cond_timedwait_invalid.stderr.exp
trunk/helgrind/tests/cond_timedwait_invalid.stdout.exp
trunk/helgrind/tests/cond_timedwait_invalid.vgtest
Modified:
trunk/helgrind/hg_intercepts.c
trunk/helgrind/tests/Makefile.am
Modified: trunk/helgrind/hg_intercepts.c
===================================================================
--- trunk/helgrind/hg_intercepts.c 2011-10-17 18:12:48 UTC (rev 12163)
+++ trunk/helgrind/hg_intercepts.c 2011-10-19 05:41:34 UTC (rev 12164)
@@ -733,6 +733,7 @@
int ret;
OrigFn fn;
unsigned long mutex_is_valid;
+ Bool abstime_is_valid;
VALGRIND_GET_ORIG_FN(fn);
if (TRACE_PTH_FNS) {
@@ -749,17 +750,25 @@
pthread_cond_t*,cond, pthread_mutex_t*,mutex);
assert(mutex_is_valid == 1 || mutex_is_valid == 0);
+ abstime_is_valid = abstime->tv_nsec >= 0 && abstime->tv_nsec < 1000000000;
+
/* Tell the tool we're about to drop the mutex. This reflects the
fact that in a cond_wait, we show up holding the mutex, and the
call atomically drops the mutex and waits for the cv to be
signalled. */
- if (mutex_is_valid) {
+ if (mutex_is_valid && abstime_is_valid) {
DO_CREQ_v_W(_VG_USERREQ__HG_PTHREAD_MUTEX_UNLOCK_PRE,
pthread_mutex_t*,mutex);
}
CALL_FN_W_WWW(ret, fn, cond,mutex,abstime);
+ if (!abstime_is_valid && ret != EINVAL) {
+ DO_PthAPIerror("Bug in libpthread: pthread_cond_timedwait "
+ "invalid abstime did not cause"
+ " EINVAL", ret);
+ }
+
if ((ret == 0 || ret == ETIMEDOUT) && mutex_is_valid) {
/* and now we have the mutex again */
DO_CREQ_v_W(_VG_USERREQ__HG_PTHREAD_MUTEX_LOCK_POST,
Modified: trunk/helgrind/tests/Makefile.am
===================================================================
--- trunk/helgrind/tests/Makefile.am 2011-10-17 18:12:48 UTC (rev 12163)
+++ trunk/helgrind/tests/Makefile.am 2011-10-19 05:41:34 UTC (rev 12164)
@@ -10,6 +10,8 @@
annotate_rwlock.stderr.exp \
annotate_smart_pointer.vgtest annotate_smart_pointer.stdout.exp \
annotate_smart_pointer.stderr.exp \
+ cond_timedwait_invalid.vgtest cond_timedwait_invalid.stdout.exp \
+ cond_timedwait_invalid.stderr.exp
bar_bad.vgtest bar_bad.stdout.exp bar_bad.stderr.exp \
bar_trivial.vgtest bar_trivial.stdout.exp bar_trivial.stderr.exp \
free_is_write.vgtest free_is_write.stdout.exp \
@@ -90,6 +92,7 @@
# should be conditionally compiled like tc20_verifywrap is.
check_PROGRAMS = \
annotate_hbefore \
+ cond_timedwait_invalid \
free_is_write \
hg01_all_ok \
hg02_deadlock \
@@ -179,4 +182,7 @@
annotate_hbefore_CFLAGS = $(AM_CFLAGS)
endif
+if VGCONF_OS_IS_LINUX
+cond_timedwait_invalid_LDADD = -lrt
+endif
Added: trunk/helgrind/tests/cond_timedwait_invalid.c
===================================================================
--- trunk/helgrind/tests/cond_timedwait_invalid.c (rev 0)
+++ trunk/helgrind/tests/cond_timedwait_invalid.c 2011-10-19 05:41:34 UTC (rev 12164)
@@ -0,0 +1,20 @@
+#include <time.h>
+#include <pthread.h>
+#include <assert.h>
+#include <errno.h>
+
+int main()
+{
+ struct timespec abstime;
+ pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
+ pthread_cond_t cond = PTHREAD_COND_INITIALIZER;
+
+ assert(clock_gettime(CLOCK_REALTIME, &abstime)==0);
+ abstime.tv_nsec += 1000000000;
+
+ assert(pthread_mutex_lock(&mutex)==0);
+ assert(pthread_cond_timedwait(&cond, &mutex, &abstime)==EINVAL);
+ assert(pthread_mutex_unlock(&mutex)==0);
+
+ return 0;
+}
Added: trunk/helgrind/tests/cond_timedwait_invalid.stderr.exp
===================================================================
--- trunk/helgrind/tests/cond_timedwait_invalid.stderr.exp (rev 0)
+++ trunk/helgrind/tests/cond_timedwait_invalid.stderr.exp 2011-10-19 05:41:34 UTC (rev 12164)
@@ -0,0 +1,15 @@
+
+---Thread-Announcement------------------------------------------
+
+Thread #x is the program's root thread
+
+----------------------------------------------------------------
+
+Thread #x's call to pthread_cond_timedwait failed
+ with error code 22 (EINVAL: Invalid argument)
+ at 0x........: pthread_cond_timedwait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
+ by 0x........: main (cond_timedwait_invalid.c:16)
+
+
+ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
Added: trunk/helgrind/tests/cond_timedwait_invalid.stdout.exp
===================================================================
Added: trunk/helgrind/tests/cond_timedwait_invalid.vgtest
===================================================================
--- trunk/helgrind/tests/cond_timedwait_invalid.vgtest (rev 0)
+++ trunk/helgrind/tests/cond_timedwait_invalid.vgtest 2011-10-19 05:41:34 UTC (rev 12164)
@@ -0,0 +1,2 @@
+prog: cond_timedwait_invalid
+
|