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
(25) |
2
(13) |
3
(3) |
|
4
|
5
(5) |
6
(12) |
7
(5) |
8
(16) |
9
(3) |
10
|
|
11
|
12
|
13
(4) |
14
(1) |
15
(2) |
16
(6) |
17
|
|
18
|
19
(1) |
20
(2) |
21
(10) |
22
(9) |
23
(8) |
24
(5) |
|
25
|
26
(6) |
27
(8) |
28
(8) |
29
(23) |
30
(12) |
31
(6) |
|
From: John M. <me...@ge...> - 2010-07-30 21:29:45
|
Hi Julian, On Fri, Jul 30, 2010 at 12:14 AM, Julian Seward <js...@ac...> wrote: > > Please could you open a bug on the bug tracker and attach the > patches there. Patches posted to the mailing list have a nasty > tendency to fall through the cracks and disappear; it's not really > the right place for posting/reviewing/updating large patches. > This work is useful and it would be a shame for that to happen. > Putting it on the bug tracker also provides a fixed point of > reference, at which we can point other interested users/devs. > > Use this page https://bugs.kde.org/enter_valgrind_bug.cgi to > create the bug report. OK > A couple of other things: > > You mentioned > >> would probably do things a little bit differently >> if I were to start over, > > Could you outline (on the bug report) how you would do things > differently? Sure. > Also .. rebasing the patches against the svn trunk rather than > against 3.5.0 would be a good thing. I guess I could do that when I have some free cycles (:o) I'm still working on my git-fu, haven't had a chance to play with svn yet. > J -mehaf |
|
From: John M. <me...@ge...> - 2010-07-30 20:44:40
|
Hi Bart,
On Thu, Jul 29, 2010 at 11:37 PM, Bart Van Assche <bva...@ac...> wrote:
> On Fri, Jul 30, 2010 at 12:52 AM, John Mehaffey <me...@ge...> wrote:
>> jmehaffe-lnx-1:/ws/jmehaffe/main_cge5/cles_moved_aside/vg/rpm/SOURCES
>>> cat valgrind-3.5.0_cross_compile.patch
>> --- valgrind-3.5.0/configure.in.orig Wed Aug 19 06:37:48 2009
>> +++ valgrind-3.5.0/configure.in Thu Jul 1 15:01:20 2010
>> @@ -1472,9 +1472,10 @@ fi
>> #----------------------------------------------------------------------------
>> # Check for /proc filesystem
>> #----------------------------------------------------------------------------
>> -AC_CHECK_FILES(/proc/self/fd /proc/self/exe /proc/self/maps,
>> - [ AC_DEFINE([HAVE_PROC], 1, [can use /proc filesystem]) ],
>> - [])
>> +# jfm AC_CHECK_FILES(/proc/self/fd /proc/self/exe /proc/self/maps,
>> +# jfm [ AC_DEFINE([HAVE_PROC], 1, [can use /proc filesystem]) ],
>> +# jfm [])
>> +AC_DEFINE([HAVE_PROC], 1, [can use /proc filesystem])
>
> It would be more elegant to keep the first test if [ $cross_compiling
> = "no" ] and to fall back to the second test only if [
> $cross_compiling = "yes" ]. The variable $cross_compiling is set by
> configure.
That sounds like a good idea. I only know just enough about automake/
configure to be dangerous.
>> +/* Hack because glibc is not included, but the math lib libgcc calls
>> it - jfm */
>> +
>> +void abort(void)
>> +{
>> + vg_assert(0);
>> +}
>> +
>
> Against which Valgrind revision have you developed your patch ? An
> abort() function has been added to coregrind/m_main.c in r11172 on
> June 13, 2010.
I did my patches around the latest released version, 3.5.0. It's good to
hear that it has been fixed in the "bleeding edge" version.
> Bart.
-mehaf
|
|
From: <sv...@va...> - 2010-07-30 15:12:02
|
Author: sewardj
Date: 2010-07-30 16:11:53 +0100 (Fri, 30 Jul 2010)
New Revision: 11246
Log:
Partially connect up the LZCNT tests. What remains to be done is to
make their building conditional on whether the assembler understands
'lzcnt', which is a configure time test. (Probably simpler to do a
single test for SSE4.1, 4.2 and 4a support as that will soon be
required anyway.)
Added:
trunk/none/tests/amd64/lzcnt64.c
trunk/none/tests/amd64/lzcnt64.stderr.exp
trunk/none/tests/amd64/lzcnt64.stdout.exp
trunk/none/tests/amd64/lzcnt64.vgtest
trunk/none/tests/x86/lzcnt32.c
trunk/none/tests/x86/lzcnt32.stderr.exp
trunk/none/tests/x86/lzcnt32.stdout.exp
trunk/none/tests/x86/lzcnt32.vgtest
Removed:
trunk/none/tests/amd64/test_lzcnt64.c
trunk/none/tests/x86/test_lzcnt32.c
Modified:
trunk/none/tests/amd64/Makefile.am
trunk/none/tests/x86/Makefile.am
Modified: trunk/none/tests/amd64/Makefile.am
===================================================================
--- trunk/none/tests/amd64/Makefile.am 2010-07-30 15:07:42 UTC (rev 11245)
+++ trunk/none/tests/amd64/Makefile.am 2010-07-30 15:11:53 UTC (rev 11246)
@@ -16,6 +16,9 @@
# Explicitly include insn_sse3 even if ! BUILD_SSE3_TESTS,
# to avoid packaging screwups if 'make dist' is run on a machine
# which failed the BUILD_SSE3_TESTS test in configure.in.
+
+## FIXME: move lzcnt64 to SSE4 conditionalisation, when that happens.
+
EXTRA_DIST = \
amd64locked.vgtest amd64locked.stdout.exp amd64locked.stderr.exp \
bug127521-64.vgtest bug127521-64.stdout.exp bug127521-64.stderr.exp \
@@ -37,6 +40,7 @@
insn_ssse3.stdout.exp insn_ssse3.stderr.exp insn_ssse3.vgtest \
jrcxz.stderr.exp jrcxz.stdout.exp jrcxz.vgtest \
looper.stderr.exp looper.stdout.exp looper.vgtest \
+ lzcnt64.stderr.exp lzcnt64.stdout.exp lzcnt64.vgtest \
nibz_bennee_mmap.stderr.exp nibz_bennee_mmap.stdout.exp \
nibz_bennee_mmap.vgtest \
rcl-amd64.vgtest rcl-amd64.stdout.exp rcl-amd64.stderr.exp \
@@ -56,6 +60,7 @@
bug127521-64 bug132813-amd64 bug132918 \
clc \
$(INSN_TESTS) \
+ lzcnt64 \
rcl-amd64 \
redundantRexW \
smc1 \
Copied: trunk/none/tests/amd64/lzcnt64.c (from rev 11244, trunk/none/tests/amd64/test_lzcnt64.c)
===================================================================
--- trunk/none/tests/amd64/lzcnt64.c (rev 0)
+++ trunk/none/tests/amd64/lzcnt64.c 2010-07-30 15:11:53 UTC (rev 11246)
@@ -0,0 +1,93 @@
+
+#include <stdio.h>
+
+typedef unsigned long long int ULong;
+typedef unsigned int UInt;
+
+__attribute__((noinline))
+void do_lzcnt64 ( /*OUT*/UInt* flags, /*OUT*/ULong* res, ULong arg )
+{
+ ULong block[3] = { arg, 0ULL, 0ULL };
+ __asm__ __volatile__(
+ "movabsq $0x5555555555555555, %%r11" "\n\t"
+ "lzcntq 0(%0), %%r11" "\n\t"
+ "movq %%r11, 8(%0)" "\n\t"
+ "pushfq" "\n\t"
+ "popq %%r11" "\n\t"
+ "movq %%r11, 16(%0)" "\n"
+ : : "r"(&block[0]) : "r11","cc","memory"
+ );
+ *res = block[1];
+ *flags = block[2] & 0x8d5;
+}
+
+__attribute__((noinline))
+void do_lzcnt32 ( /*OUT*/UInt* flags, /*OUT*/ULong* res, ULong arg )
+{
+ ULong block[3] = { arg, 0ULL, 0ULL };
+ __asm__ __volatile__(
+ "movabsq $0x5555555555555555, %%r11" "\n\t"
+ "lzcntl 0(%0), %%r11d" "\n\t"
+ "movq %%r11, 8(%0)" "\n\t"
+ "pushfq" "\n\t"
+ "popq %%r11" "\n\t"
+ "movq %%r11, 16(%0)" "\n"
+ : : "r"(&block[0]) : "r11","cc","memory"
+ );
+ *res = block[1];
+ *flags = block[2] & 0x8d5;
+}
+
+__attribute__((noinline))
+void do_lzcnt16 ( /*OUT*/UInt* flags, /*OUT*/ULong* res, ULong arg )
+{
+ ULong block[3] = { arg, 0ULL, 0ULL };
+ __asm__ __volatile__(
+ "movabsq $0x5555555555555555, %%r11" "\n\t"
+ "lzcntw 0(%0), %%r11w" "\n\t"
+ "movq %%r11, 8(%0)" "\n\t"
+ "pushfq" "\n\t"
+ "popq %%r11" "\n\t"
+ "movq %%r11, 16(%0)" "\n"
+ : : "r"(&block[0]) : "r11","cc","memory"
+ );
+ *res = block[1];
+ *flags = block[2] & 0x8d5;
+}
+
+int main ( void )
+{
+ ULong w;
+
+ w = 0xFEDC192837475675ULL;
+ while (1) {
+ ULong res;
+ UInt flags;
+ do_lzcnt64(&flags, &res, w);
+ printf("lzcntq %016llx -> %016llx %04x\n", w, res, flags);
+ if (w == 0) break;
+ w = ((w >> 2) | (w >> 1)) + (w / 17ULL);
+ }
+
+ w = 0xFEDC192837475675ULL;
+ while (1) {
+ ULong res;
+ UInt flags;
+ do_lzcnt32(&flags, &res, w);
+ printf("lzcntl %016llx -> %016llx %04x\n", w, res, flags);
+ if (w == 0) break;
+ w = ((w >> 2) | (w >> 1)) + (w / 17ULL);
+ }
+
+ w = 0xFEDC192837475675ULL;
+ while (1) {
+ ULong res;
+ UInt flags;
+ do_lzcnt16(&flags, &res, w);
+ printf("lzcntw %016llx -> %016llx %04x\n", w, res, flags);
+ if (w == 0) break;
+ w = ((w >> 2) | (w >> 1)) + (w / 17ULL);
+ }
+
+ return 0;
+}
Added: trunk/none/tests/amd64/lzcnt64.stderr.exp
===================================================================
Added: trunk/none/tests/amd64/lzcnt64.stdout.exp
===================================================================
--- trunk/none/tests/amd64/lzcnt64.stdout.exp (rev 0)
+++ trunk/none/tests/amd64/lzcnt64.stdout.exp 2010-07-30 15:11:53 UTC (rev 11246)
@@ -0,0 +1,375 @@
+lzcntq fedc192837475675 -> 0000000000000000 0040
+lzcntq 8efcf23ad7e922f3 -> 0000000000000000 0040
+lzcntq 7068b90cdf850938 -> 0000000000000001 0000
+lzcntq 42db3e5ed85503a5 -> 0000000000000001 0000
+lzcntq 35eea72efbea67d7 -> 0000000000000002 0000
+lzcntq 232c23d3b476ef47 -> 0000000000000002 0000
+lzcntq 1bf0c1bf27fbb3ab -> 0000000000000003 0000
+lzcntq 11a1311a29a562ea -> 0000000000000003 0000
+lzcntq 0e02582b8350ffd0 -> 0000000000000004 0000
+lzcntq 0854b4408f5b9e17 -> 0000000000000004 0000
+lzcntq 06bcf33434328063 -> 0000000000000005 0000
+lzcntq 0464f596e5f3ab8a -> 0000000000000005 0000
+lzcntq 037dac8063df281c -> 0000000000000006 0000
+lzcntq 0234910d6d0cfe89 -> 0000000000000006 0000
+lzcntq 01c0a27d7eaa2575 -> 0000000000000007 0000
+lzcntq 010adda943af43d8 -> 0000000000000007 0000
+lzcntq 00d7b2ae8c91c8ce -> 0000000000000008 0000
+lzcntq 008cae284a0c2065 -> 0000000000000008 0000
+lzcntq 006fc6190eb4fc04 -> 0000000000000009 0000
+lzcntq 004686bd6e829ce5 -> 0000000000000009 0000
+lzcntq 00380a0b248034f1 -> 000000000000000a 0000
+lzcntq 0021536a650d4fc6 -> 000000000000000a 0000
+lzcntq 001af3d8d0c8c068 -> 000000000000000b 0000
+lzcntq 001193de10460316 -> 000000000000000b 0000
+lzcntq 000df6b241dd45c1 -> 000000000000000c 0000
+lzcntq 0008d24469947f91 -> 000000000000000c 0000
+lzcntq 0007028a17f7fc21 -> 000000000000000d 0000
+lzcntq 00042b77370e9574 -> 000000000000000d 0000
+lzcntq 00035ecaa6c8cb9c -> 000000000000000e 0000
+lzcntq 000232b89c5ca207 -> 000000000000000e 0000
+lzcntq 0001bf185a53fb83 -> 000000000000000f 0000
+lzcntq 00011a1af9c2f08e -> 000000000000000f 0000
+lzcntq 0000e0282bc137ba -> 0000000000000010 0000
+lzcntq 0000854daa0b4caf -> 0000000000000010 0000
+lzcntq 00006bcf63e2fc01 -> 0000000000000011 0000
+lzcntq 0000464f7852a469 -> 0000000000000011 0000
+lzcntq 000037dac915aa8f -> 0000000000000012 0000
+lzcntq 0000234911b3280d -> 0000000000000012 0000
+lzcntq 00001c0a2862c244 -> 0000000000000013 0000
+lzcntq 000010addcd6577a -> 0000000000000013 0000
+lzcntq 00000d7b2a9b6ac9 -> 0000000000000014 0000
+lzcntq 000008cae2719cd4 -> 0000000000000014 0000
+lzcntq 000006fc61694403 -> 0000000000000015 0000
+lzcntq 000004686be70610 -> 0000000000000015 0000
+lzcntq 00000380a0af0023 -> 0000000000000016 0000
+lzcntq 0000021536a82984 -> 0000000000000016 0000
+lzcntq 000001af3d8f8abd -> 0000000000000017 0000
+lzcntq 000001193de14a82 -> 0000000000000017 0000
+lzcntq 000000df6b24569d -> 0000000000000018 0000
+lzcntq 0000008d2446cc8e -> 0000000000000018 0000
+lzcntq 0000007028a18af6 -> 0000000000000019 0000
+lzcntq 00000042b7735995 -> 0000000000000019 0000
+lzcntq 00000035ecaa6d9d -> 000000000000001a 0000
+lzcntq 000000232b89c661 -> 000000000000001a 0000
+lzcntq 0000001bf185a509 -> 000000000000001b 0000
+lzcntq 00000011a1af9c11 -> 000000000000001b 0000
+lzcntq 0000000e0282bbfd -> 000000000000001c 0000
+lzcntq 0000000854daa1a4 -> 000000000000001c 0000
+lzcntq 00000006bcf63eb9 -> 000000000000001d 0000
+lzcntq 0000000464f78590 -> 000000000000001d 0000
+lzcntq 000000037dac916c -> 000000000000001e 0000
+lzcntq 0000000234911b32 -> 000000000000001e 0000
+lzcntq 00000001c0a2862b -> 000000000000001f 0000
+lzcntq 000000010addcd65 -> 000000000000001f 0000
+lzcntq 00000000d7b2a9b5 -> 0000000000000020 0000
+lzcntq 000000008cae2718 -> 0000000000000020 0000
+lzcntq 000000006fc61693 -> 0000000000000021 0000
+lzcntq 000000004686be6e -> 0000000000000021 0000
+lzcntq 00000000380a0af2 -> 0000000000000022 0000
+lzcntq 0000000021536a83 -> 0000000000000022 0000
+lzcntq 000000001af3d8f7 -> 0000000000000023 0000
+lzcntq 000000001193de15 -> 0000000000000023 0000
+lzcntq 000000000df6b244 -> 0000000000000024 0000
+lzcntq 0000000008d2446b -> 0000000000000024 0000
+lzcntq 0000000007028a18 -> 0000000000000025 0000
+lzcntq 00000000042b7735 -> 0000000000000025 0000
+lzcntq 00000000035ecaa5 -> 0000000000000026 0000
+lzcntq 000000000232b89b -> 0000000000000026 0000
+lzcntq 0000000001bf185a -> 0000000000000027 0000
+lzcntq 00000000011a1af9 -> 0000000000000027 0000
+lzcntq 0000000000e0282a -> 0000000000000028 0000
+lzcntq 0000000000854da9 -> 0000000000000028 0000
+lzcntq 00000000006bcf62 -> 0000000000000029 0000
+lzcntq 0000000000464f77 -> 0000000000000029 0000
+lzcntq 000000000037dac9 -> 000000000000002a 0000
+lzcntq 0000000000234910 -> 000000000000002a 0000
+lzcntq 00000000001c0a27 -> 000000000000002b 0000
+lzcntq 000000000010add9 -> 000000000000002b 0000
+lzcntq 00000000000d7b28 -> 000000000000002c 0000
+lzcntq 000000000008cae0 -> 000000000000002c 0000
+lzcntq 000000000006fc5f -> 000000000000002d 0000
+lzcntq 0000000000046871 -> 000000000000002d 0000
+lzcntq 000000000003809d -> 000000000000002e 0000
+lzcntq 000000000002152c -> 000000000000002e 0000
+lzcntq 000000000001af3b -> 000000000000002f 0000
+lzcntq 000000000001193c -> 000000000000002f 0000
+lzcntq 000000000000df6a -> 0000000000000030 0000
+lzcntq 0000000000008d23 -> 0000000000000030 0000
+lzcntq 0000000000007026 -> 0000000000000031 0000
+lzcntq 00000000000042b3 -> 0000000000000031 0000
+lzcntq 00000000000035e9 -> 0000000000000032 0000
+lzcntq 0000000000002329 -> 0000000000000032 0000
+lzcntq 0000000000001bef -> 0000000000000033 0000
+lzcntq 00000000000011a3 -> 0000000000000033 0000
+lzcntq 0000000000000e02 -> 0000000000000034 0000
+lzcntq 0000000000000853 -> 0000000000000034 0000
+lzcntq 00000000000006ba -> 0000000000000035 0000
+lzcntq 0000000000000464 -> 0000000000000035 0000
+lzcntq 000000000000037d -> 0000000000000036 0000
+lzcntq 0000000000000233 -> 0000000000000036 0000
+lzcntq 00000000000001be -> 0000000000000037 0000
+lzcntq 0000000000000119 -> 0000000000000037 0000
+lzcntq 00000000000000de -> 0000000000000038 0000
+lzcntq 000000000000008c -> 0000000000000038 0000
+lzcntq 000000000000006f -> 0000000000000039 0000
+lzcntq 0000000000000045 -> 0000000000000039 0000
+lzcntq 0000000000000037 -> 000000000000003a 0000
+lzcntq 0000000000000022 -> 000000000000003a 0000
+lzcntq 000000000000001b -> 000000000000003b 0000
+lzcntq 0000000000000010 -> 000000000000003b 0000
+lzcntq 000000000000000c -> 000000000000003c 0000
+lzcntq 0000000000000007 -> 000000000000003d 0000
+lzcntq 0000000000000003 -> 000000000000003e 0000
+lzcntq 0000000000000001 -> 000000000000003f 0000
+lzcntq 0000000000000000 -> 0000000000000040 0001
+lzcntl fedc192837475675 -> 0000000000000002 0000
+lzcntl 8efcf23ad7e922f3 -> 0000000000000000 0040
+lzcntl 7068b90cdf850938 -> 0000000000000000 0040
+lzcntl 42db3e5ed85503a5 -> 0000000000000000 0040
+lzcntl 35eea72efbea67d7 -> 0000000000000000 0040
+lzcntl 232c23d3b476ef47 -> 0000000000000000 0040
+lzcntl 1bf0c1bf27fbb3ab -> 0000000000000002 0000
+lzcntl 11a1311a29a562ea -> 0000000000000002 0000
+lzcntl 0e02582b8350ffd0 -> 0000000000000000 0040
+lzcntl 0854b4408f5b9e17 -> 0000000000000000 0040
+lzcntl 06bcf33434328063 -> 0000000000000002 0000
+lzcntl 0464f596e5f3ab8a -> 0000000000000000 0040
+lzcntl 037dac8063df281c -> 0000000000000001 0000
+lzcntl 0234910d6d0cfe89 -> 0000000000000001 0000
+lzcntl 01c0a27d7eaa2575 -> 0000000000000001 0000
+lzcntl 010adda943af43d8 -> 0000000000000001 0000
+lzcntl 00d7b2ae8c91c8ce -> 0000000000000000 0040
+lzcntl 008cae284a0c2065 -> 0000000000000001 0000
+lzcntl 006fc6190eb4fc04 -> 0000000000000004 0000
+lzcntl 004686bd6e829ce5 -> 0000000000000001 0000
+lzcntl 00380a0b248034f1 -> 0000000000000002 0000
+lzcntl 0021536a650d4fc6 -> 0000000000000001 0000
+lzcntl 001af3d8d0c8c068 -> 0000000000000000 0040
+lzcntl 001193de10460316 -> 0000000000000003 0000
+lzcntl 000df6b241dd45c1 -> 0000000000000001 0000
+lzcntl 0008d24469947f91 -> 0000000000000001 0000
+lzcntl 0007028a17f7fc21 -> 0000000000000003 0000
+lzcntl 00042b77370e9574 -> 0000000000000002 0000
+lzcntl 00035ecaa6c8cb9c -> 0000000000000000 0040
+lzcntl 000232b89c5ca207 -> 0000000000000000 0040
+lzcntl 0001bf185a53fb83 -> 0000000000000001 0000
+lzcntl 00011a1af9c2f08e -> 0000000000000000 0040
+lzcntl 0000e0282bc137ba -> 0000000000000002 0000
+lzcntl 0000854daa0b4caf -> 0000000000000000 0040
+lzcntl 00006bcf63e2fc01 -> 0000000000000001 0000
+lzcntl 0000464f7852a469 -> 0000000000000001 0000
+lzcntl 000037dac915aa8f -> 0000000000000000 0040
+lzcntl 0000234911b3280d -> 0000000000000003 0000
+lzcntl 00001c0a2862c244 -> 0000000000000002 0000
+lzcntl 000010addcd6577a -> 0000000000000000 0040
+lzcntl 00000d7b2a9b6ac9 -> 0000000000000002 0000
+lzcntl 000008cae2719cd4 -> 0000000000000000 0040
+lzcntl 000006fc61694403 -> 0000000000000001 0000
+lzcntl 000004686be70610 -> 0000000000000001 0000
+lzcntl 00000380a0af0023 -> 0000000000000000 0040
+lzcntl 0000021536a82984 -> 0000000000000002 0000
+lzcntl 000001af3d8f8abd -> 0000000000000002 0000
+lzcntl 000001193de14a82 -> 0000000000000002 0000
+lzcntl 000000df6b24569d -> 0000000000000001 0000
+lzcntl 0000008d2446cc8e -> 0000000000000002 0000
+lzcntl 0000007028a18af6 -> 0000000000000002 0000
+lzcntl 00000042b7735995 -> 0000000000000000 0040
+lzcntl 00000035ecaa6d9d -> 0000000000000000 0040
+lzcntl 000000232b89c661 -> 0000000000000002 0000
+lzcntl 0000001bf185a509 -> 0000000000000000 0040
+lzcntl 00000011a1af9c11 -> 0000000000000000 0040
+lzcntl 0000000e0282bbfd -> 0000000000000006 0000
+lzcntl 0000000854daa1a4 -> 0000000000000001 0000
+lzcntl 00000006bcf63eb9 -> 0000000000000000 0040
+lzcntl 0000000464f78590 -> 0000000000000001 0000
+lzcntl 000000037dac916c -> 0000000000000001 0000
+lzcntl 0000000234911b32 -> 0000000000000002 0000
+lzcntl 00000001c0a2862b -> 0000000000000000 0040
+lzcntl 000000010addcd65 -> 0000000000000004 0000
+lzcntl 00000000d7b2a9b5 -> 0000000000000000 0040
+lzcntl 000000008cae2718 -> 0000000000000000 0040
+lzcntl 000000006fc61693 -> 0000000000000001 0000
+lzcntl 000000004686be6e -> 0000000000000001 0000
+lzcntl 00000000380a0af2 -> 0000000000000002 0000
+lzcntl 0000000021536a83 -> 0000000000000002 0000
+lzcntl 000000001af3d8f7 -> 0000000000000003 0000
+lzcntl 000000001193de15 -> 0000000000000003 0000
+lzcntl 000000000df6b244 -> 0000000000000004 0000
+lzcntl 0000000008d2446b -> 0000000000000004 0000
+lzcntl 0000000007028a18 -> 0000000000000005 0000
+lzcntl 00000000042b7735 -> 0000000000000005 0000
+lzcntl 00000000035ecaa5 -> 0000000000000006 0000
+lzcntl 000000000232b89b -> 0000000000000006 0000
+lzcntl 0000000001bf185a -> 0000000000000007 0000
+lzcntl 00000000011a1af9 -> 0000000000000007 0000
+lzcntl 0000000000e0282a -> 0000000000000008 0000
+lzcntl 0000000000854da9 -> 0000000000000008 0000
+lzcntl 00000000006bcf62 -> 0000000000000009 0000
+lzcntl 0000000000464f77 -> 0000000000000009 0000
+lzcntl 000000000037dac9 -> 000000000000000a 0000
+lzcntl 0000000000234910 -> 000000000000000a 0000
+lzcntl 00000000001c0a27 -> 000000000000000b 0000
+lzcntl 000000000010add9 -> 000000000000000b 0000
+lzcntl 00000000000d7b28 -> 000000000000000c 0000
+lzcntl 000000000008cae0 -> 000000000000000c 0000
+lzcntl 000000000006fc5f -> 000000000000000d 0000
+lzcntl 0000000000046871 -> 000000000000000d 0000
+lzcntl 000000000003809d -> 000000000000000e 0000
+lzcntl 000000000002152c -> 000000000000000e 0000
+lzcntl 000000000001af3b -> 000000000000000f 0000
+lzcntl 000000000001193c -> 000000000000000f 0000
+lzcntl 000000000000df6a -> 0000000000000010 0000
+lzcntl 0000000000008d23 -> 0000000000000010 0000
+lzcntl 0000000000007026 -> 0000000000000011 0000
+lzcntl 00000000000042b3 -> 0000000000000011 0000
+lzcntl 00000000000035e9 -> 0000000000000012 0000
+lzcntl 0000000000002329 -> 0000000000000012 0000
+lzcntl 0000000000001bef -> 0000000000000013 0000
+lzcntl 00000000000011a3 -> 0000000000000013 0000
+lzcntl 0000000000000e02 -> 0000000000000014 0000
+lzcntl 0000000000000853 -> 0000000000000014 0000
+lzcntl 00000000000006ba -> 0000000000000015 0000
+lzcntl 0000000000000464 -> 0000000000000015 0000
+lzcntl 000000000000037d -> 0000000000000016 0000
+lzcntl 0000000000000233 -> 0000000000000016 0000
+lzcntl 00000000000001be -> 0000000000000017 0000
+lzcntl 0000000000000119 -> 0000000000000017 0000
+lzcntl 00000000000000de -> 0000000000000018 0000
+lzcntl 000000000000008c -> 0000000000000018 0000
+lzcntl 000000000000006f -> 0000000000000019 0000
+lzcntl 0000000000000045 -> 0000000000000019 0000
+lzcntl 0000000000000037 -> 000000000000001a 0000
+lzcntl 0000000000000022 -> 000000000000001a 0000
+lzcntl 000000000000001b -> 000000000000001b 0000
+lzcntl 0000000000000010 -> 000000000000001b 0000
+lzcntl 000000000000000c -> 000000000000001c 0000
+lzcntl 0000000000000007 -> 000000000000001d 0000
+lzcntl 0000000000000003 -> 000000000000001e 0000
+lzcntl 0000000000000001 -> 000000000000001f 0000
+lzcntl 0000000000000000 -> 0000000000000020 0001
+lzcntw fedc192837475675 -> 5555555555550001 0000
+lzcntw 8efcf23ad7e922f3 -> 5555555555550002 0000
+lzcntw 7068b90cdf850938 -> 5555555555550004 0000
+lzcntw 42db3e5ed85503a5 -> 5555555555550006 0000
+lzcntw 35eea72efbea67d7 -> 5555555555550001 0000
+lzcntw 232c23d3b476ef47 -> 5555555555550000 0040
+lzcntw 1bf0c1bf27fbb3ab -> 5555555555550000 0040
+lzcntw 11a1311a29a562ea -> 5555555555550001 0000
+lzcntw 0e02582b8350ffd0 -> 5555555555550000 0040
+lzcntw 0854b4408f5b9e17 -> 5555555555550000 0040
+lzcntw 06bcf33434328063 -> 5555555555550000 0040
+lzcntw 0464f596e5f3ab8a -> 5555555555550000 0040
+lzcntw 037dac8063df281c -> 5555555555550002 0000
+lzcntw 0234910d6d0cfe89 -> 5555555555550000 0040
+lzcntw 01c0a27d7eaa2575 -> 5555555555550002 0000
+lzcntw 010adda943af43d8 -> 5555555555550001 0000
+lzcntw 00d7b2ae8c91c8ce -> 5555555555550000 0040
+lzcntw 008cae284a0c2065 -> 5555555555550002 0000
+lzcntw 006fc6190eb4fc04 -> 5555555555550000 0040
+lzcntw 004686bd6e829ce5 -> 5555555555550000 0040
+lzcntw 00380a0b248034f1 -> 5555555555550002 0000
+lzcntw 0021536a650d4fc6 -> 5555555555550001 0000
+lzcntw 001af3d8d0c8c068 -> 5555555555550000 0040
+lzcntw 001193de10460316 -> 5555555555550006 0000
+lzcntw 000df6b241dd45c1 -> 5555555555550001 0000
+lzcntw 0008d24469947f91 -> 5555555555550001 0000
+lzcntw 0007028a17f7fc21 -> 5555555555550000 0040
+lzcntw 00042b77370e9574 -> 5555555555550000 0040
+lzcntw 00035ecaa6c8cb9c -> 5555555555550000 0040
+lzcntw 000232b89c5ca207 -> 5555555555550000 0040
+lzcntw 0001bf185a53fb83 -> 5555555555550000 0040
+lzcntw 00011a1af9c2f08e -> 5555555555550000 0040
+lzcntw 0000e0282bc137ba -> 5555555555550002 0000
+lzcntw 0000854daa0b4caf -> 5555555555550001 0000
+lzcntw 00006bcf63e2fc01 -> 5555555555550000 0040
+lzcntw 0000464f7852a469 -> 5555555555550000 0040
+lzcntw 000037dac915aa8f -> 5555555555550000 0040
+lzcntw 0000234911b3280d -> 5555555555550002 0000
+lzcntw 00001c0a2862c244 -> 5555555555550000 0040
+lzcntw 000010addcd6577a -> 5555555555550001 0000
+lzcntw 00000d7b2a9b6ac9 -> 5555555555550001 0000
+lzcntw 000008cae2719cd4 -> 5555555555550000 0040
+lzcntw 000006fc61694403 -> 5555555555550001 0000
+lzcntw 000004686be70610 -> 5555555555550005 0000
+lzcntw 00000380a0af0023 -> 555555555555000a 0000
+lzcntw 0000021536a82984 -> 5555555555550002 0000
+lzcntw 000001af3d8f8abd -> 5555555555550000 0040
+lzcntw 000001193de14a82 -> 5555555555550001 0000
+lzcntw 000000df6b24569d -> 5555555555550001 0000
+lzcntw 0000008d2446cc8e -> 5555555555550000 0040
+lzcntw 0000007028a18af6 -> 5555555555550000 0040
+lzcntw 00000042b7735995 -> 5555555555550001 0000
+lzcntw 00000035ecaa6d9d -> 5555555555550001 0000
+lzcntw 000000232b89c661 -> 5555555555550000 0040
+lzcntw 0000001bf185a509 -> 5555555555550000 0040
+lzcntw 00000011a1af9c11 -> 5555555555550000 0040
+lzcntw 0000000e0282bbfd -> 5555555555550000 0040
+lzcntw 0000000854daa1a4 -> 5555555555550000 0040
+lzcntw 00000006bcf63eb9 -> 5555555555550002 0000
+lzcntw 0000000464f78590 -> 5555555555550000 0040
+lzcntw 000000037dac916c -> 5555555555550000 0040
+lzcntw 0000000234911b32 -> 5555555555550003 0000
+lzcntw 00000001c0a2862b -> 5555555555550000 0040
+lzcntw 000000010addcd65 -> 5555555555550000 0040
+lzcntw 00000000d7b2a9b5 -> 5555555555550000 0040
+lzcntw 000000008cae2718 -> 5555555555550002 0000
+lzcntw 000000006fc61693 -> 5555555555550003 0000
+lzcntw 000000004686be6e -> 5555555555550000 0040
+lzcntw 00000000380a0af2 -> 5555555555550004 0000
+lzcntw 0000000021536a83 -> 5555555555550001 0000
+lzcntw 000000001af3d8f7 -> 5555555555550000 0040
+lzcntw 000000001193de15 -> 5555555555550000 0040
+lzcntw 000000000df6b244 -> 5555555555550000 0040
+lzcntw 0000000008d2446b -> 5555555555550001 0000
+lzcntw 0000000007028a18 -> 5555555555550000 0040
+lzcntw 00000000042b7735 -> 5555555555550001 0000
+lzcntw 00000000035ecaa5 -> 5555555555550000 0040
+lzcntw 000000000232b89b -> 5555555555550000 0040
+lzcntw 0000000001bf185a -> 5555555555550003 0000
+lzcntw 00000000011a1af9 -> 5555555555550003 0000
+lzcntw 0000000000e0282a -> 5555555555550002 0000
+lzcntw 0000000000854da9 -> 5555555555550001 0000
+lzcntw 00000000006bcf62 -> 5555555555550000 0040
+lzcntw 0000000000464f77 -> 5555555555550001 0000
+lzcntw 000000000037dac9 -> 5555555555550000 0040
+lzcntw 0000000000234910 -> 5555555555550001 0000
+lzcntw 00000000001c0a27 -> 5555555555550004 0000
+lzcntw 000000000010add9 -> 5555555555550000 0040
+lzcntw 00000000000d7b28 -> 5555555555550001 0000
+lzcntw 000000000008cae0 -> 5555555555550000 0040
+lzcntw 000000000006fc5f -> 5555555555550000 0040
+lzcntw 0000000000046871 -> 5555555555550001 0000
+lzcntw 000000000003809d -> 5555555555550000 0040
+lzcntw 000000000002152c -> 5555555555550003 0000
+lzcntw 000000000001af3b -> 5555555555550000 0040
+lzcntw 000000000001193c -> 5555555555550003 0000
+lzcntw 000000000000df6a -> 5555555555550000 0040
+lzcntw 0000000000008d23 -> 5555555555550000 0040
+lzcntw 0000000000007026 -> 5555555555550001 0000
+lzcntw 00000000000042b3 -> 5555555555550001 0000
+lzcntw 00000000000035e9 -> 5555555555550002 0000
+lzcntw 0000000000002329 -> 5555555555550002 0000
+lzcntw 0000000000001bef -> 5555555555550003 0000
+lzcntw 00000000000011a3 -> 5555555555550003 0000
+lzcntw 0000000000000e02 -> 5555555555550004 0000
+lzcntw 0000000000000853 -> 5555555555550004 0000
+lzcntw 00000000000006ba -> 5555555555550005 0000
+lzcntw 0000000000000464 -> 5555555555550005 0000
+lzcntw 000000000000037d -> 5555555555550006 0000
+lzcntw 0000000000000233 -> 5555555555550006 0000
+lzcntw 00000000000001be -> 5555555555550007 0000
+lzcntw 0000000000000119 -> 5555555555550007 0000
+lzcntw 00000000000000de -> 5555555555550008 0000
+lzcntw 000000000000008c -> 5555555555550008 0000
+lzcntw 000000000000006f -> 5555555555550009 0000
+lzcntw 0000000000000045 -> 5555555555550009 0000
+lzcntw 0000000000000037 -> 555555555555000a 0000
+lzcntw 0000000000000022 -> 555555555555000a 0000
+lzcntw 000000000000001b -> 555555555555000b 0000
+lzcntw 0000000000000010 -> 555555555555000b 0000
+lzcntw 000000000000000c -> 555555555555000c 0000
+lzcntw 0000000000000007 -> 555555555555000d 0000
+lzcntw 0000000000000003 -> 555555555555000e 0000
+lzcntw 0000000000000001 -> 555555555555000f 0000
+lzcntw 0000000000000000 -> 5555555555550010 0001
Added: trunk/none/tests/amd64/lzcnt64.vgtest
===================================================================
--- trunk/none/tests/amd64/lzcnt64.vgtest (rev 0)
+++ trunk/none/tests/amd64/lzcnt64.vgtest 2010-07-30 15:11:53 UTC (rev 11246)
@@ -0,0 +1,3 @@
+prog: lzcnt64
+prereq: ../../../tests/x86_amd64_features amd64-lzcnt
+vgopts: -q
Deleted: trunk/none/tests/amd64/test_lzcnt64.c
===================================================================
--- trunk/none/tests/amd64/test_lzcnt64.c 2010-07-30 15:07:42 UTC (rev 11245)
+++ trunk/none/tests/amd64/test_lzcnt64.c 2010-07-30 15:11:53 UTC (rev 11246)
@@ -1,93 +0,0 @@
-
-#include <stdio.h>
-
-typedef unsigned long long int ULong;
-typedef unsigned int UInt;
-
-__attribute__((noinline))
-void do_lzcnt64 ( /*OUT*/UInt* flags, /*OUT*/ULong* res, ULong arg )
-{
- ULong block[3] = { arg, 0ULL, 0ULL };
- __asm__ __volatile__(
- "movabsq $0x5555555555555555, %%r11" "\n\t"
- "lzcntq 0(%0), %%r11" "\n\t"
- "movq %%r11, 8(%0)" "\n\t"
- "pushfq" "\n\t"
- "popq %%r11" "\n\t"
- "movq %%r11, 16(%0)" "\n"
- : : "r"(&block[0]) : "r11","cc","memory"
- );
- *res = block[1];
- *flags = block[2] & 0x8d5;
-}
-
-__attribute__((noinline))
-void do_lzcnt32 ( /*OUT*/UInt* flags, /*OUT*/ULong* res, ULong arg )
-{
- ULong block[3] = { arg, 0ULL, 0ULL };
- __asm__ __volatile__(
- "movabsq $0x5555555555555555, %%r11" "\n\t"
- "lzcntl 0(%0), %%r11d" "\n\t"
- "movq %%r11, 8(%0)" "\n\t"
- "pushfq" "\n\t"
- "popq %%r11" "\n\t"
- "movq %%r11, 16(%0)" "\n"
- : : "r"(&block[0]) : "r11","cc","memory"
- );
- *res = block[1];
- *flags = block[2] & 0x8d5;
-}
-
-__attribute__((noinline))
-void do_lzcnt16 ( /*OUT*/UInt* flags, /*OUT*/ULong* res, ULong arg )
-{
- ULong block[3] = { arg, 0ULL, 0ULL };
- __asm__ __volatile__(
- "movabsq $0x5555555555555555, %%r11" "\n\t"
- "lzcntw 0(%0), %%r11w" "\n\t"
- "movq %%r11, 8(%0)" "\n\t"
- "pushfq" "\n\t"
- "popq %%r11" "\n\t"
- "movq %%r11, 16(%0)" "\n"
- : : "r"(&block[0]) : "r11","cc","memory"
- );
- *res = block[1];
- *flags = block[2] & 0x8d5;
-}
-
-int main ( void )
-{
- ULong w;
-
- w = 0xFEDC192837475675ULL;
- while (1) {
- ULong res;
- UInt flags;
- do_lzcnt64(&flags, &res, w);
- printf("lzcntq %016llx -> %016llx %04x\n", w, res, flags);
- if (w == 0) break;
- w = ((w >> 2) | (w >> 1)) + (w / 17ULL);
- }
-
- w = 0xFEDC192837475675ULL;
- while (1) {
- ULong res;
- UInt flags;
- do_lzcnt32(&flags, &res, w);
- printf("lzcntl %016llx -> %016llx %04x\n", w, res, flags);
- if (w == 0) break;
- w = ((w >> 2) | (w >> 1)) + (w / 17ULL);
- }
-
- w = 0xFEDC192837475675ULL;
- while (1) {
- ULong res;
- UInt flags;
- do_lzcnt16(&flags, &res, w);
- printf("lzcntw %016llx -> %016llx %04x\n", w, res, flags);
- if (w == 0) break;
- w = ((w >> 2) | (w >> 1)) + (w / 17ULL);
- }
-
- return 0;
-}
Modified: trunk/none/tests/x86/Makefile.am
===================================================================
--- trunk/none/tests/x86/Makefile.am 2010-07-30 15:07:42 UTC (rev 11245)
+++ trunk/none/tests/x86/Makefile.am 2010-07-30 15:11:53 UTC (rev 11246)
@@ -17,6 +17,9 @@
# Explicitly include insn_sse3 even if ! BUILD_SSE3_TESTS,
# to avoid packaging screwups if 'make dist' is run on a machine
# which failed the BUILD_SSE3_TESTS test in configure.in.
+
+## FIXME: move lzcnt32 to SSE4 conditionalisation, when that happens.
+
EXTRA_DIST = \
badseg.stderr.exp badseg.stdout.exp badseg.vgtest \
bt_everything.stderr.exp bt_everything.stdout.exp bt_everything.vgtest \
@@ -46,6 +49,7 @@
jcxz.stdout.exp jcxz.stderr.exp jcxz.vgtest \
lahf.stdout.exp lahf.stderr.exp lahf.vgtest \
looper.stderr.exp looper.stdout.exp looper.vgtest \
+ lzcnt32.stderr.exp lzcnt32.stdout.exp lzcnt32.vgtest \
movx.stderr.exp movx.stdout.exp movx.vgtest \
pushpopseg.stderr.exp pushpopseg.stdout.exp pushpopseg.vgtest \
sbbmisc.stderr.exp sbbmisc.stdout.exp sbbmisc.vgtest \
@@ -80,6 +84,7 @@
jcxz \
lahf \
looper \
+ lzcnt32 \
movx \
pushpopseg \
sbbmisc \
Copied: trunk/none/tests/x86/lzcnt32.c (from rev 11244, trunk/none/tests/x86/test_lzcnt32.c)
===================================================================
--- trunk/none/tests/x86/lzcnt32.c (rev 0)
+++ trunk/none/tests/x86/lzcnt32.c 2010-07-30 15:11:53 UTC (rev 11246)
@@ -0,0 +1,66 @@
+
+#include <stdio.h>
+
+typedef unsigned long long int ULong;
+typedef unsigned int UInt;
+
+__attribute__((noinline))
+void do_lzcnt32 ( /*OUT*/UInt* flags, /*OUT*/UInt* res, UInt arg )
+{
+ UInt block[3] = { arg, 0, 0 };
+ __asm__ __volatile__(
+ "movl $0x55555555, %%esi" "\n\t"
+ "lzcntl 0(%0), %%esi" "\n\t"
+ "movl %%esi, 4(%0)" "\n\t"
+ "pushfl" "\n\t"
+ "popl %%esi" "\n\t"
+ "movl %%esi, 8(%0)" "\n"
+ : : "r"(&block[0]) : "esi","cc","memory"
+ );
+ *res = block[1];
+ *flags = block[2] & 0x8d5;
+}
+
+__attribute__((noinline))
+void do_lzcnt16 ( /*OUT*/UInt* flags, /*OUT*/UInt* res, UInt arg )
+{
+ UInt block[3] = { arg, 0, 0 };
+ __asm__ __volatile__(
+ "movl $0x55555555, %%esi" "\n\t"
+ "lzcntw 0(%0), %%si" "\n\t"
+ "movl %%esi, 4(%0)" "\n\t"
+ "pushfl" "\n\t"
+ "popl %%esi" "\n\t"
+ "movl %%esi, 8(%0)" "\n"
+ : : "r"(&block[0]) : "esi","cc","memory"
+ );
+ *res = block[1];
+ *flags = block[2] & 0x8d5;
+}
+
+int main ( void )
+{
+ UInt w;
+
+ w = 0xFEDC1928;
+ while (1) {
+ UInt res;
+ UInt flags;
+ do_lzcnt32(&flags, &res, w);
+ printf("lzcntl %08x -> %08x %04x\n", w, res, flags);
+ if (w == 0) break;
+ w = ((w >> 2) | (w >> 1)) + (w / 17);
+ }
+
+ w = 0xFEDC1928;
+ while (1) {
+ UInt res;
+ UInt flags;
+ do_lzcnt16(&flags, &res, w);
+ printf("lzcntw %08x -> %08x %04x\n", w, res, flags);
+ if (w == 0) break;
+ w = ((w >> 2) | (w >> 1)) + (w / 17);
+ }
+
+ return 0;
+}
Added: trunk/none/tests/x86/lzcnt32.stderr.exp
===================================================================
Added: trunk/none/tests/x86/lzcnt32.stdout.exp
===================================================================
--- trunk/none/tests/x86/lzcnt32.stdout.exp (rev 0)
+++ trunk/none/tests/x86/lzcnt32.stdout.exp 2010-07-30 15:11:53 UTC (rev 11246)
@@ -0,0 +1,122 @@
+lzcntl fedc1928 -> 00000000 0040
+lzcntl 8efcf23a -> 00000000 0040
+lzcntl 7068b90b -> 00000001 0000
+lzcntl 42db3e5e -> 00000001 0000
+lzcntl 35eea72d -> 00000002 0000
+lzcntl 232c23d2 -> 00000002 0000
+lzcntl 1bf0c1be -> 00000003 0000
+lzcntl 11a13119 -> 00000003 0000
+lzcntl 0e025829 -> 00000004 0000
+lzcntl 0854b43e -> 00000004 0000
+lzcntl 06bcf322 -> 00000005 0000
+lzcntl 0464f58f -> 00000005 0000
+lzcntl 037dac76 -> 00000006 0000
+lzcntl 023490eb -> 00000006 0000
+lzcntl 01c0a232 -> 00000007 0000
+lzcntl 010add81 -> 00000007 0000
+lzcntl 00d7b28d -> 00000008 0000
+lzcntl 008cae0d -> 00000008 0000
+lzcntl 006fc600 -> 00000009 0000
+lzcntl 004686ad -> 00000009 0000
+lzcntl 00380a09 -> 0000000a 0000
+lzcntl 00215368 -> 0000000a 0000
+lzcntl 001af3d6 -> 0000000b 0000
+lzcntl 001193de -> 0000000b 0000
+lzcntl 000df6b1 -> 0000000c 0000
+lzcntl 0008d242 -> 0000000c 0000
+lzcntl 00070287 -> 0000000d 0000
+lzcntl 00042b72 -> 0000000d 0000
+lzcntl 00035ec7 -> 0000000e 0000
+lzcntl 000232b3 -> 0000000e 0000
+lzcntl 0001bf16 -> 0000000f 0000
+lzcntl 00011a1b -> 0000000f 0000
+lzcntl 0000e027 -> 00000010 0000
+lzcntl 0000854a -> 00000010 0000
+lzcntl 00006bce -> 00000011 0000
+lzcntl 0000464e -> 00000011 0000
+lzcntl 000037d9 -> 00000012 0000
+lzcntl 00002347 -> 00000012 0000
+lzcntl 00001c06 -> 00000013 0000
+lzcntl 000010a9 -> 00000013 0000
+lzcntl 00000d78 -> 00000014 0000
+lzcntl 000008c8 -> 00000014 0000
+lzcntl 000006fa -> 00000015 0000
+lzcntl 00000468 -> 00000015 0000
+lzcntl 00000380 -> 00000016 0000
+lzcntl 00000214 -> 00000016 0000
+lzcntl 000001ae -> 00000017 0000
+lzcntl 00000118 -> 00000017 0000
+lzcntl 000000de -> 00000018 0000
+lzcntl 0000008c -> 00000018 0000
+lzcntl 0000006f -> 00000019 0000
+lzcntl 00000045 -> 00000019 0000
+lzcntl 00000037 -> 0000001a 0000
+lzcntl 00000022 -> 0000001a 0000
+lzcntl 0000001b -> 0000001b 0000
+lzcntl 00000010 -> 0000001b 0000
+lzcntl 0000000c -> 0000001c 0000
+lzcntl 00000007 -> 0000001d 0000
+lzcntl 00000003 -> 0000001e 0000
+lzcntl 00000001 -> 0000001f 0000
+lzcntl 00000000 -> 00000020 0001
+lzcntw fedc1928 -> 55550003 0000
+lzcntw 8efcf23a -> 55550000 0040
+lzcntw 7068b90b -> 55550000 0040
+lzcntw 42db3e5e -> 55550002 0000
+lzcntw 35eea72d -> 55550000 0040
+lzcntw 232c23d2 -> 55550002 0000
+lzcntw 1bf0c1be -> 55550000 0040
+lzcntw 11a13119 -> 55550002 0000
+lzcntw 0e025829 -> 55550001 0000
+lzcntw 0854b43e -> 55550000 0040
+lzcntw 06bcf322 -> 55550000 0040
+lzcntw 0464f58f -> 55550000 0040
+lzcntw 037dac76 -> 55550000 0040
+lzcntw 023490eb -> 55550000 0040
+lzcntw 01c0a232 -> 55550000 0040
+lzcntw 010add81 -> 55550000 0040
+lzcntw 00d7b28d -> 55550000 0040
+lzcntw 008cae0d -> 55550000 0040
+lzcntw 006fc600 -> 55550000 0040
+lzcntw 004686ad -> 55550000 0040
+lzcntw 00380a09 -> 55550004 0000
+lzcntw 00215368 -> 55550001 0000
+lzcntw 001af3d6 -> 55550000 0040
+lzcntw 001193de -> 55550000 0040
+lzcntw 000df6b1 -> 55550000 0040
+lzcntw 0008d242 -> 55550000 0040
+lzcntw 00070287 -> 55550006 0000
+lzcntw 00042b72 -> 55550002 0000
+lzcntw 00035ec7 -> 55550001 0000
+lzcntw 000232b3 -> 55550002 0000
+lzcntw 0001bf16 -> 55550000 0040
+lzcntw 00011a1b -> 55550003 0000
+lzcntw 0000e027 -> 55550000 0040
+lzcntw 0000854a -> 55550000 0040
+lzcntw 00006bce -> 55550001 0000
+lzcntw 0000464e -> 55550001 0000
+lzcntw 000037d9 -> 55550002 0000
+lzcntw 00002347 -> 55550002 0000
+lzcntw 00001c06 -> 55550003 0000
+lzcntw 000010a9 -> 55550003 0000
+lzcntw 00000d78 -> 55550004 0000
+lzcntw 000008c8 -> 55550004 0000
+lzcntw 000006fa -> 55550005 0000
+lzcntw 00000468 -> 55550005 0000
+lzcntw 00000380 -> 55550006 0000
+lzcntw 00000214 -> 55550006 0000
+lzcntw 000001ae -> 55550007 0000
+lzcntw 00000118 -> 55550007 0000
+lzcntw 000000de -> 55550008 0000
+lzcntw 0000008c -> 55550008 0000
+lzcntw 0000006f -> 55550009 0000
+lzcntw 00000045 -> 55550009 0000
+lzcntw 00000037 -> 5555000a 0000
+lzcntw 00000022 -> 5555000a 0000
+lzcntw 0000001b -> 5555000b 0000
+lzcntw 00000010 -> 5555000b 0000
+lzcntw 0000000c -> 5555000c 0000
+lzcntw 00000007 -> 5555000d 0000
+lzcntw 00000003 -> 5555000e 0000
+lzcntw 00000001 -> 5555000f 0000
+lzcntw 00000000 -> 55550010 0001
Added: trunk/none/tests/x86/lzcnt32.vgtest
===================================================================
--- trunk/none/tests/x86/lzcnt32.vgtest (rev 0)
+++ trunk/none/tests/x86/lzcnt32.vgtest 2010-07-30 15:11:53 UTC (rev 11246)
@@ -0,0 +1,3 @@
+prog: lzcnt32
+prereq: ../../../tests/x86_amd64_features x86-lzcnt
+vgopts: -q
Deleted: trunk/none/tests/x86/test_lzcnt32.c
===================================================================
--- trunk/none/tests/x86/test_lzcnt32.c 2010-07-30 15:07:42 UTC (rev 11245)
+++ trunk/none/tests/x86/test_lzcnt32.c 2010-07-30 15:11:53 UTC (rev 11246)
@@ -1,66 +0,0 @@
-
-#include <stdio.h>
-
-typedef unsigned long long int ULong;
-typedef unsigned int UInt;
-
-__attribute__((noinline))
-void do_lzcnt32 ( /*OUT*/UInt* flags, /*OUT*/UInt* res, UInt arg )
-{
- UInt block[3] = { arg, 0, 0 };
- __asm__ __volatile__(
- "movl $0x55555555, %%esi" "\n\t"
- "lzcntl 0(%0), %%esi" "\n\t"
- "movl %%esi, 4(%0)" "\n\t"
- "pushfl" "\n\t"
- "popl %%esi" "\n\t"
- "movl %%esi, 8(%0)" "\n"
- : : "r"(&block[0]) : "esi","cc","memory"
- );
- *res = block[1];
- *flags = block[2] & 0x8d5;
-}
-
-__attribute__((noinline))
-void do_lzcnt16 ( /*OUT*/UInt* flags, /*OUT*/UInt* res, UInt arg )
-{
- UInt block[3] = { arg, 0, 0 };
- __asm__ __volatile__(
- "movl $0x55555555, %%esi" "\n\t"
- "lzcntw 0(%0), %%si" "\n\t"
- "movl %%esi, 4(%0)" "\n\t"
- "pushfl" "\n\t"
- "popl %%esi" "\n\t"
- "movl %%esi, 8(%0)" "\n"
- : : "r"(&block[0]) : "esi","cc","memory"
- );
- *res = block[1];
- *flags = block[2] & 0x8d5;
-}
-
-int main ( void )
-{
- UInt w;
-
- w = 0xFEDC1928;
- while (1) {
- UInt res;
- UInt flags;
- do_lzcnt32(&flags, &res, w);
- printf("lzcntl %08x -> %08x %04x\n", w, res, flags);
- if (w == 0) break;
- w = ((w >> 2) | (w >> 1)) + (w / 17);
- }
-
- w = 0xFEDC1928;
- while (1) {
- UInt res;
- UInt flags;
- do_lzcnt16(&flags, &res, w);
- printf("lzcntw %08x -> %08x %04x\n", w, res, flags);
- if (w == 0) break;
- w = ((w >> 2) | (w >> 1)) + (w / 17);
- }
-
- return 0;
-}
|
|
From: <sv...@va...> - 2010-07-30 15:07:53
|
Author: sewardj
Date: 2010-07-30 16:07:42 +0100 (Fri, 30 Jul 2010)
New Revision: 11245
Log:
Add the ability to detect "amd64-lzcnt" and "x86-lzcnt".
Modified:
trunk/tests/x86_amd64_features.c
Modified: trunk/tests/x86_amd64_features.c
===================================================================
--- trunk/tests/x86_amd64_features.c 2010-07-30 13:14:11 UTC (rev 11244)
+++ trunk/tests/x86_amd64_features.c 2010-07-30 15:07:42 UTC (rev 11245)
@@ -29,9 +29,23 @@
: "0" (n) /* input */
);
}
+
+static Bool vendorStringEquals ( char* str )
+{
+ char vstr[13];
+ unsigned int a, b, c, d;
+ cpuid(0, &a, &b, &c, &d);
+ memcpy(&vstr[0], &b, 4);
+ memcpy(&vstr[4], &d, 4);
+ memcpy(&vstr[8], &c, 4);
+ vstr[12] = 0;
+ return 0 == strcmp(vstr, str);
+}
+
static Bool go(char* cpu)
{
unsigned int level = 0, cmask = 0, dmask = 0, a, b, c, d;
+ Bool require_amd = False;
if ( strcmp( cpu, "x86-fpu" ) == 0 ) {
level = 1;
@@ -57,6 +71,10 @@
} else if ( strcmp( cpu, "x86-ssse3" ) == 0 ) {
level = 1;
cmask = 1 << 9;
+ } else if ( strcmp( cpu, "x86-lzcnt" ) == 0 ) {
+ level = 0x80000001;
+ cmask = 1 << 5;
+ require_amd = True;
#if defined(VGA_amd64)
} else if ( strcmp( cpu, "amd64-sse3" ) == 0 ) {
level = 1;
@@ -67,6 +85,10 @@
} else if ( strcmp( cpu, "amd64-cx16" ) == 0 ) {
level = 1;
cmask = 1 << 13;
+ } else if ( strcmp( cpu, "amd64-lzcnt" ) == 0 ) {
+ level = 0x80000001;
+ cmask = 1 << 5;
+ require_amd = True;
#endif
} else {
return 2; // Unrecognised feature.
@@ -75,6 +97,10 @@
assert( !(cmask != 0 && dmask != 0) );
assert( !(cmask == 0 && dmask == 0) );
+ if (require_amd && !vendorStringEquals("AuthenticAMD"))
+ return 1; // Feature not present
+ // regardless of what that feature actually is
+
cpuid( level & 0x80000000, &a, &b, &c, &d );
if ( a >= level ) {
|
|
From: <sv...@va...> - 2010-07-30 13:14:21
|
Author: tom
Date: 2010-07-30 14:14:11 +0100 (Fri, 30 Jul 2010)
New Revision: 11244
Log:
Use VALGRIND_PRINTF to print the first line of the message so that
we only get one copy of the backtrace. Reported in bug #246258.
Modified:
trunk/coregrind/m_replacemalloc/vg_replace_malloc.c
Modified: trunk/coregrind/m_replacemalloc/vg_replace_malloc.c
===================================================================
--- trunk/coregrind/m_replacemalloc/vg_replace_malloc.c 2010-07-29 18:12:23 UTC (rev 11243)
+++ trunk/coregrind/m_replacemalloc/vg_replace_malloc.c 2010-07-30 13:14:11 UTC (rev 11244)
@@ -219,7 +219,7 @@
v = (void*)VALGRIND_NON_SIMD_CALL1( info.tl_##vg_replacement, n ); \
MALLOC_TRACE(" = %p\n", v ); \
if (NULL == v) { \
- VALGRIND_PRINTF_BACKTRACE( \
+ VALGRIND_PRINTF( \
"new/new[] failed and should throw an exception, but Valgrind\n"); \
VALGRIND_PRINTF_BACKTRACE( \
" cannot throw exceptions and so is aborting instead. Sorry.\n"); \
|
|
From: Nicholas N. <n.n...@gm...> - 2010-07-30 09:33:42
|
Nightly build on ocean ( Ubuntu 9.10, x86_64 )
Started at 2010-07-30 02:00:01 PDT
Ended at 2010-07-30 02:33:29 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
== 552 tests, 8 stderr failures, 3 stdout failures, 0 post failures ==
memcheck/tests/linux/stack_switch (stderr)
memcheck/tests/long_namespace_xml (stderr)
memcheck/tests/x86-linux/scalar (stderr)
none/tests/amd64/bug132918 (stdout)
none/tests/amd64/fxtract (stdout)
none/tests/x86/fxtract (stdout)
helgrind/tests/tc06_two_races_xml (stderr)
helgrind/tests/tc09_bad_unlock (stderr)
helgrind/tests/tc20_verifywrap (stderr)
helgrind/tests/tc23_bogus_condwait (stderr)
exp-ptrcheck/tests/bad_percentify (stderr)
=================================================
./valgrind-new/exp-ptrcheck/tests/bad_percentify.stderr.diff-glibc28-amd64
=================================================
--- bad_percentify.stderr.exp-glibc28-amd64 2010-07-30 02:17:10.000000000 -0700
+++ bad_percentify.stderr.out 2010-07-30 02:32:12.000000000 -0700
@@ -1,32 +1,29 @@
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:...)
- by 0x........: ...
+ at 0x........: ...
by 0x........: ...
by 0x........: VG_print_translation_stats (bad_percentify.c:88)
by 0x........: main (bad_percentify.c:107)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 3 back from here
+ Expected: stack array "buf" in frame 2 back from here
Actual: unknown
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:...)
- by 0x........: ...
+ at 0x........: ...
by 0x........: ...
by 0x........: VG_print_translation_stats (bad_percentify.c:93)
by 0x........: main (bad_percentify.c:107)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 3 back from here
+ Expected: stack array "buf" in frame 2 back from here
Actual: unknown
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:...)
- by 0x........: ...
+ at 0x........: ...
by 0x........: ...
by 0x........: VG_print_translation_stats (bad_percentify.c:98)
by 0x........: main (bad_percentify.c:107)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 3 back from here
+ Expected: stack array "buf" in frame 2 back from here
Actual: unknown
=================================================
./valgrind-new/helgrind/tests/tc06_two_races_xml.stderr.diff
=================================================
--- tc06_two_races_xml.stderr.exp 2010-07-30 02:17:07.000000000 -0700
+++ tc06_two_races_xml.stderr.out 2010-07-30 02:27:51.000000000 -0700
@@ -40,16 +40,25 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>clone</fn>
+ <dir>...</dir>
+ <file>clone.S</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>do_clone</fn>
+ <fn>T.102</fn>
+ <dir>...</dir>
+ <file>createthread.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
<obj>...</obj>
<fn>pthread_create@@GLIBC_2.2.5</fn>
+ <dir>...</dir>
+ <file>createthread.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
@@ -121,11 +130,17 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
+ <dir>...</dir>
+ <file>pthread_create.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
<obj>...</obj>
<fn>clone</fn>
+ <dir>...</dir>
+ <file>clone.S</file>
+ <line>...</line>
</frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat>
@@ -175,11 +190,17 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
+ <dir>...</dir>
+ <file>pthread_create.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
<obj>...</obj>
<fn>clone</fn>
+ <dir>...</dir>
+ <file>clone.S</file>
+ <line>...</line>
</frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat>
@@ -229,11 +250,17 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
+ <dir>...</dir>
+ <file>pthread_create.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
<obj>...</obj>
<fn>clone</fn>
+ <dir>...</dir>
+ <file>clone.S</file>
+ <line>...</line>
</frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot2"</auxwhat>
@@ -283,11 +310,17 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
+ <dir>...</dir>
+ <file>pthread_create.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
<obj>...</obj>
<fn>clone</fn>
+ <dir>...</dir>
+ <file>clone.S</file>
+ <line>...</line>
</frame>
</stack>
<truncated beyond 100 lines>
=================================================
./valgrind-new/helgrind/tests/tc09_bad_unlock.stderr.diff-glibc23-amd64
=================================================
--- tc09_bad_unlock.stderr.exp-glibc23-amd64 2010-07-30 02:17:07.000000000 -0700
+++ tc09_bad_unlock.stderr.out 2010-07-30 02:27:53.000000000 -0700
@@ -31,14 +31,13 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:49)
-Thread #x deallocated location 0x........ containing a locked lock
- at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: main (tc09_bad_unlock.c:49)
- Lock at 0x........ was first observed
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
+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)
+---------------------
Thread #x unlocked a not-locked lock at 0x........
at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:27)
@@ -46,6 +45,20 @@
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:23)
+ by 0x........: main (tc09_bad_unlock.c:49)
+
+Thread #x: Attempt to re-lock a non-recursive lock I already hold
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
+ by 0x........: main (tc09_bad_unlock.c:50)
+ Lock was previously acquired
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
+ by 0x........: main (tc09_bad_unlock.c:49)
+
+Thread #x: Bug in libpthread: recursive write lock granted on mutex/wrlock which does not support recursion
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
by 0x........: main (tc09_bad_unlock.c:50)
Thread #x was created
@@ -62,20 +75,21 @@
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:50)
+ by 0x........: main (tc09_bad_unlock.c:49)
Thread #x unlocked an invalid lock at 0x........
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 deallocated location 0x........ containing a locked lock
- at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: main (tc09_bad_unlock.c:50)
- Lock at 0x........ was first observed
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
+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: 8 errors from 8 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/helgrind/tests/tc09_bad_unlock.stderr.diff-glibc25-amd64
=================================================
--- tc09_bad_unlock.stderr.exp-glibc25-amd64 2010-07-30 02:17:07.000000000 -0700
+++ tc09_bad_unlock.stderr.out 2010-07-30 02:27:53.000000000 -0700
@@ -51,6 +51,10 @@
at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:32)
by 0x........: main (tc09_bad_unlock.c:50)
+ Lock was previously acquired
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
+ by 0x........: main (tc09_bad_unlock.c:49)
Thread #x: Bug in libpthread: recursive write lock granted on mutex/wrlock which does not support recursion
at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
=================================================
./valgrind-new/helgrind/tests/tc09_bad_unlock.stderr.diff-glibc25-x86
=================================================
--- tc09_bad_unlock.stderr.exp-glibc25-x86 2010-07-30 02:17:07.000000000 -0700
+++ tc09_bad_unlock.stderr.out 2010-07-30 02:27:53.000000000 -0700
@@ -37,14 +37,7 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:49)
-Thread #x deallocated location 0x........ containing a locked lock
- at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: main (tc09_bad_unlock.c:49)
- Lock at 0x........ was first observed
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:49)
-
+---------------------
Thread #x unlocked a not-locked lock at 0x........
at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:27)
@@ -52,6 +45,20 @@
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:23)
+ by 0x........: main (tc09_bad_unlock.c:49)
+
+Thread #x: Attempt to re-lock a non-recursive lock I already hold
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
+ by 0x........: main (tc09_bad_unlock.c:50)
+ Lock was previously acquired
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
+ by 0x........: main (tc09_bad_unlock.c:49)
+
+Thread #x: Bug in libpthread: recursive write lock granted on mutex/wrlock which does not support recursion
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
by 0x........: main (tc09_bad_unlock.c:50)
Thread #x was created
@@ -68,7 +75,7 @@
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:50)
+ by 0x........: main (tc09_bad_unlock.c:49)
Thread #x unlocked an invalid lock at 0x........
at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
@@ -81,13 +88,8 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:50)
-Thread #x deallocated location 0x........ containing a locked lock
- at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: main (tc09_bad_unlock.c:50)
- Lock at 0x........ was first observed
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:50)
+Thread #x: Exiting thread still holds 1 lock
+ ...
-ERROR SUMMARY: 10 errors from 10 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/helgrind/tests/tc20_verifywrap.stderr.diff-glibc25-amd64
=================================================
--- tc20_verifywrap.stderr.exp-glibc25-amd64 2010-07-30 02:17:07.000000000 -0700
+++ tc20_verifywrap.stderr.out 2010-07-30 02:28:11.000000000 -0700
@@ -71,12 +71,14 @@
---------------- pthread_cond_wait et al ----------------
Thread #x: pthread_cond_{timed}wait called with un-held mutex
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:147)
Thread #x's call to pthread_cond_wait failed
with error code 1 (EPERM: Operation not permitted)
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:147)
@@ -86,12 +88,14 @@
FIXME: can't figure out how to verify wrap of pthread_broadcast_signal
Thread #x: pthread_cond_{timed}wait called with un-held mutex
- at 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_timedwait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:165)
Thread #x's call to pthread_cond_timedwait failed
with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_timedwait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:165)
@@ -142,6 +146,12 @@
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
@@ -152,4 +162,4 @@
...
-ERROR SUMMARY: 20 errors from 20 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 21 errors from 21 contexts (suppressed: 0 from 0)
=================================================
./valgrind-new/helgrind/tests/tc20_verifywrap.stderr.diff-glibc27-amd64
=================================================
--- tc20_verifywrap.stderr.exp-glibc27-amd64 2010-07-30 02:17:07.000000000 -0700
+++ tc20_verifywrap.stderr.out 2010-07-30 02:28:11.000000000 -0700
@@ -71,12 +71,14 @@
---------------- pthread_cond_wait et al ----------------
Thread #x: pthread_cond_{timed}wait called with un-held mutex
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:147)
Thread #x's call to pthread_cond_wait failed
with error code 1 (EPERM: Operation not permitted)
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:147)
@@ -86,12 +88,14 @@
FIXME: can't figure out how to verify wrap of pthread_broadcast_signal
Thread #x: pthread_cond_{timed}wait called with un-held mutex
- at 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_timedwait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:165)
Thread #x's call to pthread_cond_timedwait failed
with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_timedwait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:165)
=================================================
./valgrind-new/helgrind/tests/tc23_bogus_condwait.stderr.diff
=================================================
--- tc23_bogus_condwait.stderr.exp 2010-07-30 02:17:07.000000000 -0700
+++ tc23_bogus_condwait.stderr.out 2010-07-30 02:28:23.000000000 -0700
@@ -2,31 +2,38 @@
Thread #x is the program's root thread
Thread #x: pthread_cond_{timed}wait called with invalid mutex
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc23_bogus_condwait.c:69)
Thread #x: pthread_cond_{timed}wait called with un-held mutex
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc23_bogus_condwait.c:72)
Thread #x: pthread_cond_{timed}wait: cond is associated with a different mutex
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc23_bogus_condwait.c:72)
Thread #x: pthread_cond_{timed}wait called with mutex of type pthread_rwlock_t*
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc23_bogus_condwait.c:75)
Thread #x: pthread_cond_{timed}wait: cond is associated with a different mutex
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc23_bogus_condwait.c:75)
Thread #x: pthread_cond_{timed}wait called with mutex held by a different thread
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc23_bogus_condwait.c:78)
Thread #x: pthread_cond_{timed}wait: cond is associated with a different mutex
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc23_bogus_condwait.c:78)
=================================================
./valgrind-new/memcheck/tests/linux/stack_switch.stderr.diff
=================================================
--- stack_switch.stderr.exp 2010-07-30 02:17:24.000000000 -0700
+++ stack_switch.stderr.out 2010-07-30 02:23:22.000000000 -0700
@@ -0,0 +1,3 @@
+Syscall param clone(child_tidptr) contains uninitialised byte(s)
+ ...
+
=================================================
./valgrind-new/memcheck/tests/long_namespace_xml.stderr.diff
=================================================
--- long_namespace_xml.stderr.exp 2010-07-30 02:17:27.000000000 -0700
+++ long_namespace_xml.stderr.out 2010-07-30 02:23:31.000000000 -0700
@@ -37,7 +37,7 @@
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm</fn>
+ <fn>_ZN53044basic_iostreamIwSt11char_traitsIwEE</fn>
<dir>...</dir>
<file>long_namespace_xml.cpp</file>
<line>...</line>
@@ -64,7 +64,7 @@
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm</fn>
+ <fn>_ZN53044basic_iostreamIwSt11char_traitsIwEE</fn>
<dir>...</dir>
<file>long_namespace_xml.cpp</file>
<line>...</line>
=================================================
./valgrind-new/memcheck/tests/x86-linux/scalar.stderr.diff
=================================================
--- scalar.stderr.exp 2010-07-30 02:17:17.000000000 -0700
+++ scalar.stderr.out 2010-07-30 02:24:57.000000000 -0700
@@ -230,10 +230,6 @@
Syscall param mount(data) contains uninitialised byte(s)
...
-Syscall param mount(source) points to unaddressable byte(s)
- ...
- Address 0x........ is not stack'd, malloc'd or (recently) free'd
-
Syscall param mount(target) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
@@ -505,9 +501,6 @@
-----------------------------------------------------
55: __NR_fcntl (GETLK) 1s 0m
-----------------------------------------------------
-
-More than 100 errors detected. Subsequent errors
-will still be recorded, but in less detail than before.
Syscall param fcntl(lock) contains uninitialised byte(s)
...
@@ -517,6 +510,9 @@
-----------------------------------------------------
57: __NR_setpgid 2s 0m
-----------------------------------------------------
+
+More than 100 errors detected. Subsequent errors
+will still be recorded, but in less detail than before.
Syscall param setpgid(pid) contains uninitialised byte(s)
...
=================================================
./valgrind-new/none/tests/amd64/bug132918.stdout.diff
=================================================
--- bug132918.stdout.exp 2010-07-30 02:17:43.000000000 -0700
+++ bug132918.stdout.out 2010-07-30 02:25:44.000000000 -0700
@@ -1,6 +1,6 @@
xx1 -> 0x4200 8.300000
xx2 -> 0x0000 1.440000
-xx -> 0x0000 -nan
+xx -> 0x0000 nan
xx -> 0x0000 0.809017
xx -> 0x0000 0.309018
xx -> 0x0000 -0.309015
=================================================
./valgrind-new/none/tests/amd64/fxtract.stdout.diff
=================================================
--- fxtract.stdout.exp 2010-07-30 02:17:43.000000000 -0700
+++ fxtract.stdout.out 2010-07-30 02:25:46.000000000 -0700
@@ -40,7 +40,7 @@
2.7049662808e+02 -> 1.0566274534 8.0000000000
0.0000000000e+00 -> 0.0000000000 -inf
inf -> inf inf
- -nan -> -nan -nan
+ nan -> nan nan
7.2124891681e-308 -> 1.6207302828 -1021.0000000000
5.7982756057e-308 -> 1.3029400313 -1021.0000000000
4.3840620434e-308 -> 1.9702995595 -1022.0000000000
=================================================
./valgrind-new/none/tests/x86/fxtract.stdout.diff
=================================================
--- fxtract.stdout.exp 2010-07-30 02:17:50.000000000 -0700
+++ fxtract.stdout.out 2010-07-30 02:26:56.000000000 -0700
@@ -40,7 +40,7 @@
2.7049662808e+02 -> 1.0566274534 8.0000000000
0.0000000000e+00 -> 0.0000000000 -inf
inf -> inf inf
- -nan -> -nan -nan
+ nan -> nan nan
7.2124891681e-308 -> 1.6207302828 -1021.0000000000
5.7982756057e-308 -> 1.3029400313 -1021.0000000000
4.3840620434e-308 -> 1.9702995595 -1022.0000000000
=================================================
./valgrind-old/exp-ptrcheck/tests/bad_percentify.stderr.diff-glibc28-amd64
=================================================
--- bad_percentify.stderr.exp-glibc28-amd64 2010-07-30 02:00:28.000000000 -0700
+++ bad_percentify.stderr.out 2010-07-30 02:15:37.000000000 -0700
@@ -1,32 +1,29 @@
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:...)
- by 0x........: ...
+ at 0x........: ...
by 0x........: ...
by 0x........: VG_print_translation_stats (bad_percentify.c:88)
by 0x........: main (bad_percentify.c:107)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 3 back from here
+ Expected: stack array "buf" in frame 2 back from here
Actual: unknown
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:...)
- by 0x........: ...
+ at 0x........: ...
by 0x........: ...
by 0x........: VG_print_translation_stats (bad_percentify.c:93)
by 0x........: main (bad_percentify.c:107)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 3 back from here
+ Expected: stack array "buf" in frame 2 back from here
Actual: unknown
Invalid read of size 1
- at 0x........: strlen (h_intercepts.c:...)
- by 0x........: ...
+ at 0x........: ...
by 0x........: ...
by 0x........: VG_print_translation_stats (bad_percentify.c:98)
by 0x........: main (bad_percentify.c:107)
Address 0x........ expected vs actual:
- Expected: stack array "buf" in frame 3 back from here
+ Expected: stack array "buf" in frame 2 back from here
Actual: unknown
=================================================
./valgrind-old/helgrind/tests/tc06_two_races_xml.stderr.diff
=================================================
--- tc06_two_races_xml.stderr.exp 2010-07-30 02:00:25.000000000 -0700
+++ tc06_two_races_xml.stderr.out 2010-07-30 02:11:14.000000000 -0700
@@ -40,16 +40,25 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>clone</fn>
+ <dir>...</dir>
+ <file>clone.S</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>do_clone</fn>
+ <fn>T.102</fn>
+ <dir>...</dir>
+ <file>createthread.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
<obj>...</obj>
<fn>pthread_create@@GLIBC_2.2.5</fn>
+ <dir>...</dir>
+ <file>createthread.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
@@ -121,11 +130,17 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
+ <dir>...</dir>
+ <file>pthread_create.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
<obj>...</obj>
<fn>clone</fn>
+ <dir>...</dir>
+ <file>clone.S</file>
+ <line>...</line>
</frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat>
@@ -175,11 +190,17 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
+ <dir>...</dir>
+ <file>pthread_create.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
<obj>...</obj>
<fn>clone</fn>
+ <dir>...</dir>
+ <file>clone.S</file>
+ <line>...</line>
</frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat>
@@ -229,11 +250,17 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
+ <dir>...</dir>
+ <file>pthread_create.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
<obj>...</obj>
<fn>clone</fn>
+ <dir>...</dir>
+ <file>clone.S</file>
+ <line>...</line>
</frame>
</stack>
<auxwhat>Location 0x........ is 0 bytes inside global var "unprot2"</auxwhat>
@@ -283,11 +310,17 @@
<ip>0x........</ip>
<obj>...</obj>
<fn>start_thread</fn>
+ <dir>...</dir>
+ <file>pthread_create.c</file>
+ <line>...</line>
</frame>
<frame>
<ip>0x........</ip>
<obj>...</obj>
<fn>clone</fn>
+ <dir>...</dir>
+ <file>clone.S</file>
+ <line>...</line>
</frame>
</stack>
<truncated beyond 100 lines>
=================================================
./valgrind-old/helgrind/tests/tc09_bad_unlock.stderr.diff-glibc23-amd64
=================================================
--- tc09_bad_unlock.stderr.exp-glibc23-amd64 2010-07-30 02:00:25.000000000 -0700
+++ tc09_bad_unlock.stderr.out 2010-07-30 02:11:16.000000000 -0700
@@ -31,14 +31,13 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:49)
-Thread #x deallocated location 0x........ containing a locked lock
- at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: main (tc09_bad_unlock.c:49)
- Lock at 0x........ was first observed
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
+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)
+---------------------
Thread #x unlocked a not-locked lock at 0x........
at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:27)
@@ -46,6 +45,20 @@
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:23)
+ by 0x........: main (tc09_bad_unlock.c:49)
+
+Thread #x: Attempt to re-lock a non-recursive lock I already hold
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
+ by 0x........: main (tc09_bad_unlock.c:50)
+ Lock was previously acquired
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
+ by 0x........: main (tc09_bad_unlock.c:49)
+
+Thread #x: Bug in libpthread: recursive write lock granted on mutex/wrlock which does not support recursion
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
by 0x........: main (tc09_bad_unlock.c:50)
Thread #x was created
@@ -62,20 +75,21 @@
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:50)
+ by 0x........: main (tc09_bad_unlock.c:49)
Thread #x unlocked an invalid lock at 0x........
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 deallocated location 0x........ containing a locked lock
- at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: main (tc09_bad_unlock.c:50)
- Lock at 0x........ was first observed
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
+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: 8 errors from 8 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/helgrind/tests/tc09_bad_unlock.stderr.diff-glibc25-amd64
=================================================
--- tc09_bad_unlock.stderr.exp-glibc25-amd64 2010-07-30 02:00:25.000000000 -0700
+++ tc09_bad_unlock.stderr.out 2010-07-30 02:11:16.000000000 -0700
@@ -51,6 +51,10 @@
at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:32)
by 0x........: main (tc09_bad_unlock.c:50)
+ Lock was previously acquired
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
+ by 0x........: main (tc09_bad_unlock.c:49)
Thread #x: Bug in libpthread: recursive write lock granted on mutex/wrlock which does not support recursion
at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
=================================================
./valgrind-old/helgrind/tests/tc09_bad_unlock.stderr.diff-glibc25-x86
=================================================
--- tc09_bad_unlock.stderr.exp-glibc25-x86 2010-07-30 02:00:25.000000000 -0700
+++ tc09_bad_unlock.stderr.out 2010-07-30 02:11:16.000000000 -0700
@@ -37,14 +37,7 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:49)
-Thread #x deallocated location 0x........ containing a locked lock
- at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: main (tc09_bad_unlock.c:49)
- Lock at 0x........ was first observed
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:49)
-
+---------------------
Thread #x unlocked a not-locked lock at 0x........
at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:27)
@@ -52,6 +45,20 @@
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:23)
+ by 0x........: main (tc09_bad_unlock.c:49)
+
+Thread #x: Attempt to re-lock a non-recursive lock I already hold
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
+ by 0x........: main (tc09_bad_unlock.c:50)
+ Lock was previously acquired
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
+ by 0x........: main (tc09_bad_unlock.c:49)
+
+Thread #x: Bug in libpthread: recursive write lock granted on mutex/wrlock which does not support recursion
+ at 0x........: pthread_mutex_lock (hg_intercepts.c:...)
+ by 0x........: nearly_main (tc09_bad_unlock.c:32)
by 0x........: main (tc09_bad_unlock.c:50)
Thread #x was created
@@ -68,7 +75,7 @@
Lock at 0x........ was first observed
at 0x........: pthread_mutex_init (hg_intercepts.c:...)
by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:50)
+ by 0x........: main (tc09_bad_unlock.c:49)
Thread #x unlocked an invalid lock at 0x........
at 0x........: pthread_mutex_unlock (hg_intercepts.c:...)
@@ -81,13 +88,8 @@
by 0x........: nearly_main (tc09_bad_unlock.c:41)
by 0x........: main (tc09_bad_unlock.c:50)
-Thread #x deallocated location 0x........ containing a locked lock
- at 0x........: nearly_main (tc09_bad_unlock.c:45)
- by 0x........: main (tc09_bad_unlock.c:50)
- Lock at 0x........ was first observed
- at 0x........: pthread_mutex_init (hg_intercepts.c:...)
- by 0x........: nearly_main (tc09_bad_unlock.c:31)
- by 0x........: main (tc09_bad_unlock.c:50)
+Thread #x: Exiting thread still holds 1 lock
+ ...
-ERROR SUMMARY: 10 errors from 10 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 11 errors from 11 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/helgrind/tests/tc20_verifywrap.stderr.diff-glibc25-amd64
=================================================
--- tc20_verifywrap.stderr.exp-glibc25-amd64 2010-07-30 02:00:25.000000000 -0700
+++ tc20_verifywrap.stderr.out 2010-07-30 02:11:35.000000000 -0700
@@ -71,12 +71,14 @@
---------------- pthread_cond_wait et al ----------------
Thread #x: pthread_cond_{timed}wait called with un-held mutex
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:147)
Thread #x's call to pthread_cond_wait failed
with error code 1 (EPERM: Operation not permitted)
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:147)
@@ -86,12 +88,14 @@
FIXME: can't figure out how to verify wrap of pthread_broadcast_signal
Thread #x: pthread_cond_{timed}wait called with un-held mutex
- at 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_timedwait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:165)
Thread #x's call to pthread_cond_timedwait failed
with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_timedwait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:165)
@@ -142,6 +146,12 @@
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
@@ -152,4 +162,4 @@
...
-ERROR SUMMARY: 20 errors from 20 contexts (suppressed: 0 from 0)
+ERROR SUMMARY: 21 errors from 21 contexts (suppressed: 0 from 0)
=================================================
./valgrind-old/helgrind/tests/tc20_verifywrap.stderr.diff-glibc27-amd64
=================================================
--- tc20_verifywrap.stderr.exp-glibc27-amd64 2010-07-30 02:00:25.000000000 -0700
+++ tc20_verifywrap.stderr.out 2010-07-30 02:11:35.000000000 -0700
@@ -71,12 +71,14 @@
---------------- pthread_cond_wait et al ----------------
Thread #x: pthread_cond_{timed}wait called with un-held mutex
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:147)
Thread #x's call to pthread_cond_wait failed
with error code 1 (EPERM: Operation not permitted)
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:147)
@@ -86,12 +88,14 @@
FIXME: can't figure out how to verify wrap of pthread_broadcast_signal
Thread #x: pthread_cond_{timed}wait called with un-held mutex
- at 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_timedwait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:165)
Thread #x's call to pthread_cond_timedwait failed
with error code 22 (EINVAL: Invalid argument)
- at 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_timedwait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_timedwait@* (hg_intercepts.c:...)
by 0x........: main (tc20_verifywrap.c:165)
=================================================
./valgrind-old/helgrind/tests/tc23_bogus_condwait.stderr.diff
=================================================
--- tc23_bogus_condwait.stderr.exp 2010-07-30 02:00:25.000000000 -0700
+++ tc23_bogus_condwait.stderr.out 2010-07-30 02:11:46.000000000 -0700
@@ -2,31 +2,38 @@
Thread #x is the program's root thread
Thread #x: pthread_cond_{timed}wait called with invalid mutex
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc23_bogus_condwait.c:69)
Thread #x: pthread_cond_{timed}wait called with un-held mutex
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc23_bogus_condwait.c:72)
Thread #x: pthread_cond_{timed}wait: cond is associated with a different mutex
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc23_bogus_condwait.c:72)
Thread #x: pthread_cond_{timed}wait called with mutex of type pthread_rwlock_t*
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc23_bogus_condwait.c:75)
Thread #x: pthread_cond_{timed}wait: cond is associated with a different mutex
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc23_bogus_condwait.c:75)
Thread #x: pthread_cond_{timed}wait called with mutex held by a different thread
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc23_bogus_condwait.c:78)
Thread #x: pthread_cond_{timed}wait: cond is associated with a different mutex
- at 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
+ at 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...)
+ by 0x........: pthread_cond_wait@* (hg_intercepts.c:...)
by 0x........: main (tc23_bogus_condwait.c:78)
=================================================
./valgrind-old/memcheck/tests/linux/stack_switch.stderr.diff
=================================================
--- stack_switch.stderr.exp 2010-07-30 02:00:43.000000000 -0700
+++ stack_switch.stderr.out 2010-07-30 02:06:44.000000000 -0700
@@ -0,0 +1,3 @@
+Syscall param clone(child_tidptr) contains uninitialised byte(s)
+ ...
+
=================================================
./valgrind-old/memcheck/tests/long_namespace_xml.stderr.diff
=================================================
--- long_namespace_xml.stderr.exp 2010-07-30 02:00:45.000000000 -0700
+++ long_namespace_xml.stderr.out 2010-07-30 02:06:53.000000000 -0700
@@ -37,7 +37,7 @@
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm</fn>
+ <fn>_ZN53044basic_iostreamIwSt11char_traitsIwEE</fn>
<dir>...</dir>
<file>long_namespace_xml.cpp</file>
<line>...</line>
@@ -64,7 +64,7 @@
<frame>
<ip>0x........</ip>
<obj>...</obj>
- <fn>abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm</fn>
+ <fn>_ZN53044basic_iostreamIwSt11char_traitsIwEE</fn>
<dir>...</dir>
<file>long_namespace_xml.cpp</file>
<line>...</line>
=================================================
./valgrind-old/memcheck/tests/x86-linux/scalar.stderr.diff
=================================================
--- scalar.stderr.exp 2010-07-30 02:00:36.000000000 -0700
+++ scalar.stderr.out 2010-07-30 02:08:23.000000000 -0700
@@ -230,10 +230,6 @@
Syscall param mount(data) contains uninitialised byte(s)
...
-Syscall param mount(source) points to unaddressable byte(s)
- ...
- Address 0x........ is not stack'd, malloc'd or (recently) free'd
-
Syscall param mount(target) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
@@ -505,9 +501,6 @@
-----------------------------------------------------
55: __NR_fcntl (GETLK) 1s 0m
-----------------------------------------------------
-
-More than 100 errors detected. Subsequent errors
-will still be recorded, but in less detail than before.
Syscall param fcntl(lock) contains uninitialised byte(s)
...
@@ -517,6 +510,9 @@
-----------------------------------------------------
57: __NR_setpgid 2s 0m
-----------------------------------------------------
+
+More than 100 errors detected. Subsequent errors
+will still be recorded, but in less detail than before.
Syscall param setpgid(pid) contains uninitialised byte(s)
...
=================================================
./valgrind-old/none/tests/amd64/bug132918.stdout.diff
=================================================
--- bug132918.stdout.exp 2010-07-30 02:01:02.000000000 -0700
+++ bug132918.stdout.out 2010-07-30 02:09:08.000000000 -0700
@@ -1,6 +1,6 @@
xx1 -> 0x4200 8.300000
xx2 -> 0x0000 1.440000
-xx -> 0x0000 -nan
+xx -> 0x0000 nan
xx -> 0x0000 0.809017
xx -> 0x0000 0.309018
xx -> 0x0000 -0.309015
=================================================
./valgrind-old/none/tests/amd64/fxtract.stdout.diff
=================================================
--- fxtract.stdout.exp 2010-07-30 02:01:02.000000000 -0700
+++ fxtract.stdout.out 2010-07-30 02:09:10.000000000 -0700
@@ -40,7 +40,7 @@
2.7049662808e+02 -> 1.0566274534 8.0000000000
0.0000000000e+00 -> 0.0000000000 -inf
inf -> inf inf
- -nan -> -nan -nan
+ nan -> nan nan
7.2124891681e-308 -> 1.6207302828 -1021.0000000000
5.7982756057e-308 -> 1.3029400313 -1021.0000000000
4.3840620434e-308 -> 1.9702995595 -1022.0000000000
=================================================
./valgrind-old/none/tests/x86/fxtract.stdout.diff
=================================================
--- fxtract.stdout.exp 2010-07-30 02:01:10.000000000 -0700
+++ fxtract.stdout.out 2010-07-30 02:10:19.000000000 -0700
@@ -40,7 +40,7 @@
2.7049662808e+02 -> 1.0566274534 8.0000000000
0.0000000000e+00 -> 0.0000000000 -inf
inf -> inf inf
- -nan -> -nan -nan
+ nan -> nan nan
7.2124891681e-308 -> 1.6207302828 -1021.0000000000
5.7982756057e-308 -> 1.3029400313 -1021.0000000000
4.3840620434e-308 -> 1.9702995595 -1022.0000000000
|
|
From: Bart V. A. <bva...@ac...> - 2010-07-30 07:58:55
|
Nightly build on cellbuzz-native ( cellbuzz, ppc64, Fedora 7, native ) Started at 2010-07-30 02:28:30 EDT Ended at 2010-07-30 03:58:39 EDT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 462 tests, 45 stderr failures, 12 stdout failures, 0 post failures == memcheck/tests/deep_templates (stdout) memcheck/tests/leak-cases-full (stderr) memcheck/tests/leak-cases-summary (stderr) memcheck/tests/leak-cycle (stderr) memcheck/tests/linux/timerfd-syscall (stdout) memcheck/tests/linux-syscalls-2007 (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/varinfo1 (stderr) memcheck/tests/varinfo2 (stderr) memcheck/tests/varinfo3 (stderr) memcheck/tests/varinfo4 (stderr) memcheck/tests/varinfo5 (stderr) memcheck/tests/varinfo6 (stderr) memcheck/tests/wrap8 (stdout) memcheck/tests/wrap8 (stderr) callgrind/tests/simwork-both (stdout) callgrind/tests/simwork-both (stderr) callgrind/tests/simwork-branch (stdout) callgrind/tests/simwork-branch (stderr) none/tests/empty-exe (stderr) none/tests/linux/mremap (stderr) none/tests/ppc32/jm-fp (stdout) none/tests/ppc32/jm-vmx (stdout) none/tests/ppc32/round (stdout) none/tests/ppc32/test_gx (stdout) none/tests/ppc64/jm-fp (stdout) none/tests/ppc64/jm-vmx (stdout) none/tests/ppc64/round (stdout) none/tests/shell_valid2 (stderr) none/tests/shell_valid3 (stderr) none/tests/shell_zerolength (stderr) helgrind/tests/hg05_race2 (stderr) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc09_bad_unlock (stderr) helgrind/tests/tc23_bogus_condwait (stderr) exp-ptrcheck/tests/bad_percentify (stderr) exp-ptrcheck/tests/base (stderr) exp-ptrcheck/tests/ccc (stderr) exp-ptrcheck/tests/fp (stderr) exp-ptrcheck/tests/globalerr (stderr) exp-ptrcheck/tests/hackedbz2 (stderr) exp-ptrcheck/tests/hp_bounds (stderr) exp-ptrcheck/tests/hp_dangle (stderr) exp-ptrcheck/tests/hsg (stderr) exp-ptrcheck/tests/justify (stderr) exp-ptrcheck/tests/partial_bad (stderr) exp-ptrcheck/tests/partial_good (stderr) exp-ptrcheck/tests/preen_invars (stderr) exp-ptrcheck/tests/pth_create (stderr) exp-ptrcheck/tests/pth_specific (stderr) exp-ptrcheck/tests/realloc (stderr) exp-ptrcheck/tests/stackerr (stderr) exp-ptrcheck/tests/strcpy (stderr) exp-ptrcheck/tests/supp (stderr) exp-ptrcheck/tests/tricky (stderr) exp-ptrcheck/tests/unaligned (stderr) exp-ptrcheck/tests/zero (stderr) |
|
From: Julian S. <js...@ac...> - 2010-07-30 07:11:58
|
Please could you open a bug on the bug tracker and attach the patches there. Patches posted to the mailing list have a nasty tendency to fall through the cracks and disappear; it's not really the right place for posting/reviewing/updating large patches. This work is useful and it would be a shame for that to happen. Putting it on the bug tracker also provides a fixed point of reference, at which we can point other interested users/devs. Use this page https://bugs.kde.org/enter_valgrind_bug.cgi to create the bug report. A couple of other things: You mentioned > would probably do things a little bit differently > if I were to start over, Could you outline (on the bug report) how you would do things differently? Also .. rebasing the patches against the svn trunk rather than against 3.5.0 would be a good thing. J |
|
From: Bart V. A. <bva...@ac...> - 2010-07-30 06:37:26
|
On Fri, Jul 30, 2010 at 12:52 AM, John Mehaffey <me...@ge...> wrote:
> jmehaffe-lnx-1:/ws/jmehaffe/main_cge5/cles_moved_aside/vg/rpm/SOURCES
>> cat valgrind-3.5.0_cross_compile.patch
> --- valgrind-3.5.0/configure.in.orig Wed Aug 19 06:37:48 2009
> +++ valgrind-3.5.0/configure.in Thu Jul 1 15:01:20 2010
> @@ -1472,9 +1472,10 @@ fi
> #----------------------------------------------------------------------------
> # Check for /proc filesystem
> #----------------------------------------------------------------------------
> -AC_CHECK_FILES(/proc/self/fd /proc/self/exe /proc/self/maps,
> - [ AC_DEFINE([HAVE_PROC], 1, [can use /proc filesystem]) ],
> - [])
> +# jfm AC_CHECK_FILES(/proc/self/fd /proc/self/exe /proc/self/maps,
> +# jfm [ AC_DEFINE([HAVE_PROC], 1, [can use /proc filesystem]) ],
> +# jfm [])
> +AC_DEFINE([HAVE_PROC], 1, [can use /proc filesystem])
It would be more elegant to keep the first test if [ $cross_compiling
= "no" ] and to fall back to the second test only if [
$cross_compiling = "yes" ]. The variable $cross_compiling is set by
configure.
> +/* Hack because glibc is not included, but the math lib libgcc calls
> it - jfm */
> +
> +void abort(void)
> +{
> + vg_assert(0);
> +}
> +
Against which Valgrind revision have you developed your patch ? An
abort() function has been added to coregrind/m_main.c in r11172 on
June 13, 2010.
Bart.
|
|
From: Rich C. <rc...@wi...> - 2010-07-30 04:32:42
|
Nightly build on macbook ( Darwin 9.8.0 i386 ) Started at 2010-07-29 23:05:00 CDT Ended at 2010-07-29 23:17:22 CDT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... failed Last 20 lines of verbose log follow echo Making check in . make addressable atomic_incs badaddrvalue badfree badjump badjump2 badloop badpoll badrw brk2 buflen_check calloc-overflow clientperm custom_alloc custom-overlap deep_templates describe-block doublefree error_counts errs1 exitprog execve execve2 erringfds file_locking fprw fwrite inits inline leak-0 leak-cases leak-cycle leak-pool leak-tree linux-syslog-syscall linux-syscalls-2007 long_namespace_xml long-supps mallinfo malloc_free_fill malloc_usable malloc1 malloc2 malloc3 manuel1 manuel2 manuel3 match-overrun memalign_test memalign2 memcmptest mempool mmaptest mismatches new_override metadata nanoleak_supp nanoleak2 new_nothrow noisy_child null_socket origin1-yes origin2-not-quite origin3-no origin4-many origin5-bz2 origin6-fp overlap partiallydefinedeq partial_load pdb-realloc pdb-realloc2 pipe pointer-trace post-syscall realloc1 realloc2 realloc3 sh-mem sh-mem-random sigaltstack signal2 sigprocmask sigkill strchr str_tester supp_unknown supp1 supp2 suppfree trivialleak un it_libcbase unit_oset varinfo1 varinfo2 varinfo3 varinfo4 varinfo5 varinfo5so.so varinfo6 vcpu_fbench vcpu_fnfns xml1 wrap1 wrap2 wrap3 wrap4 wrap5 wrap6 wrap7 wrap7so.so wrap8 writev gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../coregrind -I../../include -I../../VEX/pub -DVGA_amd64=1 -DVGO_darwin=1 -DVGP_amd64_darwin=1 -Winline -Wall -Wshadow -g -arch x86_64 -Wno-long-long -Wno-pointer-sign -fno-stack-protector -MT addressable.o -MD -MP -MF .deps/addressable.Tpo -c -o addressable.o addressable.c mv -f .deps/addressable.Tpo .deps/addressable.Po gcc -Winline -Wall -Wshadow -g -arch x86_64 -Wno-long-long -Wno-pointer-sign -fno-stack-protector -o addressable addressable.o gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../coregrind -I../../include -I../../VEX/pub -DVGA_amd64=1 -DVGO_darwin=1 -DVGP_amd64_darwin=1 -Winline -Wall -Wshadow -g -arch x86_64 -mdynamic-no-pic -Wno-long-long -Wno-pointer-sign -fno-stack-protector -MT atomic_incs-atomic_incs.o -MD -MP -MF .deps/atomic_incs-atomic_incs.Tpo -c -o atomic_incs-atomic_incs.o `test -f 'atomic_incs.c' || echo './'`atomic_incs.c atomic_incs.c: In function 'atomic_add_8bit': atomic_incs.c:37: error: PIC register 'rbx' clobbered in 'asm' atomic_incs.c: In function 'atomic_add_16bit': atomic_incs.c:101: error: PIC register 'rbx' clobbered in 'asm' atomic_incs.c: In function 'atomic_add_32bit': atomic_incs.c:164: error: PIC register 'rbx' clobbered in 'asm' atomic_incs.c: In function 'atomic_add_64bit': atomic_incs.c:219: error: PIC register 'rbx' clobbered in 'asm' make[5]: *** [atomic_incs-atomic_incs.o] Error 1 make[4]: *** [check-am] Error 2 make[3]: *** [check-recursive] Error 1 make[2]: *** [check-recursive] Error 1 make[1]: *** [check-recursive] Error 1 make: *** [check] Error 2 Congratulations, all tests passed! |
|
From: Tom H. <th...@cy...> - 2010-07-30 03:48:12
|
Nightly build on mg ( x86_64, Fedora 9 ) Started at 2010-07-30 03:10:16 BST Ended at 2010-07-30 03:38:08 BST Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 553 tests, 3 stderr failures, 3 stdout failures, 0 post failures == memcheck/tests/x86-linux/scalar (stderr) none/tests/amd64/bug132918 (stdout) none/tests/amd64/fxtract (stdout) none/tests/x86/fxtract (stdout) helgrind/tests/tc06_two_races_xml (stderr) helgrind/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 == 553 tests, 2 stderr failures, 0 stdout failures, 0 post failures == memcheck/tests/x86-linux/scalar (stderr) helgrind/tests/tc06_two_races_xml (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Fri Jul 30 03:24:38 2010 --- new.short Fri Jul 30 03:38:08 2010 *************** *** 8,12 **** ! == 553 tests, 2 stderr failures, 0 stdout failures, 0 post failures == memcheck/tests/x86-linux/scalar (stderr) helgrind/tests/tc06_two_races_xml (stderr) --- 8,16 ---- ! == 553 tests, 3 stderr failures, 3 stdout failures, 0 post failures == memcheck/tests/x86-linux/scalar (stderr) + none/tests/amd64/bug132918 (stdout) + none/tests/amd64/fxtract (stdout) + none/tests/x86/fxtract (stdout) helgrind/tests/tc06_two_races_xml (stderr) + helgrind/tests/tc09_bad_unlock (stderr) |
|
From: Tom H. <th...@cy...> - 2010-07-30 02:51:14
|
Nightly build on lloyd ( x86_64, Fedora 7 ) Started at 2010-07-30 03:05:09 BST Ended at 2010-07-30 03:50:55 BST Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 546 tests, 3 stderr failures, 3 stdout failures, 0 post failures == memcheck/tests/x86-linux/scalar (stderr) none/tests/amd64/bug132918 (stdout) none/tests/amd64/fxtract (stdout) none/tests/x86/fxtract (stdout) helgrind/tests/tc06_two_races_xml (stderr) helgrind/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 == 546 tests, 2 stderr failures, 0 stdout failures, 0 post failures == memcheck/tests/x86-linux/scalar (stderr) helgrind/tests/tc06_two_races_xml (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Fri Jul 30 03:28:23 2010 --- new.short Fri Jul 30 03:50:55 2010 *************** *** 8,12 **** ! == 546 tests, 2 stderr failures, 0 stdout failures, 0 post failures == memcheck/tests/x86-linux/scalar (stderr) helgrind/tests/tc06_two_races_xml (stderr) --- 8,16 ---- ! == 546 tests, 3 stderr failures, 3 stdout failures, 0 post failures == memcheck/tests/x86-linux/scalar (stderr) + none/tests/amd64/bug132918 (stdout) + none/tests/amd64/fxtract (stdout) + none/tests/x86/fxtract (stdout) helgrind/tests/tc06_two_races_xml (stderr) + helgrind/tests/tc09_bad_unlock (stderr) |