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
(33) |
2
(15) |
3
(20) |
4
(22) |
5
(13) |
|
6
(12) |
7
(32) |
8
(17) |
9
(31) |
10
(21) |
11
(7) |
12
(13) |
|
13
(13) |
14
(12) |
15
(10) |
16
(8) |
17
(7) |
18
(28) |
19
(5) |
|
20
(5) |
21
(7) |
22
(11) |
23
(7) |
24
(13) |
25
(7) |
26
(7) |
|
27
(7) |
28
(15) |
29
(30) |
30
(21) |
31
(6) |
|
|
|
From: <sv...@va...> - 2008-07-05 16:22:36
|
Author: bart
Date: 2008-07-05 17:22:36 +0100 (Sat, 05 Jul 2008)
New Revision: 8366
Log:
Added -Wformat-nonliteral.
Modified:
trunk/drd/Makefile.am
trunk/drd/drd_main.c
Modified: trunk/drd/Makefile.am
===================================================================
--- trunk/drd/Makefile.am 2008-07-05 14:25:09 UTC (rev 8365)
+++ trunk/drd/Makefile.am 2008-07-05 16:22:36 UTC (rev 8366)
@@ -28,7 +28,7 @@
endif
DRD_CFLAGS=@FLAG_W_EXTRA@ @FLAG_UNLIMITED_INLINE_UNIT_GROWTH@ \
- -Wno-inline -Wno-unused-parameter \
+ -Wformat-nonliteral -Wno-inline -Wno-unused-parameter \
-O2 -DCHECK_FORMAT_STRINGS
AM_CFLAGS_X86_LINUX += $(DRD_CFLAGS)
Modified: trunk/drd/drd_main.c
===================================================================
--- trunk/drd/drd_main.c 2008-07-05 14:25:09 UTC (rev 8365)
+++ trunk/drd/drd_main.c 2008-07-05 16:22:36 UTC (rev 8366)
@@ -666,7 +666,7 @@
vc_snprint(msg + VG_(strlen)(msg), msg_size - VG_(strlen)(msg),
thread_get_vc(drd_joiner));
}
- VG_(message)(Vg_DebugMsg, msg);
+ VG_(message)(Vg_DebugMsg, "%s", msg);
VG_(free)(msg);
}
|
|
From: Bart V. A. <bar...@gm...> - 2008-07-05 15:49:56
|
Hello, As you know there is a branch in the Valgrind repository called FORMATCHECK (svn://svn.valgrind.org/valgrind/branches/FORMATCHECK). The changes on this branch enable gcc's format string checking for VG_(*printf)() and VG_(message)(). This branch was created by Dirk, and recently I merged the trunk to the FORMATCHECK branch. Please review the changes on this branch such that it can be decided whether or not these can be merged back to the trunk. An overview of the changes present on the branch: - __attribute__((format, ...)) has been added to the declarations of VG_(*printf)() and VG_(message)(). - A copy of VG_(message)() has been added that does not perform format checking, namely VG_(message_no_f_c)(). - Made %' a synonym of %, (insert thousands separator). - Add support for multiple flags past %. - Add support for %#. - Fixed the mismatches between format specification and argument list. Where possible the format specification has been changed instead of casting the format argument. E.g. occurrences of "... %p ...", addr have been replaced by "... %#lx ...", addr. It has been verified that "make -s regtest" produces the same result on the FORMATCHECK branch as on the trunk for the following platform and compiler combinations: * x86 and gcc 3.0.4 * amd64 and gcc 4.3.1 * powerpc and gcc 4.2.1 Regarding the source code changes, the file produced by the following command has been attached to this e-mail: $ svn diff svn://svn.valgrind.org/valgrind/trunk@8337 svn://svn.valgrind.org/valgrind/branches/FORMATCHECK | bzip2 -9 >formatcheck,patch.bz2 The list of modified files is as follows: $ bzip2 -cd formatcheck.patch.bz2 | grep '^Index' | cut -f2 -d' ' | sort cachegrind/cg_main.c callgrind/bb.c callgrind/bbcc.c callgrind/callstack.c callgrind/context.c callgrind/debug.c callgrind/dump.c callgrind/fn.c callgrind/main.c callgrind/sim.c coregrind/m_debuginfo/d3basics.c coregrind/m_debuginfo/debuginfo.c coregrind/m_debuginfo/readdwarf3.c coregrind/m_debuginfo/readdwarf.c coregrind/m_debuginfo/readelf.c coregrind/m_debuginfo/storage.c coregrind/m_debuginfo/tytypes.c coregrind/m_debuglog.c coregrind/m_errormgr.c coregrind/m_execontext.c coregrind/m_initimg/initimg-linux.c coregrind/m_libcprint.c coregrind/m_main.c coregrind/m_mallocfree.c coregrind/m_scheduler/scheduler.c coregrind/m_sigframe/sigframe-amd64-linux.c coregrind/m_sigframe/sigframe-ppc32-linux.c coregrind/m_sigframe/sigframe-ppc64-linux.c coregrind/m_sigframe/sigframe-x86-linux.c coregrind/m_signals.c coregrind/m_stacks.c coregrind/m_stacktrace.c coregrind/m_syswrap/syswrap-amd64-linux.c coregrind/m_syswrap/syswrap-generic.c coregrind/m_syswrap/syswrap-linux.c coregrind/m_syswrap/syswrap-main.c coregrind/m_syswrap/syswrap-ppc32-linux.c coregrind/m_syswrap/syswrap-ppc64-linux.c coregrind/m_syswrap/syswrap-x86-linux.c coregrind/m_translate.c coregrind/m_transtab.c exp-drd/Makefile.am exp-omega/o_main.c helgrind/hg_main.c helgrind/hg_wordset.c include/pub_tool_libcprint.h lackey/lk_main.c memcheck/mc_errors.c memcheck/mc_leakcheck.c memcheck/mc_main.c memcheck/mc_malloc_wrappers.c Bart. |
|
From: <sv...@va...> - 2008-07-05 14:25:05
|
Author: bart Date: 2008-07-05 15:25:09 +0100 (Sat, 05 Jul 2008) New Revision: 8365 Log: Added hints and tips section. Modified: trunk/drd/docs/drd-manual.xml Modified: trunk/drd/docs/drd-manual.xml =================================================================== --- trunk/drd/docs/drd-manual.xml 2008-07-05 08:31:33 UTC (rev 8364) +++ trunk/drd/docs/drd-manual.xml 2008-07-05 14:25:09 UTC (rev 8365) @@ -1157,7 +1157,7 @@ </sect2> -<sect2 id="drd-manual.resource requirements" xreflabel="Resource Requirements"> +<sect2 id="drd-manual.resource-requirements" xreflabel="Resource Requirements"> <title>Resource Requirements</title> <para> @@ -1195,6 +1195,75 @@ </sect2> +<sect2 id="drd-manual.effective-use" xreflabel="Effective Use"> +<title>Hints and Tips for Effective Use of DRD</title> + +<para> +The following information may be helpful when using DRD: +<itemizedlist> + <listitem> + <para> + Make sure that debug information is present in the executable + being analysed, such that DRD can print function name and line + number information in stack traces. Most compilers can be told + to include debug information via compiler option + <option>-g</option>. + </para> + </listitem> + <listitem> + <para> + Compile with flag <option>-O1</option> instead of + <option>-O0</option>. This will reduce the amount of generated + code, may reduce the amount of debug info and will speed up + DRD's processing of the client program. For more information, + see also <xref linkend="manual-core.started"/>. + </para> + </listitem> + <listitem> + <para> + If DRD reports any errors on libraries that are part of your + Linux distribution like e.g. <literal>libc.so</literal> or + <literal>libstdc++.so</literal>, installing the debug packages + for these libraries will make the output of DRD a lot more + detailed. + </para> + </listitem> + <listitem> + <para> + When using C++, do not send output from more than one thread to + <literal>std::cout</literal>. Doing so would not only + generate multiple data race reports, it could also result in + output from several threads getting mixed up. Either use + <function>printf()</function> or do the following: + <orderedlist> + <listitem> + <para>Derive a class from <literal>std::ostreambuf</literal> + and let that class send output line by line to + <literal>stdout</literal>. This will avoid that individual + lines of text produced by different threads get mixed + up.</para> + </listitem> + <listitem> + <para>Create one instance of <literal>std::ostream</literal> + for each thread. This makes stream formatting settings + thread-local. Pass a per-thread instance of the class + derived from <literal>std::ostreambuf</literal> to the + constructor of each instance. </para> + </listitem> + <listitem> + <para>Let each thread send its output to its own instance of + <literal>std::ostream</literal> instead of + <literal>std::cout</literal>.</para> + </listitem> + </orderedlist> + </para> + </listitem> +</itemizedlist> +</para> + +</sect2> + + </sect1> |
|
From: Bart V. A. <bar...@gm...> - 2008-07-05 12:36:01
|
On Sat, Jul 5, 2008 at 12:16 PM, Julian Seward <js...@ac...> wrote: > On Saturday 05 July 2008 11:09, Bart Van Assche wrote: >> When I compile the trunk with gcc 3.0.4 apparently Valgrind does not >> generate a description for global nor for stack variables. Should I >> file a bug report or do we drop gcc 3.0.4 support ? > > Neither. It's not critical that it fails to read 3.0.4's DIEs, so > I don't want to disallow 3.0.4 on those grounds. It would be a > problem if it failed to read DIEs generated by more recent gccs (eg 3.4 > and later), but that doesn't seem to be a problem. Maybe it's a good idea to document this as a known limitation, such that we can refer to the manual in case anyone logs this as a bug ? Bart. |
|
From: Julian S. <js...@ac...> - 2008-07-05 10:40:22
|
Tom,
I noticed just now that PIEs are being loaded at address zero.
While this is not a problem per se (memcheck, at least, still
works), it's kinda uncool from a robustness perspective, and
causes problems with Annelid/Ptrcheck, which really wants to
assume that any number smaller than about a million isn't a
valid pointer.
It seems to be caused by this logic in m_ume.c:
4164 tom /* The kernel maps position-independent executables at
TASK_SIZE*2/3;
4164 tom duplicate this behavior as close as we can. */
4164 tom if (e->e.e_type == ET_DYN && ebase == 0) {
4164 tom ebase = VG_PGROUNDDN(info->exe_base + (info->exe_end -
info->exe_base) * 2 / 3);
4164 tom }
which seems reasonable; problem is info->exe_base and info->exe_end are
both zero, having been bogusly set in initimg-linux.c thusly
info->exe_base = VG_(client_base);
info->exe_end = VG_(client_end);
and VG_(client_base) / VG_(client_end) always have the value zero. (!)
So there's some nonsense logic there.
Anyway, the reference to TASK_SIZE, can you clarify it? Does it mean
that the kernel will map PIEs at 2/3 of the way along the entire address
space of the process, left to itself? eg, at the 2.0G point if the
kernel is doing the usual x86 3G/1G layout?
Ta,
J
|
|
From: Julian S. <js...@ac...> - 2008-07-05 10:24:35
|
On Saturday 05 July 2008 11:09, Bart Van Assche wrote: > Hello Julian, > > When I compile the trunk with gcc 3.0.4 apparently Valgrind does not > generate a description for global nor for stack variables. Should I > file a bug report or do we drop gcc 3.0.4 support ? Neither. It's not critical that it fails to read 3.0.4's DIEs, so I don't want to disallow 3.0.4 on those grounds. It would be a problem if it failed to read DIEs generated by more recent gccs (eg 3.4 and later), but that doesn't seem to be a problem. J |
|
From: Bart V. A. <bar...@gm...> - 2008-07-05 09:09:45
|
Hello Julian, When I compile the trunk with gcc 3.0.4 apparently Valgrind does not generate a description for global nor for stack variables. Should I file a bug report or do we drop gcc 3.0.4 support ? $ uname -a Linux localhost.localdomain 2.4.21-57.EL #1 Wed May 7 06:19:47 EDT 2008 i686 i686 i386 GNU/Linux $ grep '@CC@' config.status s,@CC@,|#_!!_#|/home/bart/gcc-3.0.4/bin/gcc,g $ /home/bart/gcc-3.0.4/bin/gcc -v 2>&1 | tail -n 1 gcc version 3.0.4 $ perl tests/vg_regtest helgrind/tests/hg03_inherit hg03_inherit: valgrind ./hg03_inherit *** hg03_inherit failed (stderr) *** == 1 test, 1 stderr failure, 0 stdout failures, 0 post failures == helgrind/tests/hg03_inherit (stderr) $ cat helgrind/tests/hg03_inherit.stderr.diff-glibc25-x86 6c6,7 < by 0x........: pthread_create@GLIBC_ (in /lib/libpthread...) --- > by 0x........: ... > by 0x........: pthread_create@GLIBC_ (in /lib/tls/libpthread...) 19,20d19 < Location 0x........ is 0 bytes inside shared[1], < declared at hg03_inherit.c:11, in frame #0 of thread 3 Bart. |
|
From: Bart V. A. <bar...@gm...> - 2008-07-05 08:37:01
|
On Fri, Jul 4, 2008 at 4:55 PM, Julian Seward <js...@ac...> wrote: > If we can support 3.0 and 3.1 without difficulty, I don't see why > we shouldn't. I've been trying to build 3.0.4 and then build > FORMATCHECK with it, but so far failed for unrelated issues. I'll > keep trying over the weekend. I have tried to build gcc 3.0.4 myself, and noted that the gcc 3.0.4 source code uses lvalue casts. These have been deprecated in gcc 3.4 and have been removed in gcc 4.0. See also http://gcc.gnu.org/gcc-3.4/changes.html. Bart. |
|
From: <sv...@va...> - 2008-07-05 08:31:49
|
Author: sewardj
Date: 2008-07-05 09:31:33 +0100 (Sat, 05 Jul 2008)
New Revision: 8364
Log:
* fix incorrect initialisation in primap_L1
* request Dwarf3 var info reading, and use this in error messages
* fix a number of missing register and syscall cases on amd64-linux
Modified:
branches/PTRCHECK/exp-ptrcheck/pc_main.c
Modified: branches/PTRCHECK/exp-ptrcheck/pc_main.c
===================================================================
--- branches/PTRCHECK/exp-ptrcheck/pc_main.c 2008-07-04 21:18:05 UTC (rev 8363)
+++ branches/PTRCHECK/exp-ptrcheck/pc_main.c 2008-07-05 08:31:33 UTC (rev 8364)
@@ -448,7 +448,7 @@
#define PRIMAP_L1_INSERT_IX 12
static struct {
- Addr base;
+ Addr base; // must be 64k aligned
PriMapEnt* ent; // pointer to the matching primap_L2 node
}
primap_L1[N_PRIMAP_L1];
@@ -473,7 +473,8 @@
distinguished_secondary_map.vseg[i] = UNKNOWN;
for (i = 0; i < N_PRIMAP_L1; i++) {
- primap_L1[i].base = 0;
+ primap_L1[i].base = 1; /* not 64k aligned, so doesn't match any
+ request ==> slot is empty */
primap_L1[i].ent = NULL;
}
@@ -570,7 +571,7 @@
for (i = 0; i < SEC_MAP_WORDS; i++)
map->vseg[i] = UNKNOWN;
-
+ if (0) VG_(printf)("XXX new secmap %p\n", map);
return map;
}
@@ -662,6 +663,10 @@
UInt size;
Seg vseg;
Bool is_write;
+ Char descr1[96];
+ Char descr2[96];
+ Char datasym[96];
+ OffT datasymoff;
}
LoadStoreExtra;
@@ -691,6 +696,8 @@
LoadStoreExtra extra = {
.a = a, .size = size, .vseg = vseg, .is_write = is_write
};
+ extra.descr1[0] = extra.descr2[0] = extra.datasym[0] = 0;
+ extra.datasymoff = 0;
VG_(maybe_record_error)( VG_(get_running_tid)(), LoadStoreErr,
/*a*/0, /*str*/NULL, /*extra*/(void*)&extra);
}
@@ -805,6 +812,15 @@
legit, Seg__size(vseg), Seg__status_str(vseg) );
VG_(pp_ExeContext)(Seg__where(vseg));
}
+ if (extra->descr1[0] != 0)
+ VG_(message)(Vg_UserMsg, " %s", extra->descr1);
+ if (extra->descr2[0] != 0)
+ VG_(message)(Vg_UserMsg, " %s", extra->descr2);
+ if (extra->datasym[0] != 0)
+ VG_(message)(Vg_UserMsg, " Address 0x%llx is %llu bytes "
+ "inside data symbol \"%t\"",
+ (ULong)extra->a, (ULong)extra->datasymoff,
+ extra->datasym);
break;
}
@@ -913,10 +929,35 @@
static UInt update_Error_extra ( Error* err )
{
switch (VG_(get_error_kind)(err)) {
- case LoadStoreErr: return sizeof(LoadStoreExtra);
- case ArithErr: return 0;
- case SysParamErr: return sizeof(SysParamExtra);
- default: VG_(tool_panic)("update_extra");
+ case LoadStoreErr: {
+ LoadStoreExtra* ex = (LoadStoreExtra*)VG_(get_error_extra)(err);
+ tl_assert(ex);
+ tl_assert(sizeof(ex->descr1) == sizeof(ex->descr2));
+ tl_assert(sizeof(ex->descr1) > 0);
+ tl_assert(sizeof(ex->datasym) > 0);
+ VG_(memset)(&ex->descr1, 0, sizeof(ex->descr1));
+ VG_(memset)(&ex->descr2, 0, sizeof(ex->descr2));
+ VG_(memset)(&ex->datasym, 0, sizeof(ex->datasym));
+ ex->datasymoff = 0;
+ if (VG_(get_data_description)( &ex->descr1[0], &ex->descr2[0],
+ sizeof(ex->descr1)-1, ex->a )) {
+ tl_assert(ex->descr1[sizeof(ex->descr1)-1] == 0);
+ tl_assert(ex->descr1[sizeof(ex->descr2)-1] == 0);
+ }
+ else
+ if (VG_(get_datasym_and_offset)( ex->a, &ex->datasym[0],
+ sizeof(ex->datasym)-1,
+ &ex->datasymoff )) {
+ tl_assert(ex->datasym[sizeof(ex->datasym)-1] == 0);
+ }
+ return sizeof(LoadStoreExtra);
+ }
+ case ArithErr:
+ return 0;
+ case SysParamErr:
+ return sizeof(SysParamExtra);
+ default:
+ VG_(tool_panic)("update_extra");
}
}
@@ -1432,14 +1473,17 @@
if (o == GOF(RAX) && is421) { o -= 0; goto contains_o; }
if (o == GOF(RAX)+1 && is421) { o -= 1; o -= 0; goto contains_o; }
if (o == GOF(RCX) && is421) { o -= 0; goto contains_o; }
+ if (o == GOF(RCX)+1 && is421) { o -= 1; o -= 0; goto contains_o; }
if (o == GOF(RDX) && is421) { o -= 0; goto contains_o; }
if (o == GOF(RDX)+1 && is421) { o -= 1; o -= 0; goto contains_o; }
if (o == GOF(RBX) && is421) { o -= 0; goto contains_o; }
+ if (o == GOF(RBX)+1 && is421) { o -= 1; o -= 0; goto contains_o; }
if (o == GOF(RBP) && is421) { o -= 0; goto contains_o; }
if (o == GOF(RSI) && is421) { o -= 0; goto contains_o; }
if (o == GOF(RDI) && is421) { o -= 0; goto contains_o; }
if (o == GOF(R8) && is421) { o -= 0; goto contains_o; }
if (o == GOF(R9) && is421) { o -= 0; goto contains_o; }
+ if (o == GOF(R10) && is421) { o -= 0; goto contains_o; }
if (o == GOF(R11) && is421) { o -= 0; goto contains_o; }
if (o == GOF(R12) && is421) { o -= 0; goto contains_o; }
if (o == GOF(R13) && is421) { o -= 0; goto contains_o; }
@@ -1448,8 +1492,18 @@
if (o == GOF(FS_ZERO) && is8) goto none;
- if (o == GOF(XMM0) && isXmmF) goto none;
- if (o == GOF(XMM1) && isXmmF) goto none;
+ if (o == GOF(SSEROUND) && is8) goto none;
+ if (o == GOF(XMM0) && isXmmF) goto none;
+ if (o == GOF(XMM1) && isXmmF) goto none;
+ if (o == GOF(XMM2) && isXmmF) goto none;
+ if (o == GOF(XMM3) && isXmmF) goto none;
+ if (o == GOF(XMM4) && isXmmF) goto none;
+ if (o == GOF(XMM5) && isXmmF) goto none;
+ if (o == GOF(XMM7) && isXmmF) goto none;
+ if (o == GOF(XMM8) && isXmmF) goto none;
+ if (o == GOF(XMM9) && isXmmF) goto none;
+ if (o == GOF(XMM10) && isXmmF) goto none;
+ if (o == GOF(XMM11) && isXmmF) goto none;
VG_(printf)("get_IntRegInfo(amd64):failing on (%d,%d)\n", o, sz);
tl_assert(0);
@@ -1774,11 +1828,32 @@
VG_(set_syscall_return_shadows)( tid, (UWord)UNKNOWN, 0 );
break;
+ /* These ones definitely don't return pointers. */
+ case __NR_fchmod:
+ case __NR_fchown:
+ case __NR_fdatasync:
+ case __NR_getegid:
+ case __NR_geteuid:
+ case __NR_getgid:
+# if defined(__NR_getsockopt)
+ case __NR_getsockopt:
+# endif
+ case __NR_gettimeofday:
+ case __NR_getuid:
+ case __NR_kill:
+ case __NR_link:
case __NR_lseek:
- case __NR_readlink:
+ case __NR_madvise:
+ case __NR_pipe:
case __NR_poll:
case __NR_pwrite64:
+ case __NR_readlink:
case __NR_readv:
+ case __NR_rename:
+ case __NR_select:
+ case __NR_time:
+ case __NR_umask:
+ case __NR_unlink:
case __NR_writev:
VG_(set_syscall_return_shadows)( tid, (UWord)NONPTR, 0 );
break;
@@ -3234,6 +3309,7 @@
case Iop_8Sto64: goto n64;
case Iop_DivModU64to32: goto n64;
case Iop_DivModS64to32: goto n64;
+ case Iop_F64toI64: goto n64;
n64:
assign( 'I', pce, dstv, mkU64( (UInt)NONPTR ));
break;
@@ -3530,8 +3606,10 @@
} else {
/* 64 bit host/guest (cough, cough) */
switch (e_ty) {
+ case Ity_F64: /* a hack: check_load8W's result ignored */
case Ity_I64: h_fn = &check_load8W;
h_nm = "check_load8W"; break;
+ case Ity_F32:
case Ity_I32: h_fn = &check_load4;
h_nm = "check_load4"; break;
case Ity_I16: h_fn = &check_load2;
@@ -4372,6 +4450,8 @@
VG_(needs_syscall_wrapper)( pre_syscall,
post_syscall );
+ VG_(needs_var_info)();
+
//zz // No needs
//zz VG_(needs_core_errors) ();
//zz VG_(needs_skin_errors) ();
|
|
From: Tom H. <th...@cy...> - 2008-07-05 02:56:50
|
Nightly build on aston ( x86_64, Fedora Core 5 ) started at 2008-07-05 03:20:06 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 441 tests, 8 stderr failures, 1 stdout failure, 0 post failures == memcheck/tests/file_locking (stderr) memcheck/tests/malloc_free_fill (stderr) memcheck/tests/pointer-trace (stderr) memcheck/tests/x86/scalar (stderr) none/tests/blockfault (stderr) none/tests/mremap2 (stdout) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc21_pthonce (stderr) helgrind/tests/tc22_exit_w_lock (stderr) |
|
From: Tom H. <th...@cy...> - 2008-07-05 02:46:07
|
Nightly build on lloyd ( x86_64, Fedora 7 ) started at 2008-07-05 03:05:05 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 435 tests, 5 stderr failures, 2 stdout failures, 0 post failures == memcheck/tests/file_locking (stderr) memcheck/tests/pointer-trace (stderr) memcheck/tests/vcpu_fnfns (stdout) memcheck/tests/x86/scalar (stderr) none/tests/mremap2 (stdout) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc22_exit_w_lock (stderr) |
|
From: Tom H. <th...@cy...> - 2008-07-05 02:42:29
|
Nightly build on trojan ( x86_64, Fedora Core 6 ) started at 2008-07-05 03:25:05 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 == 439 tests, 7 stderr failures, 5 stdout failures, 0 post failures == memcheck/tests/file_locking (stderr) memcheck/tests/pointer-trace (stderr) memcheck/tests/vcpu_fnfns (stdout) memcheck/tests/x86/bug133694 (stdout) memcheck/tests/x86/bug133694 (stderr) memcheck/tests/x86/scalar (stderr) none/tests/cmdline1 (stdout) none/tests/cmdline2 (stdout) none/tests/mremap2 (stdout) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc21_pthonce (stderr) helgrind/tests/tc22_exit_w_lock (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 == 439 tests, 8 stderr failures, 5 stdout failures, 0 post failures == memcheck/tests/file_locking (stderr) memcheck/tests/pointer-trace (stderr) memcheck/tests/vcpu_fnfns (stdout) memcheck/tests/x86/bug133694 (stdout) memcheck/tests/x86/bug133694 (stderr) memcheck/tests/x86/scalar (stderr) none/tests/cmdline1 (stdout) none/tests/cmdline2 (stdout) none/tests/mremap2 (stdout) helgrind/tests/tc17_sembar (stderr) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc21_pthonce (stderr) helgrind/tests/tc22_exit_w_lock (stderr) ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short Sat Jul 5 03:33:53 2008 --- new.short Sat Jul 5 03:42:35 2008 *************** *** 8,10 **** ! == 439 tests, 8 stderr failures, 5 stdout failures, 0 post failures == memcheck/tests/file_locking (stderr) --- 8,10 ---- ! == 439 tests, 7 stderr failures, 5 stdout failures, 0 post failures == memcheck/tests/file_locking (stderr) *************** *** 18,20 **** none/tests/mremap2 (stdout) - helgrind/tests/tc17_sembar (stderr) helgrind/tests/tc20_verifywrap (stderr) --- 18,19 ---- |
|
From: Tom H. <th...@cy...> - 2008-07-05 02:30:01
|
Nightly build on gill ( x86_64, Fedora Core 2 ) started at 2008-07-05 03:00:13 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 441 tests, 31 stderr failures, 3 stdout failures, 0 post failures == memcheck/tests/file_locking (stderr) memcheck/tests/malloc_free_fill (stderr) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/pointer-trace (stderr) memcheck/tests/stack_switch (stderr) memcheck/tests/varinfo6 (stderr) memcheck/tests/x86/scalar (stderr) memcheck/tests/x86/scalar_supp (stderr) none/tests/amd64/insn_ssse3 (stdout) none/tests/amd64/insn_ssse3 (stderr) none/tests/amd64/ssse3_misaligned (stderr) none/tests/blockfault (stderr) none/tests/fdleak_fcntl (stderr) none/tests/mremap2 (stdout) none/tests/x86/insn_ssse3 (stdout) none/tests/x86/insn_ssse3 (stderr) none/tests/x86/ssse3_misaligned (stderr) helgrind/tests/hg01_all_ok (stderr) helgrind/tests/hg02_deadlock (stderr) helgrind/tests/hg03_inherit (stderr) helgrind/tests/hg04_race (stderr) helgrind/tests/hg05_race2 (stderr) helgrind/tests/tc01_simple_race (stderr) helgrind/tests/tc05_simple_race (stderr) helgrind/tests/tc06_two_races (stderr) helgrind/tests/tc09_bad_unlock (stderr) helgrind/tests/tc14_laog_dinphils (stderr) helgrind/tests/tc16_byterace (stderr) helgrind/tests/tc17_sembar (stderr) helgrind/tests/tc19_shadowmem (stderr) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc21_pthonce (stderr) helgrind/tests/tc22_exit_w_lock (stderr) helgrind/tests/tc23_bogus_condwait (stderr) |