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
(32) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
1
(32) |
2
(22) |
3
(47) |
4
(29) |
5
(18) |
6
(16) |
|
7
(21) |
8
(29) |
9
(23) |
10
(68) |
11
(20) |
12
(17) |
13
(17) |
|
14
(27) |
15
(26) |
16
(21) |
17
(13) |
18
(19) |
19
(29) |
20
(13) |
|
21
(9) |
22
(8) |
23
(29) |
24
(56) |
25
(21) |
26
(46) |
27
(33) |
|
28
(25) |
29
(41) |
30
(35) |
31
(28) |
|
|
|
|
From: Tom H. <th...@cy...> - 2005-08-08 02:15:52
|
Nightly build on aston ( x86_64, Fedora Core 3 ) started at 2005-08-08 03:05:09 BST Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 159 tests, 6 stderr failures, 0 stdout failures ================= memcheck/tests/sigprocmask (stderr) memcheck/tests/strchr (stderr) memcheck/tests/vgtest_ume (stderr) memcheck/tests/weirdioctl (stderr) memcheck/tests/xml1 (stderr) none/tests/faultstatus (stderr) |
|
From: <sv...@va...> - 2005-08-08 00:53:48
|
Author: sewardj
Date: 2005-08-08 01:53:45 +0100 (Mon, 08 Aug 2005)
New Revision: 4340
Log:
Update summary.
Modified:
trunk/3_0_BUGSTATUS.txt
Modified: trunk/3_0_BUGSTATUS.txt
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/3_0_BUGSTATUS.txt 2005-08-08 00:35:46 UTC (rev 4339)
+++ trunk/3_0_BUGSTATUS.txt 2005-08-08 00:53:45 UTC (rev 4340)
@@ -43,7 +43,7 @@
=20
110204 fmemopen false +ve no
=20
-110205 sigcancel unwind fails yes
+110205 sigcancel unwind fails yes Tom considering?
=20
110207 mpn accuracy can't be easily fixed; + not conv=
inced it's a
big problem
@@ -54,5 +54,8 @@
=20
110240 x86 FP differences really is the same as 110207
=20
-110274 SSE1 now mandatory for x86 will fix if more complaints appea=
r
+110274 SSE1 now mandatory for x86 yes fixed(1321/4339) =
TODO:merge
=20
+110301 amd64 hangs at startup yes, but have to wait for 3.1. T=
his is the
+ same as previously reported amd64=
-Gentoo
+ hang (long delay, really).
|
|
From: <sv...@va...> - 2005-08-08 00:35:50
|
Author: sewardj
Date: 2005-08-08 01:35:46 +0100 (Mon, 08 Aug 2005)
New Revision: 4339
Log:
Make Valgrind work again on x86 CPUs which don't have SSE. This is a
bit of an ugly hack (see comments in m_machine.c) which is suitable
for merging into 3_0_BRANCH, but should be cleaned up once that's
done.
Modified:
trunk/coregrind/m_dispatch/dispatch-x86.S
trunk/coregrind/m_machine.c
trunk/coregrind/m_translate.c
trunk/coregrind/pub_core_machine.h
Modified: trunk/coregrind/m_dispatch/dispatch-x86.S
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_dispatch/dispatch-x86.S 2005-08-07 15:16:59 UTC (re=
v 4338)
+++ trunk/coregrind/m_dispatch/dispatch-x86.S 2005-08-08 00:35:46 UTC (re=
v 4339)
@@ -71,10 +71,12 @@
=09
/* set host SSE control word to the default mode expected=20
by VEX-generated code. */
+ cmpl $0, VG_(have_mxcsr_x86)
+ jz L1
pushl $0x1F80
ldmxcsr (%esp)
addl $4, %esp
-
+L1:
/* set dir flag to known value */
cld
=09
@@ -136,13 +138,15 @@
cmpl $0x027F, (%esp)
popl %esi /* get rid of the word without trashing %eflags */
jnz invariant_violation
+ cmpl $0, VG_(have_mxcsr_x86)
+ jz L2
pushl $0
stmxcsr (%esp)
andl $0xFFFFFFC0, (%esp) /* mask out status flags */
cmpl $0x1F80, (%esp)
popl %esi
jnz invariant_violation
- /* otherwise we're OK */
+L2: /* otherwise we're OK */
jmp run_innerloop_exit_REALLY
=20
invariant_violation:
Modified: trunk/coregrind/m_machine.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_machine.c 2005-08-07 15:16:59 UTC (rev 4338)
+++ trunk/coregrind/m_machine.c 2005-08-08 00:35:46 UTC (rev 4339)
@@ -196,16 +196,36 @@
return VG_INVALID_THREADID;
}
=20
+
//////////////////////////////////////////////////////////////////
// Architecture specifics
=20
-// PPC: what is the cache line size (for dcbz etc) ?
-// This info is harvested on Linux at startup from the AT_SYSINFO
-// entries. 0 means not-yet-set.
+// PPC: what is the cache line size (for dcbz etc) ? This info is
+// harvested on Linux at startup from the AT_SYSINFO entries. 0 means
+// not-yet-set.
#if defined(VGA_ppc32)
Int VG_(cache_line_size_ppc32) =3D 0;
#endif
=20
+// X86: set to 1 if the host is able to do {ld,st}mxcsr (load/store
+// the SSE control/status register. For most modern CPUs this will be
+// 1. It is set to 1, if possible, by m_translate.getArchAndArchInfo.
+// The value is read by m_dispatch.dispatch-x86.S, which is why it
+// is an Int rather than a Bool.
+//
+// Ugly hack: this has to start as 0 and be set to 1 in the normal
+// case, rather than the other way round, because the dispatch
+// loop needs it, and it runs before the first translation is=20
+// made. Yet it is the act of making that first translation which
+// causes getArchAndArchInfo to set this value to its final value.
+// So it is necessary to start this value off at 0 as only that
+// guarantees that the dispatch loop will not SIGILL on its first
+// attempt.
+#if defined(VGA_x86)
+Int VG_(have_mxcsr_x86) =3D 0;
+#endif
+
+
/*--------------------------------------------------------------------*/
/*--- end ---*/
/*--------------------------------------------------------------------*/
Modified: trunk/coregrind/m_translate.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_translate.c 2005-08-07 15:16:59 UTC (rev 4338)
+++ trunk/coregrind/m_translate.c 2005-08-08 00:35:46 UTC (rev 4339)
@@ -35,6 +35,7 @@
#include "pub_core_cpuid.h"
#include "pub_core_machine.h" // For VG_(cache_line_size_ppc32)
// and VG_(get_SP)
+ // and VG_(have_mxcsr_x86)
#include "pub_core_libcbase.h"
#include "pub_core_libcassert.h"
#include "pub_core_libcprint.h"
@@ -53,7 +54,7 @@
/*------------------------------------------------------------*/
=20
// Returns the architecture and auxiliary information, or indicates
-// that this subarchitecture is unable to run Valgrind Returns False
+// that this subarchitecture is unable to run Valgrind. Returns False
// to indicate we cannot proceed further.
=20
static Bool getArchAndArchInfo( /*OUT*/VexArch* vex_arch,=20
@@ -64,7 +65,7 @@
LibVEX_default_VexArchInfo(vai);
=20
#if defined(VGA_x86)
- Bool have_sse0, have_sse1, have_sse2;
+ Bool have_sse1, have_sse2;
UInt eax, ebx, ecx, edx;
=20
if (!VG_(has_cpuid)())
@@ -79,31 +80,30 @@
/* get capabilities bits into edx */
VG_(cpuid)(1, &eax, &ebx, &ecx, &edx);
=20
- have_sse0 =3D (edx & (1<<24)) !=3D 0; /* True =3D> have fxsave/fxrsto=
r */
have_sse1 =3D (edx & (1<<25)) !=3D 0; /* True =3D> have sse insns */
have_sse2 =3D (edx & (1<<26)) !=3D 0; /* True =3D> have sse2 insns */
=20
- if (have_sse2 && have_sse1 && have_sse0) {
+ VG_(have_mxcsr_x86) =3D 1;
+
+ if (have_sse2 && have_sse1) {
*vex_arch =3D VexArchX86;
vai->subarch =3D VexSubArchX86_sse2;
return True;
}
=20
- if (have_sse1 && have_sse0) {
+ if (have_sse1) {
*vex_arch =3D VexArchX86;
vai->subarch =3D VexSubArchX86_sse1;
return True;
}
=20
- if (have_sse0) {
+ {
*vex_arch =3D VexArchX86;
vai->subarch =3D VexSubArchX86_sse0;
+ VG_(have_mxcsr_x86) =3D 0;
return True;
}
=20
- /* we need at least SSE state to operate. */
- return False;
-
#elif defined(VGA_amd64)
vg_assert(VG_(has_cpuid)());
*vex_arch =3D VexArchAMD64;
@@ -459,7 +459,7 @@
VG_(printf)("\n");
VG_(printf)("valgrind: fatal error: unsupported CPU.\n");
VG_(printf)(" Supported CPUs are:\n");
- VG_(printf)(" * x86 with SSE (Pentium III or above, "
+ VG_(printf)(" * x86 (practically any; Pentium-I or above), "
"AMD Athlon or above)\n");
VG_(printf)(" * AMD Athlon64/Opteron\n");
VG_(printf)(" * PowerPC with Altivec\n");
Modified: trunk/coregrind/pub_core_machine.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/pub_core_machine.h 2005-08-07 15:16:59 UTC (rev 4338)
+++ trunk/coregrind/pub_core_machine.h 2005-08-08 00:35:46 UTC (rev 4339)
@@ -71,9 +71,11 @@
# error Unknown arch
#endif
=20
+
// Offsets for the Vex state
#define VG_O_STACK_PTR (offsetof(VexGuestArchState, VG_STACK_PTR)=
)
=20
+
// Architecture specifics
=20
// PPC: what is the cache line size (for dcbz etc) ?
@@ -83,6 +85,13 @@
extern Int VG_(cache_line_size_ppc32);
#endif
=20
+// X86: set to 1 if the host is able to do {ld,st}mxcsr (load/store
+// the SSE control/status register.=20
+#if defined(VGA_x86)
+extern Int VG_(have_mxcsr_x86);
+#endif
+
+
#endif // __PUB_CORE_MACHINE_H
=20
/*--------------------------------------------------------------------*/
|
|
From: <sv...@va...> - 2005-08-08 00:33:44
|
Author: sewardj
Date: 2005-08-08 01:33:37 +0100 (Mon, 08 Aug 2005)
New Revision: 1321
Log:
Don't emit cmovl since older x86s don't support it; instead emit a
conditional jump over an unconditional move.
Modified:
trunk/priv/host-x86/hdefs.c
trunk/pub/libvex.h
Modified: trunk/priv/host-x86/hdefs.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/priv/host-x86/hdefs.c 2005-08-07 14:48:03 UTC (rev 1320)
+++ trunk/priv/host-x86/hdefs.c 2005-08-08 00:33:37 UTC (rev 1321)
@@ -2204,7 +2204,9 @@
=20
case Xin_CMov32:
vassert(i->Xin.CMov32.cond !=3D Xcc_ALWAYS);
+
/* This generates cmov, which is illegal on P54/P55. */
+ /*
*p++ =3D 0x0F;
*p++ =3D toUChar(0x40 + (0xF & i->Xin.CMov32.cond));
if (i->Xin.CMov32.src->tag =3D=3D Xrm_Reg) {
@@ -2215,6 +2217,37 @@
p =3D doAMode_M(p, i->Xin.CMov32.dst, i->Xin.CMov32.src->Xrm.Me=
m.am);
goto done;
}
+ */
+
+ /* Alternative version which works on any x86 variant. */
+ /* jmp fwds if !condition */
+ *p++ =3D 0x70 + (i->Xin.CMov32.cond ^ 1);
+ *p++ =3D 0; /* # of bytes in the next bit, which we don't know yet=
*/
+ ptmp =3D p;
+
+ switch (i->Xin.CMov32.src->tag) {
+ case Xrm_Reg:
+ /* Big sigh. This is movl E -> G ... */
+ *p++ =3D 0x89;
+ p =3D doAMode_R(p, i->Xin.CMov32.src->Xrm.Reg.reg,
+ i->Xin.CMov32.dst);
+
+ break;
+ case Xrm_Mem:
+ /* ... whereas this is movl G -> E. That's why the args
+ to doAMode_R appear to be the wrong way round in the
+ Xrm_Reg case. */
+ *p++ =3D 0x8B;
+ p =3D doAMode_M(p, i->Xin.CMov32.dst,
+ i->Xin.CMov32.src->Xrm.Mem.am);
+ break;
+ default:
+ goto bad;
+ }
+ /* Fill in the jump offset. */
+ *(ptmp-1) =3D p - ptmp;
+ goto done;
+
break;
=20
case Xin_LoadEX:
Modified: trunk/pub/libvex.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/pub/libvex.h 2005-08-07 14:48:03 UTC (rev 1320)
+++ trunk/pub/libvex.h 2005-08-08 00:33:37 UTC (rev 1321)
@@ -74,7 +74,7 @@
enum {
VexSubArch_INVALID,
VexSubArch_NONE, /* Arch has no variants */
- VexSubArchX86_sse0, /* has SSE state but no insns (Pentium II)=
*/
+ VexSubArchX86_sse0, /* no SSE state; or SSE state but no insns=
*/
VexSubArchX86_sse1, /* SSE1 support (Pentium III) */
VexSubArchX86_sse2, /* SSE2 support (Pentium 4) */
VexSubArchARM_v4, /* ARM version 4 */
|