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
(17) |
2
(14) |
3
(15) |
4
(30) |
5
(18) |
6
(12) |
7
(10) |
|
8
(11) |
9
(11) |
10
(14) |
11
(12) |
12
(12) |
13
(8) |
14
(5) |
|
15
(11) |
16
(19) |
17
(15) |
18
(15) |
19
(16) |
20
(9) |
21
(9) |
|
22
(12) |
23
(11) |
24
(10) |
25
(5) |
26
(11) |
27
(12) |
28
(20) |
|
29
(11) |
30
(21) |
|
|
|
|
|
|
From: <sv...@va...> - 2008-06-04 18:57:05
|
Author: bart
Date: 2008-06-04 19:57:08 +0100 (Wed, 04 Jun 2008)
New Revision: 8188
Log:
Enabled parallel compilation.
Modified:
trunk/exp-drd/scripts/compile-gcc
Modified: trunk/exp-drd/scripts/compile-gcc
===================================================================
--- trunk/exp-drd/scripts/compile-gcc 2008-06-04 18:08:10 UTC (rev 8187)
+++ trunk/exp-drd/scripts/compile-gcc 2008-06-04 18:57:08 UTC (rev 8188)
@@ -14,6 +14,7 @@
BUILD=${SRC}-build
TAR=gcc-${GCC_VERSION}.tar.bz2
PREFIX=$HOME/gcc-${GCC_VERSION}
+export MAKEFLAGS="-j$(($(grep -c '^processor' /proc/cpuinfo) + 1))"
if [ ! -e /usr/include/gmp.h ]; then
echo "Please install the gmp library development package first."
@@ -48,5 +49,4 @@
--enable-tls \
--prefix=$PREFIX
-make -s || exit $?
-make -s install || exit $?
+time { make -s && make -s install; }
|
|
From: <sv...@va...> - 2008-06-04 18:08:08
|
Author: bart Date: 2008-06-04 19:08:10 +0100 (Wed, 04 Jun 2008) New Revision: 8187 Log: Documentation updates. Added: trunk/exp-drd/scripts/compile-gcc Modified: trunk/exp-drd/TODO.txt trunk/exp-drd/docs/README.txt Modified: trunk/exp-drd/TODO.txt =================================================================== --- trunk/exp-drd/TODO.txt 2008-06-04 13:02:22 UTC (rev 8186) +++ trunk/exp-drd/TODO.txt 2008-06-04 18:08:10 UTC (rev 8187) @@ -8,13 +8,12 @@ the number of mutex lock / unlock calls to the number of executed basic blocks exceeds a certain threshold. Test with Firefox and nautilus. - Continue discussion about unification of DRD and Helgrind client requests. +- Propose renaming exp-drd back to drd. - Memory pool support. - Add locking order checking. Start from the following information: * http://sourceforge.net/mailarchive/message.php?msg_id=alpine.LNX.1.10.0803270822080.17890%40mudge.stoecker.eu * http://lwn.net/Articles/185605/ * http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/lockdep-design.txt;h=488773018152056ea159685e732e42452a7ae142;hb=HEAD -- Let DRD print an error message and stop as soon as qt1, qt2 or qt3 is - loaded. Only qt4 is SMP safe. - Make sure tc14_laog_dinphils is run during exp-drd regression tests (only possible after locking order checking is implemented). - Find out why no line number or variable name information is printed for @@ -40,8 +39,6 @@ (e.g. exp-drd/test/matinv.c). - Add a note about how much stack is needed for exp-drd itself. - Explain how to handle transactions (with regard to locking order). -- Add extra acknowledgement -- see also - http://wiki.cc.gatech.edu/cellbuzz/index.php/User_Guide - Continue the discussion on the Valgrind mailing list about docbook and 'make dist'. See also http://bugs.kde.org/show_bug.cgi?id=162121. @@ -50,3 +47,6 @@ ~~~~~~~~~~~ - Does not work with a glibc library compiled with linuxthreads -- NPTL is required for proper operation. +- openSUSE 10.3, ppc: unless the glibc debuginfo packages is installed, + false positives are reported on ld.so. + See also https://bugzilla.novell.com/show_bug.cgi?id=396197. Modified: trunk/exp-drd/docs/README.txt =================================================================== --- trunk/exp-drd/docs/README.txt 2008-06-04 13:02:22 UTC (rev 8186) +++ trunk/exp-drd/docs/README.txt 2008-06-04 18:08:10 UTC (rev 8187) @@ -353,52 +353,9 @@ function my-gcc { export CC=$HOME/gcc-4.3.0/bin/gcc LD_LIBRARY_PATH=$HOME/gcc-4.3.0/lib64:; } EOF -Recompiling gcc is possible with e.g. the following shell script: +For an example of how to recompile gcc, see also the script exp-drd/scripts/compile-gcc. ---------------------------------------------------------------------------- -#!/bin/sh -# Make sure that libgmp and libmpfr are installed before you run this script. -# On Debian systems, e.g. Ubuntu, you can install these libraries as follows: -# sudo apt-get install libgmp3-dev libmpfr-dev - -GCC_VERSION=4.3.0 -FSF_MIRROR=ftp://ftp.easynet.be/gnu -SRCDIR=$HOME/software -DOWNLOADS=$SRCDIR/downloads -SRC=$HOME/software/gcc-${GCC_VERSION} -BUILD=${SRC}-build -TAR=gcc-${GCC_VERSION}.tar.bz2 -PREFIX=$HOME/gcc-${GCC_VERSION} - -rm -rf ${BUILD} || exit $? -rm -rf ${PREFIX} || exit $? -mkdir -p ${BUILD} || exit $? -mkdir -p ${DOWNLOADS} || exit $? -cd ${BUILD} || exit $? - -if [ ! -e $DOWNLOADS/$TAR ]; then - ( cd $DOWNLOADS && wget -q $FSF_MIRROR/gcc/gcc-${GCC_VERSION}/$TAR ) -fi - -if [ ! -e $SRC ]; then - ( cd $SRCDIR && tar -xjf $DOWNLOADS/$TAR ) -fi - -${SRC}/configure \ - --disable-linux-futex \ - --disable-mudflap \ - --disable-nls \ - --enable-languages=c,c++ \ - --enable-threads=posix \ - --enable-tls \ - --prefix=$PREFIX - -make -s || exit $? -make -s install || exit $? ---------------------------------------------------------------------------- - - Future DRD Versions ------------------- The following may be expected in future versions of DRD: @@ -423,7 +380,12 @@ I would also like to thank Michiel Ronsse for introducing me a long time ago to vector clocks and the JiTI and DIOTA projects. +Thanks also to prof. David A. Bader and the Georgia Institute of +Technology, its Sony-Toshiba-IBM Center of Competence, and the U.S. +National Science Foundation for the use of Cell Broadband Engine +resources in testing DRD on the PowerPC CPU architecture. + References ---------- Added: trunk/exp-drd/scripts/compile-gcc =================================================================== --- trunk/exp-drd/scripts/compile-gcc (rev 0) +++ trunk/exp-drd/scripts/compile-gcc 2008-06-04 18:08:10 UTC (rev 8187) @@ -0,0 +1,52 @@ +#!/bin/sh + +# Make sure that libgmp and libmpfr are installed before you run this script. +# On Debian systems, e.g. Ubuntu, you can install these libraries as follows: +# sudo apt-get install libgmp3-dev libmpfr-dev. In openSUSE these packages +# are called gmp-devel and mpfr-devel. + + +GCC_VERSION=4.3.0 +FSF_MIRROR=ftp://ftp.easynet.be/gnu +SRCDIR=$HOME/software +DOWNLOADS=$SRCDIR/downloads +SRC=$HOME/software/gcc-${GCC_VERSION} +BUILD=${SRC}-build +TAR=gcc-${GCC_VERSION}.tar.bz2 +PREFIX=$HOME/gcc-${GCC_VERSION} + +if [ ! -e /usr/include/gmp.h ]; then + echo "Please install the gmp library development package first." + exit 1 +fi + +if [ ! -e /usr/include/mpfr.h ]; then + echo "Please install the mpfr library development package first." + exit 1 +fi + +rm -rf ${BUILD} || exit $? +rm -rf ${PREFIX} || exit $? +mkdir -p ${BUILD} || exit $? +mkdir -p ${DOWNLOADS} || exit $? +cd ${BUILD} || exit $? + +if [ ! -e $DOWNLOADS/$TAR ]; then + ( cd $DOWNLOADS && wget -q $FSF_MIRROR/gcc/gcc-${GCC_VERSION}/$TAR ) +fi + +if [ ! -e $SRC ]; then + ( cd $SRCDIR && tar -xjf $DOWNLOADS/$TAR ) +fi + +${SRC}/configure \ + --disable-linux-futex \ + --disable-mudflap \ + --disable-nls \ + --enable-languages=c,c++ \ + --enable-threads=posix \ + --enable-tls \ + --prefix=$PREFIX + +make -s || exit $? +make -s install || exit $? Property changes on: trunk/exp-drd/scripts/compile-gcc ___________________________________________________________________ Name: svn:executable + * |
|
From: Bart V. A. <bar...@gm...> - 2008-06-04 16:57:57
|
Hello Julian,
Can you please review the patch below and apply it to the VEX trunk (I don't
have commit rights for VEX). The patch below is based on an idea of Paul
Mackerras. The patch below makes cross-compilation of VEX again possible via
the following changes:
- auxprogs/genoffsets.c is no longer compiled into an object file (.o) but
only into assembly code (.s).
- The actual offsets are extracted via sed from the assembly code instead of
being generated by auxprogs/genoffsets.
Bart.
Index: VEX/auxprogs/genoffsets.c
===================================================================
--- VEX/auxprogs/genoffsets.c (revision 1849)
+++ VEX/auxprogs/genoffsets.c (working copy)
@@ -46,7 +46,9 @@
#include <stdio.h>
-/* A program which generates various guest state offsets. */
+/* A program that allows to compute guest state offsets by compiling it to */
+/* assembler code and by filtering the #define statements from the assembly */
+/* output. */
#include "../pub/libvex_basictypes.h"
#include "../pub/libvex_guest_x86.h"
@@ -54,184 +56,187 @@
#include "../pub/libvex_guest_ppc32.h"
#include "../pub/libvex_guest_ppc64.h"
+#define DEFINE(sym, val) \
+ asm volatile("\n#define " #sym " %0\n" #val : : "i" (val))
+
Int main ( void )
{
// x86
- printf("#define OFFSET_x86_EAX %3d\n",
+ DEFINE(OFFSET_x86_EAX,
offsetof(VexGuestX86State,guest_EAX));
- printf("#define OFFSET_x86_EBX %3d\n",
+ DEFINE(OFFSET_x86_EBX,
offsetof(VexGuestX86State,guest_EBX));
- printf("#define OFFSET_x86_ECX %3d\n",
+ DEFINE(OFFSET_x86_ECX,
offsetof(VexGuestX86State,guest_ECX));
- printf("#define OFFSET_x86_EDX %3d\n",
+ DEFINE(OFFSET_x86_EDX,
offsetof(VexGuestX86State,guest_EDX));
- printf("#define OFFSET_x86_ESI %3d\n",
+ DEFINE(OFFSET_x86_ESI,
offsetof(VexGuestX86State,guest_ESI));
- printf("#define OFFSET_x86_EDI %3d\n",
+ DEFINE(OFFSET_x86_EDI,
offsetof(VexGuestX86State,guest_EDI));
- printf("#define OFFSET_x86_EBP %3d\n",
+ DEFINE(OFFSET_x86_EBP,
offsetof(VexGuestX86State,guest_EBP));
- printf("#define OFFSET_x86_ESP %3d\n",
+ DEFINE(OFFSET_x86_ESP,
offsetof(VexGuestX86State,guest_ESP));
- printf("#define OFFSET_x86_EIP %3d\n",
+ DEFINE(OFFSET_x86_EIP,
offsetof(VexGuestX86State,guest_EIP));
- printf("#define OFFSET_x86_CS %3d\n",
+ DEFINE(OFFSET_x86_CS,
offsetof(VexGuestX86State,guest_CS));
- printf("#define OFFSET_x86_DS %3d\n",
+ DEFINE(OFFSET_x86_DS,
offsetof(VexGuestX86State,guest_DS));
- printf("#define OFFSET_x86_ES %3d\n",
+ DEFINE(OFFSET_x86_ES,
offsetof(VexGuestX86State,guest_ES));
- printf("#define OFFSET_x86_FS %3d\n",
+ DEFINE(OFFSET_x86_FS,
offsetof(VexGuestX86State,guest_FS));
- printf("#define OFFSET_x86_GS %3d\n",
+ DEFINE(OFFSET_x86_GS,
offsetof(VexGuestX86State,guest_GS));
- printf("#define OFFSET_x86_SS %3d\n",
+ DEFINE(OFFSET_x86_SS,
offsetof(VexGuestX86State,guest_SS));
printf("\n");
// amd64
- printf("#define OFFSET_amd64_RAX %3d\n",
+ DEFINE(OFFSET_amd64_RAX,
offsetof(VexGuestAMD64State,guest_RAX));
- printf("#define OFFSET_amd64_RBX %3d\n",
+ DEFINE(OFFSET_amd64_RBX,
offsetof(VexGuestAMD64State,guest_RBX));
- printf("#define OFFSET_amd64_RCX %3d\n",
+ DEFINE(OFFSET_amd64_RCX,
offsetof(VexGuestAMD64State,guest_RCX));
- printf("#define OFFSET_amd64_RDX %3d\n",
+ DEFINE(OFFSET_amd64_RDX,
offsetof(VexGuestAMD64State,guest_RDX));
- printf("#define OFFSET_amd64_RSI %3d\n",
+ DEFINE(OFFSET_amd64_RSI,
offsetof(VexGuestAMD64State,guest_RSI));
- printf("#define OFFSET_amd64_RDI %3d\n",
+ DEFINE(OFFSET_amd64_RDI,
offsetof(VexGuestAMD64State,guest_RDI));
- printf("#define OFFSET_amd64_RSP %3d\n",
+ DEFINE(OFFSET_amd64_RSP,
offsetof(VexGuestAMD64State,guest_RSP));
- printf("#define OFFSET_amd64_RBP %3d\n",
+ DEFINE(OFFSET_amd64_RBP,
offsetof(VexGuestAMD64State,guest_RBP));
- printf("#define OFFSET_amd64_R8 %3d\n",
+ DEFINE(OFFSET_amd64_R8,
offsetof(VexGuestAMD64State,guest_R8));
- printf("#define OFFSET_amd64_R9 %3d\n",
+ DEFINE(OFFSET_amd64_R9,
offsetof(VexGuestAMD64State,guest_R9));
- printf("#define OFFSET_amd64_R10 %3d\n",
+ DEFINE(OFFSET_amd64_R10,
offsetof(VexGuestAMD64State,guest_R10));
- printf("#define OFFSET_amd64_R11 %3d\n",
+ DEFINE(OFFSET_amd64_R11,
offsetof(VexGuestAMD64State,guest_R11));
- printf("#define OFFSET_amd64_R12 %3d\n",
+ DEFINE(OFFSET_amd64_R12,
offsetof(VexGuestAMD64State,guest_R12));
- printf("#define OFFSET_amd64_R13 %3d\n",
+ DEFINE(OFFSET_amd64_R13,
offsetof(VexGuestAMD64State,guest_R13));
- printf("#define OFFSET_amd64_R14 %3d\n",
+ DEFINE(OFFSET_amd64_R14,
offsetof(VexGuestAMD64State,guest_R14));
- printf("#define OFFSET_amd64_R15 %3d\n",
+ DEFINE(OFFSET_amd64_R15,
offsetof(VexGuestAMD64State,guest_R15));
- printf("#define OFFSET_amd64_RIP %3d\n",
+ DEFINE(OFFSET_amd64_RIP,
offsetof(VexGuestAMD64State,guest_RIP));
printf("\n");
// ppc32
- printf("#define OFFSET_ppc32_GPR0 %3d\n",
+ DEFINE(OFFSET_ppc32_GPR0,
offsetof(VexGuestPPC32State,guest_GPR0));
- printf("#define OFFSET_ppc32_GPR2 %3d\n",
+ DEFINE(OFFSET_ppc32_GPR2,
offsetof(VexGuestPPC32State,guest_GPR2));
- printf("#define OFFSET_ppc32_GPR3 %3d\n",
+ DEFINE(OFFSET_ppc32_GPR3,
offsetof(VexGuestPPC32State,guest_GPR3));
- printf("#define OFFSET_ppc32_GPR4 %3d\n",
+ DEFINE(OFFSET_ppc32_GPR4,
offsetof(VexGuestPPC32State,guest_GPR4));
- printf("#define OFFSET_ppc32_GPR5 %3d\n",
+ DEFINE(OFFSET_ppc32_GPR5,
offsetof(VexGuestPPC32State,guest_GPR5));
- printf("#define OFFSET_ppc32_GPR6 %3d\n",
+ DEFINE(OFFSET_ppc32_GPR6,
offsetof(VexGuestPPC32State,guest_GPR6));
- printf("#define OFFSET_ppc32_GPR7 %3d\n",
+ DEFINE(OFFSET_ppc32_GPR7,
offsetof(VexGuestPPC32State,guest_GPR7));
- printf("#define OFFSET_ppc32_GPR8 %3d\n",
+ DEFINE(OFFSET_ppc32_GPR8,
offsetof(VexGuestPPC32State,guest_GPR8));
- printf("#define OFFSET_ppc32_GPR9 %3d\n",
+ DEFINE(OFFSET_ppc32_GPR9,
offsetof(VexGuestPPC32State,guest_GPR9));
- printf("#define OFFSET_ppc32_GPR10 %3d\n",
+ DEFINE(OFFSET_ppc32_GPR10,
offsetof(VexGuestPPC32State,guest_GPR10));
- printf("#define OFFSET_ppc32_CIA %3d\n",
+ DEFINE(OFFSET_ppc32_CIA,
offsetof(VexGuestPPC32State,guest_CIA));
- printf("#define OFFSET_ppc32_CR0_0 %3d\n",
+ DEFINE(OFFSET_ppc32_CR0_0,
offsetof(VexGuestPPC32State,guest_CR0_0));
printf("\n");
// ppc64
- printf("#define OFFSET_ppc64_GPR0 %4d\n",
+ DEFINE(OFFSET_ppc64_GPR0,
offsetof(VexGuestPPC64State,guest_GPR0));
- printf("#define OFFSET_ppc64_GPR2 %4d\n",
+ DEFINE(OFFSET_ppc64_GPR2,
offsetof(VexGuestPPC64State,guest_GPR2));
- printf("#define OFFSET_ppc64_GPR3 %4d\n",
+ DEFINE(OFFSET_ppc64_GPR3,
offsetof(VexGuestPPC64State,guest_GPR3));
- printf("#define OFFSET_ppc64_GPR4 %4d\n",
+ DEFINE(OFFSET_ppc64_GPR4,
offsetof(VexGuestPPC64State,guest_GPR4));
- printf("#define OFFSET_ppc64_GPR5 %4d\n",
+ DEFINE(OFFSET_ppc64_GPR5,
offsetof(VexGuestPPC64State,guest_GPR5));
- printf("#define OFFSET_ppc64_GPR6 %4d\n",
+ DEFINE(OFFSET_ppc64_GPR6,
offsetof(VexGuestPPC64State,guest_GPR6));
- printf("#define OFFSET_ppc64_GPR7 %4d\n",
+ DEFINE(OFFSET_ppc64_GPR7,
offsetof(VexGuestPPC64State,guest_GPR7));
- printf("#define OFFSET_ppc64_GPR8 %4d\n",
+ DEFINE(OFFSET_ppc64_GPR8,
offsetof(VexGuestPPC64State,guest_GPR8));
- printf("#define OFFSET_ppc64_GPR9 %4d\n",
+ DEFINE(OFFSET_ppc64_GPR9,
offsetof(VexGuestPPC64State,guest_GPR9));
- printf("#define OFFSET_ppc64_GPR10 %4d\n",
+ DEFINE(OFFSET_ppc64_GPR10,
offsetof(VexGuestPPC64State,guest_GPR10));
- printf("#define OFFSET_ppc64_CIA %4d\n",
+ DEFINE(OFFSET_ppc64_CIA,
offsetof(VexGuestPPC64State,guest_CIA));
- printf("#define OFFSET_ppc64_CR0_0 %4d\n",
+ DEFINE(OFFSET_ppc64_CR0_0,
offsetof(VexGuestPPC64State,guest_CR0_0));
printf("\n");
Index: VEX/Makefile
===================================================================
--- VEX/Makefile (revision 1849)
+++ VEX/Makefile (working copy)
@@ -178,9 +178,10 @@
@cat priv/main/vex_svnversion.h
@echo
-pub/libvex_guest_offsets.h:
- $(CC) -Wall -g -o auxprogs/genoffsets auxprogs/genoffsets.c
- ./auxprogs/genoffsets > pub/libvex_guest_offsets.h
+pub/libvex_guest_offsets.h: auxprogs/genoffsets.c Makefile
+ $(CC) -Wall -g -S -o auxprogs/genoffsets.s auxprogs/genoffsets.c
+ sed -n 's/^\(#define.*\) \$$*\([0-9]*\)$$/\1 \2/p' auxprogs/genoffsets.s\
+ > pub/libvex_guest_offsets.h
ALL_HEADERS = $(PUB_HEADERS) $(PRIV_HEADERS)
|
|
From: <sv...@va...> - 2008-06-04 13:02:16
|
Author: bart
Date: 2008-06-04 14:02:22 +0100 (Wed, 04 Jun 2008)
New Revision: 8186
Log:
Added more SPLASH-2 tests.
Modified:
trunk/exp-drd/scripts/run-splash2
Modified: trunk/exp-drd/scripts/run-splash2
===================================================================
--- trunk/exp-drd/scripts/run-splash2 2008-06-04 11:47:51 UTC (rev 8185)
+++ trunk/exp-drd/scripts/run-splash2 2008-06-04 13:02:22 UTC (rev 8186)
@@ -43,17 +43,21 @@
echo "$@"
for ((i=0;i<3;i++))
do
- /usr/bin/time --format="%e" "$@" 2>&1 | tail -n 1
+ cat "${test_input:-/dev/null}" | \
+ /usr/bin/time --format="%e" "$@" 2>&1 | \
+ tail -n 1
done | avgstddev > "$tmp"
read avg1 stddev1 < "$tmp"
echo "Average time: ${avg1} +/- ${stddev1} seconds"
- for ((p=1; p<=4; p++))
+ for p in 1 2 4
do
echo "$VG --tool=exp-drd $@ -p$p"
for ((i=0;i<3;i++))
do
- /usr/bin/time --format="%e" $VG --tool=exp-drd "$@" -p$p 2>&1 | tail -n 1
+ cat "${test_input:-/dev/null}" | \
+ /usr/bin/time --format="%e" $VG --tool=exp-drd "$@" -p$p 2>&1 | \
+ tail -n 1
done | avgstddev > "$tmp"
read avg2 stddev2 < "$tmp"
echo "Average time: ${avg2} +/- ${stddev2} seconds"
@@ -92,33 +96,32 @@
# original w/ filter
# .........................................................................
# Cholesky 46 59 75 92 239 82
-# FFT 15 90 41
+# FFT 15 19 N/A 47 90 41
# LU, contiguous blocks 40 48 53 55 428 128
# LU, non-contiguous blocks 37 47 55 58 428 128
-# Ocean 90 28
+# Ocean, contiguous partitions 20 26 N/A 32 90 28
+# Ocean, non-continguous partns 19 24 N/A 34 90 28
# Radiosity 99 99 99 99 485 163
-# Radix 222 56
-# Raytrace 172 53
-# Water-n2 189 39
-# Water-sp 183 34
+# Radix 11 15 ? 17 222 56
+# Raytrace 75 75 ? 75 172 53
+# Water-n2 290 290 ? 290 189 39
+# Water-sp 288 288 ? 287 183 34
cache_size=$(get_cache_size)
log2_cache_size=$(log2 ${cache_size})
# Cholesky
-if false; then
(
- cd ${SPLASH2}/codes/kernels/cholesky
- if [ ! -e inputs/tk29.O ]; then
- gzip -cd < inputs/tk29.O.Z > inputs/tk29.O
- fi
- run_test ./CHOLESKY -C${cache_size} -n1024 inputs/tk29.O
+ cd ${SPLASH2}/codes/kernels/cholesky/inputs
+ for f in *Z
+ do
+ gzip -cd <$f >${f%.Z}
+ done
+ run_test ../CHOLESKY -C${cache_size} -n1024 tk29.O
)
-fi
# FFT
-run_test ${SPLASH2}/codes/kernels/fft/FFT -l${log2_cache_size} -m$((2**28))
-exit 1
+run_test ${SPLASH2}/codes/kernels/fft/FFT -t -l${log2_cache_size} -m20
# LU, contiguous blocks.
run_test ${SPLASH2}/codes/kernels/lu/contiguous_blocks/LU -n1024
@@ -126,10 +129,42 @@
# LU, non-contiguous blocks.
run_test ${SPLASH2}/codes/kernels/lu/non_contiguous_blocks/LU -n1024
+# Ocean
+run_test ${SPLASH2}/codes/apps/ocean/contiguous_partitions/OCEAN -n2050
+run_test ${SPLASH2}/codes/apps/ocean/non_contiguous_partitions/OCEAN -n258
+
# Radiosity.
run_test ${SPLASH2}/codes/apps/radiosity/RADIOSITY -batch -room
+# Radix
+run_test ${SPLASH2}/codes/kernels/radix/RADIX -n$((2**24))
+# Raytrace
+(
+ cd ${SPLASH2}/codes/apps/raytrace/inputs
+ rm -f *.env *.geo *.rl
+ for f in *Z
+ do
+ gzip -cd <$f >${f%.Z}
+ done
+ run_test ../RAYTRACE balls4.env
+)
+run_test ${SPLASH2}/codes/apps/radiosity/RADIOSITY -batch -room
+
+# Water-n2
+rm -f water-n2-input
+echo "1.5e-16 32768 3 6 -1 3000 3 0 1 6.212752" > water-n2-input
+test_input=water-n2-input \
+ run_test ${SPLASH2}/codes/apps/water-nsquared/WATER-NSQUARED
+
+# Water-sp
+rm -f water-sp-input
+echo "1.5e-16 32768 3 6 -1 3000 3 0 1 6.212752" > water-sp-input
+test_input=water-sp-input \
+ run_test ${SPLASH2}/codes/apps/water-nsquared/WATER-NSQUARED
+
+
+
# Local variables:
# compile-command: "./run-splash2"
# End:
|
|
From: <sv...@va...> - 2008-06-04 11:47:44
|
Author: sewardj Date: 2008-06-04 12:47:51 +0100 (Wed, 04 Jun 2008) New Revision: 8185 Log: Sync with 3_3_BRANCH. Modified: trunk/NEWS Modified: trunk/NEWS =================================================================== --- trunk/NEWS 2008-06-04 11:45:17 UTC (rev 8184) +++ trunk/NEWS 2008-06-04 11:47:51 UTC (rev 8185) @@ -5,6 +5,70 @@ - SSE3 insns now supported. Changed CPUID output to be Core-2, so now it claims to be a Core 2 E6600. + +Release 3.3.1 (4 June 2008) +~~~~~~~~~~~~~~~~~~~~~~~~~~~ +3.3.1 fixes a bunch of bugs in 3.3.0, adds support for glibc-2.8 based +systems (openSUSE 11, Fedora Core 9), improves the existing glibc-2.7 +support, and adds support for the SSSE3 (Core 2) instruction set. + +3.3.1 will likely be the last release that supports some very old +systems. In particular, the next major release, 3.4.0, will drop +support for the old LinuxThreads threading library, and for gcc +versions prior to 3.0. + +The fixed bugs are as follows. Note that "n-i-bz" stands for "not in +bugzilla" -- that is, a bug that was reported to us but never got a +bugzilla entry. We encourage you to file bugs in bugzilla +(http://bugs.kde.org/enter_valgrind_bug.cgi) rather than mailing the +developers (or mailing lists) directly -- bugs that are not entered +into bugzilla tend to get forgotten about or ignored. + +n-i-bz Massif segfaults at exit +n-i-bz Memcheck asserts on Altivec code +n-i-bz fix sizeof bug in Helgrind +n-i-bz check fd on sys_llseek +n-i-bz update syscall lists to kernel 2.6.23.1 +n-i-bz support sys_sync_file_range +n-i-bz handle sys_sysinfo, sys_getresuid, sys_getresgid on ppc64-linux +n-i-bz intercept memcpy in 64-bit ld.so's +n-i-bz Fix wrappers for sys_{futimesat,utimensat} +n-i-bz Minor false-error avoidance fixes for Memcheck +n-i-bz libmpiwrap.c: add a wrapper for MPI_Waitany +n-i-bz helgrind support for glibc-2.8 +n-i-bz partial fix for mc_leakcheck.c:698 assert: + 'lc_shadows[i]->data + lc_shadows[i] ... +n-i-bz Massif/Cachegrind output corruption when programs fork +n-i-bz register allocator fix: handle spill stores correctly +n-i-bz add support for PA6T PowerPC CPUs +126389 vex x86->IR: 0xF 0xAE (FXRSTOR) +158525 ==126389 +152818 vex x86->IR: 0xF3 0xAC (repz lodsb) +153196 vex x86->IR: 0xF2 0xA6 (repnz cmpsb) +155011 vex x86->IR: 0xCF (iret) +155091 Warning [...] unhandled DW_OP_ opcode 0x23 +156960 ==155901 +155528 support Core2/SSSE3 insns on x86/amd64 +155929 ms_print fails on massif outputs containing long lines +157665 valgrind fails on shmdt(0) after shmat to 0 +157748 support x86 PUSHFW/POPFW +158212 helgrind: handle pthread_rwlock_try{rd,wr}lock. +158425 sys_poll incorrectly emulated when RES==0 +158744 vex amd64->IR: 0xF0 0x41 0xF 0xC0 (xaddb) +160907 Support for a couple of recent Linux syscalls +161285 Patch -- support for eventfd() syscall +161378 illegal opcode in debug libm (FUCOMPP) +160136 ==161378 +161487 number of suppressions files is limited to 10 +162386 ms_print typo in milliseconds time unit for massif +161036 exp-drd: client allocated memory was never freed +162663 signalfd_wrapper fails on 64bit linux + +(3.3.1.RC1: 2 June 2008, vex r1854, valgrind r8169). +(3.3.1: 4 June 2008, vex r1854, valgrind r8180). + + + Release 3.3.0 (7 December 2007) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3.3.0 is a feature release with many significant improvements and the |
|
From: <sv...@va...> - 2008-06-04 11:45:13
|
Author: sewardj Date: 2008-06-04 12:45:17 +0100 (Wed, 04 Jun 2008) New Revision: 8184 Log: Swizzle external for 3.3.1. Modified: tags/VALGRIND_3_3_1/ Property changes on: tags/VALGRIND_3_3_1 ___________________________________________________________________ Name: svn:externals - VEX svn://svn.valgrind.org/vex/branches/VEX_3_3_BRANCH + VEX svn://svn.valgrind.org/vex/tags/VEX_3_3_1 |
|
From: <sv...@va...> - 2008-06-04 11:42:49
|
Author: sewardj Date: 2008-06-04 12:42:53 +0100 (Wed, 04 Jun 2008) New Revision: 8183 Log: Tag for 3.3.1 release. Added: tags/VALGRIND_3_3_1/ Copied: tags/VALGRIND_3_3_1 (from rev 8182, branches/VALGRIND_3_3_BRANCH) |
|
From: <sv...@va...> - 2008-06-04 11:41:07
|
Author: sewardj Date: 2008-06-04 12:41:02 +0100 (Wed, 04 Jun 2008) New Revision: 1856 Log: Tag the 3.3.1 release. Added: tags/VEX_3_3_1/ Copied: tags/VEX_3_3_1 (from rev 1855, branches/VEX_3_3_BRANCH) |
|
From: <sv...@va...> - 2008-06-04 10:58:56
|
Author: sewardj
Date: 2008-06-04 11:59:03 +0100 (Wed, 04 Jun 2008)
New Revision: 355
Log:
Minor 3.3.1 changes.
Modified:
trunk/downloads/current.html
trunk/downloads/old.html
Modified: trunk/downloads/current.html
===================================================================
--- trunk/downloads/current.html 2008-06-04 10:46:20 UTC (rev 354)
+++ trunk/downloads/current.html 2008-06-04 10:59:03 UTC (rev 355)
@@ -33,8 +33,18 @@
systems (openSUSE 11, Fedora Core 9), improves the existing glibc-2.7
support, and adds support for the SSSE3 (Core 2) instruction set.</p>
+<p>3.3.1 builds and runs its regression tests on at least the following
+platforms, and probably more:</p>
+<ul>
+ <li>x86: RedHat 7.3, 8, 9, SuSE 10.1, 10.2, 11.0rc1, Fedora 9</li>
+ <li>amd64: SuSE 10.2, 11.0rc1, Ubuntu 8.04</li>
+ <li>ppc32: Fedora 8, 9</li>
+ <li>ppc64: Fedora 8, 9</li>
+</ul>
+
+
<div class="hr_brown"><hr/></div>
<h3>Valkyrie 1.2.0</h3>
Modified: trunk/downloads/old.html
===================================================================
--- trunk/downloads/old.html 2008-06-04 10:46:20 UTC (rev 354)
+++ trunk/downloads/old.html 2008-06-04 10:59:03 UTC (rev 355)
@@ -21,10 +21,6 @@
For {x86,amd64,ppc32,ppc64}-linux.<br />
<span class="md5sum">md5: e5fc39755a714f36b7e5014c1c6d4748</span></p>
-<p>You may want to look at the
-<a href="/docs/manual/dist.news.html">3.3.0 release notes</a>.
-</p>
-
<p>3.3.0 primarily contains tool enhancements: a restored and improved
version of Helgrind (thread checker), majorly revamped version of
Massif (space profiler), branch-mispredict profiling for Cachegrind,
@@ -44,7 +40,6 @@
For {x86,amd64,ppc32,ppc64}-linux.<br />
<span class="md5sum">md5: 978847992b136c8d8cb5c6559a91df1c</span></p>
-
<p>3.2.3 is almost identical to 3.2.2, but fixes a regression that
unfortunately crept into 3.2.2. The regression causes an assertion
failure in Valgrind when running certain obscure SSE code fragments
|
|
From: <sv...@va...> - 2008-06-04 10:51:35
|
Author: njn
Date: 2008-06-04 10:41:53 +0100 (Wed, 04 Jun 2008)
New Revision: 8182
Log:
Try to make this test more consistent across different machines.
Modified:
trunk/memcheck/tests/origin2-not-quite.c
trunk/memcheck/tests/origin2-not-quite.stderr.exp
Modified: trunk/memcheck/tests/origin2-not-quite.c
===================================================================
--- trunk/memcheck/tests/origin2-not-quite.c 2008-06-04 09:07:36 UTC (rev 8181)
+++ trunk/memcheck/tests/origin2-not-quite.c 2008-06-04 09:41:53 UTC (rev 8182)
@@ -13,37 +13,48 @@
typedef long long Long;
+__attribute__((noinline)) int t1(void);
+__attribute__((noinline)) int t2(void);
+__attribute__((noinline)) int t3(void);
+
int main(void)
{
assert(4 == sizeof(int));
assert(8 == sizeof(Long));
+ x += t1();
+ x += t2();
+ x += t3();
+
+ return x & 255;
+}
+
+__attribute__((noinline)) int t1(void)
+{
// 64-bit undefined double.
- {
- double* ptr_to_undef_double = malloc(sizeof(double));
- double undef_double = *ptr_to_undef_double;
- fprintf(stderr, "\nUndef 1 of 3 (64-bit FP)\n");
- x += (undef_double < (double)123.45 ? 12 : 23);
- }
+ double* ptr_to_undef_double = malloc(sizeof(double));
+ double undef_double = *ptr_to_undef_double;
+ fprintf(stderr, "\nUndef 1 of 3 (64-bit FP)\n");
+ return (undef_double < (double)123.45 ? 12 : 23);
+}
+__attribute__((noinline)) int t2(void)
+{
// 32-bit undefined float.
- {
- float* ptr_to_undef_float = malloc(sizeof(float));
- float undef_float = *ptr_to_undef_float;
- fprintf(stderr, "\nUndef 2 of 3 (32-bit FP)\n");
- x += (undef_float < (float)234.56 ? 13 : 24);
- }
+ float* ptr_to_undef_float = malloc(sizeof(float));
+ float undef_float = *ptr_to_undef_float;
+ fprintf(stderr, "\nUndef 2 of 3 (32-bit FP)\n");
+ return (undef_float < (float)234.56 ? 13 : 24);
+}
+__attribute__((noinline)) int t3(void)
+{
// Stack, 32-bit, recently modified.
// Problem here is that we don't chase backwards through loads and
// stores. Ie. the variable is stored after it's been modified, then
// loaded again, so we don't see the unmodified version.
- {
- int modified_undef_stack_int;
- modified_undef_stack_int++;
- fprintf(stderr, "\nUndef 3 of 3 (int)\n");
- x += (modified_undef_stack_int == 0x1234 ? 11 : 22);
- }
-
- return x;
+ int modified_undef_stack_int;
+ modified_undef_stack_int++;
+ fprintf(stderr, "\nUndef 3 of 3 (int)\n");
+ return (modified_undef_stack_int == 0x1234 ? 11 : 22);
}
Modified: trunk/memcheck/tests/origin2-not-quite.stderr.exp
===================================================================
--- trunk/memcheck/tests/origin2-not-quite.stderr.exp 2008-06-04 09:07:36 UTC (rev 8181)
+++ trunk/memcheck/tests/origin2-not-quite.stderr.exp 2008-06-04 09:41:53 UTC (rev 8182)
@@ -1,22 +1,27 @@
Undef 1 of 3 (64-bit FP)
Conditional jump or move depends on uninitialised value(s)
- at 0x........: main (origin2-not-quite.c:26)
+ at 0x........: t1 (origin2-not-quite.c:38)
+ by 0x........: main (origin2-not-quite.c:25)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
- by 0x........: main (origin2-not-quite.c:23)
+ by 0x........: t1 (origin2-not-quite.c:35)
+ by 0x........: main (origin2-not-quite.c:25)
Undef 2 of 3 (32-bit FP)
Conditional jump or move depends on uninitialised value(s)
- at 0x........: main (origin2-not-quite.c:34)
+ at 0x........: t2 (origin2-not-quite.c:47)
+ by 0x........: main (origin2-not-quite.c:26)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
- by 0x........: main (origin2-not-quite.c:31)
+ by 0x........: t2 (origin2-not-quite.c:44)
+ by 0x........: main (origin2-not-quite.c:26)
Undef 3 of 3 (int)
Conditional jump or move depends on uninitialised value(s)
- at 0x........: main (origin2-not-quite.c:45)
+ at 0x........: t3 (origin2-not-quite.c:59)
+ by 0x........: main (origin2-not-quite.c:27)
Uninitialised value was created by a stack allocation
- at 0x........: main (origin2-not-quite.c:17)
+ at 0x........: t3 (origin2-not-quite.c:51)
|
|
From: <sv...@va...> - 2008-06-04 10:46:16
|
Author: sewardj Date: 2008-06-04 11:46:20 +0100 (Wed, 04 Jun 2008) New Revision: 354 Log: Update for 3.3.1. Modified: trunk/docs/manual/FAQ.html trunk/docs/manual/QuickStart.html trunk/docs/manual/cg-manual.html trunk/docs/manual/cl-format.html trunk/docs/manual/cl-manual.html trunk/docs/manual/dist.acknowledge.html trunk/docs/manual/dist.authors.html trunk/docs/manual/dist.html trunk/docs/manual/dist.install.html trunk/docs/manual/dist.news.html trunk/docs/manual/dist.readme-developers.html trunk/docs/manual/dist.readme-missing.html trunk/docs/manual/dist.readme-packagers.html trunk/docs/manual/dist.readme.html trunk/docs/manual/faq.html trunk/docs/manual/hg-manual.html trunk/docs/manual/index.html trunk/docs/manual/license.gfdl.html trunk/docs/manual/license.gpl.html trunk/docs/manual/licenses.html trunk/docs/manual/lk-manual.html trunk/docs/manual/manual-core-adv.html trunk/docs/manual/manual-core.html trunk/docs/manual/manual-intro.html trunk/docs/manual/manual.html trunk/docs/manual/mc-manual.html trunk/docs/manual/ms-manual.html trunk/docs/manual/nl-manual.html trunk/docs/manual/quick-start.html trunk/docs/manual/tech-docs.html trunk/docs/manual/valgrind_manual.html.tar.bz2 trunk/docs/manual/valgrind_manual.pdf trunk/docs/manual/valgrind_manual.ps.bz2 trunk/docs/manual/writing-tools.html trunk/downloads/current.html trunk/downloads/old.html trunk/info/developers.html trunk/php/.htconfx Modified: trunk/docs/manual/FAQ.html =================================================================== --- trunk/docs/manual/FAQ.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/FAQ.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Valgrind FAQ</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="index.html" title="Valgrind Documentation"> <link rel="prev" href="writing-tools.html" title="11.Writing a New Valgrind Tool"> @@ -22,10 +22,10 @@ <div> <div><h1 class="title"> <a name="FAQ"></a>Valgrind FAQ</h1></div> -<div><p class="releaseinfo">Release 3.3.0 7 December 2007</p></div> -<div><p class="copyright">Copyright 2000-2007 <a href="http://www.valgrind.org/info/developers.html" target="_top">Valgrind Developers</a></p></div> +<div><p class="releaseinfo">Release 3.3.1 4 June 2008</p></div> +<div><p class="copyright">Copyright 2000-2008 <a href="http://www.valgrind.org/info/developers.html" target="_top">Valgrind Developers</a></p></div> <div><div class="legalnotice"> -<a name="id370987"></a><p>Email: <a href="mailto:val...@va..." target="_top">val...@va...</a></p> +<a name="id2578549"></a><p>Email: <a href="mailto:val...@va..." target="_top">val...@va...</a></p> </div></div> </div> <hr> Modified: trunk/docs/manual/QuickStart.html =================================================================== --- trunk/docs/manual/QuickStart.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/QuickStart.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>The Valgrind Quick Start Guide</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="index.html" title="Valgrind Documentation"> <link rel="prev" href="index.html" title="Valgrind Documentation"> @@ -22,10 +22,10 @@ <div> <div><h1 class="title"> <a name="QuickStart"></a>The Valgrind Quick Start Guide</h1></div> -<div><p class="releaseinfo">Release 3.3.0 7 December 2007</p></div> -<div><p class="copyright">Copyright 2000-2007 <a href="http://www.valgrind.org/info/developers.html" target="_top">Valgrind Developers</a></p></div> +<div><p class="releaseinfo">Release 3.3.1 4 June 2008</p></div> +<div><p class="copyright">Copyright 2000-2008 <a href="http://www.valgrind.org/info/developers.html" target="_top">Valgrind Developers</a></p></div> <div><div class="legalnotice"> -<a name="id343245"></a><p>Email: <a href="mailto:val...@va..." target="_top">val...@va...</a></p> +<a name="id2555513"></a><p>Email: <a href="mailto:val...@va..." target="_top">val...@va...</a></p> </div></div> </div> <hr> Modified: trunk/docs/manual/cg-manual.html =================================================================== --- trunk/docs/manual/cg-manual.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/cg-manual.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>5.Cachegrind: a cache and branch profiler</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="manual.html" title="Valgrind User Manual"> <link rel="prev" href="mc-manual.html" title="4.Memcheck: a heavyweight memory checker"> @@ -35,6 +35,7 @@ <dt><span class="sect2"><a href="cg-manual.html#cg-manual.cgopts">5.2.2. Cachegrind options</a></span></dt> <dt><span class="sect2"><a href="cg-manual.html#cg-manual.annotate">5.2.3. Annotating C/C++ programs</a></span></dt> <dt><span class="sect2"><a href="cg-manual.html#cg-manual.assembler">5.2.4. Annotating assembly code programs</a></span></dt> +<dt><span class="sect2"><a href="cg-manual.html#ms-manual.forkingprograms">5.2.5. Forking Programs</a></span></dt> </dl></dd> <dt><span class="sect1"><a href="cg-manual.html#cg-manual.annopts">5.3. cg_annotate options</a></span></dt> <dd><dl> @@ -670,7 +671,18 @@ <p>You can then profile and annotate source files in the same way as for C/C++ programs.</p> </div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="ms-manual.forkingprograms"></a>5.2.5.Forking Programs</h3></div></div></div> +<p>If your program forks, the child will inherit all the profiling data that +has been gathered for the parent.</p> +<p>If the output file format string (controlled by +<code class="option">--cachegrind-out-file</code>) does not contain <code class="option">%p</code>, +then the outputs from the parent and child will be intermingled in a single +output file, which will almost certainly make it unreadable by +cg_annotate.</p> </div> +</div> <div class="sect1" lang="en"> <div class="titlepage"><div><div><h2 class="title" style="clear: both"> <a name="cg-manual.annopts"></a>5.3.cg_annotate options</h2></div></div></div> Modified: trunk/docs/manual/cl-format.html =================================================================== --- trunk/docs/manual/cl-format.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/cl-format.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>3.Callgrind Format Specification</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="tech-docs.html" title="Valgrind Technical Documentation"> <link rel="prev" href="writing-tools.html" title="2.Writing a New Valgrind Tool"> Modified: trunk/docs/manual/cl-manual.html =================================================================== --- trunk/docs/manual/cl-manual.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/cl-manual.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>6.Callgrind: a call graph profiler</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="manual.html" title="Valgrind User Manual"> <link rel="prev" href="cg-manual.html" title="5.Cachegrind: a cache and branch profiler"> Modified: trunk/docs/manual/dist.acknowledge.html =================================================================== --- trunk/docs/manual/dist.acknowledge.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/dist.acknowledge.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>1.ACKNOWLEDGEMENTS</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="dist.html" title="Valgrind Distribution Documents"> <link rel="prev" href="dist.html" title="Valgrind Distribution Documents"> Modified: trunk/docs/manual/dist.authors.html =================================================================== --- trunk/docs/manual/dist.authors.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/dist.authors.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>2.AUTHORS</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="dist.html" title="Valgrind Distribution Documents"> <link rel="prev" href="dist.acknowledge.html" title="1.ACKNOWLEDGEMENTS"> Modified: trunk/docs/manual/dist.html =================================================================== --- trunk/docs/manual/dist.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/dist.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Valgrind Distribution Documents</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="index.html" title="Valgrind Documentation"> <link rel="prev" href="cl-format.html" title="3.Callgrind Format Specification"> @@ -22,10 +22,10 @@ <div> <div><h1 class="title"> <a name="dist"></a>Valgrind Distribution Documents</h1></div> -<div><p class="releaseinfo">Release 3.3.0 7 December 2007</p></div> -<div><p class="copyright">Copyright 2000-2007 <a href="http://www.valgrind.org/info/developers.html" target="_top">Valgrind Developers</a></p></div> +<div><p class="releaseinfo">Release 3.3.1 4 June 2008</p></div> +<div><p class="copyright">Copyright 2000-2008 <a href="http://www.valgrind.org/info/developers.html" target="_top">Valgrind Developers</a></p></div> <div><div class="legalnotice"> -<a name="id358815"></a><p>Email: <a href="mailto:val...@va..." target="_top">val...@va...</a></p> +<a name="id2538191"></a><p>Email: <a href="mailto:val...@va..." target="_top">val...@va...</a></p> </div></div> </div> <hr> Modified: trunk/docs/manual/dist.install.html =================================================================== --- trunk/docs/manual/dist.install.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/dist.install.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>3.INSTALL</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="dist.html" title="Valgrind Distribution Documents"> <link rel="prev" href="dist.authors.html" title="2.AUTHORS"> Modified: trunk/docs/manual/dist.news.html =================================================================== --- trunk/docs/manual/dist.news.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/dist.news.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>4.NEWS</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="dist.html" title="Valgrind Distribution Documents"> <link rel="prev" href="dist.install.html" title="3.INSTALL"> @@ -22,6 +22,69 @@ <a name="dist.news"></a>4.NEWS</h2></div></div></div> <div class="literallayout"><p><br> <br> +Release3.3.1(4June2008)<br> +~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> +3.3.1fixesabunchofbugsin3.3.0,addssupportforglibc-2.8based<br> +systems(openSUSE11,FedoraCore9),improvestheexistingglibc-2.7<br> +support,andaddssupportfortheSSSE3(Core2)instructionset.<br> +<br> +3.3.1willlikelybethelastreleasethatsupportssomeveryold<br> +systems.Inparticular,thenextmajorrelease,3.4.0,willdrop<br> +supportfortheoldLinuxThreadsthreadinglibrary,andforgcc<br> +versionspriorto3.0.<br> +<br> +Thefixedbugsareasfollows.Notethat"n-i-bz"standsfor"notin<br> +bugzilla"--thatis,abugthatwasreportedtousbutnevergota<br> +bugzillaentry.Weencourageyoutofilebugsinbugzilla<br> +(http://bugs.kde.org/enter_valgrind_bug.cgi)ratherthanmailingthe<br> +developers(ormailinglists)directly--bugsthatarenotentered<br> +intobugzillatendtogetforgottenaboutorignored.<br> +<br> +n-i-bzMassifsegfaultsatexit<br> +n-i-bzMemcheckassertsonAltiveccode<br> +n-i-bzfixsizeofbuginHelgrind<br> +n-i-bzcheckfdonsys_llseek<br> +n-i-bzupdatesyscallliststokernel2.6.23.1<br> +n-i-bzsupportsys_sync_file_range<br> +n-i-bzhandlesys_sysinfo,sys_getresuid,sys_getresgidonppc64-linux<br> +n-i-bzinterceptmemcpyin64-bitld.so's<br> +n-i-bzFixwrappersforsys_{futimesat,utimensat}<br> +n-i-bzMinorfalse-erroravoidancefixesforMemcheck<br> +n-i-bzlibmpiwrap.c:addawrapperforMPI_Waitany<br> +n-i-bzhelgrindsupportforglibc-2.8<br> +n-i-bzpartialfixformc_leakcheck.c:698assert:<br> +'lc_shadows[i]->data+lc_shadows[i]...<br> +n-i-bzMassif/Cachegrindoutputcorruptionwhenprogramsfork<br> +n-i-bzregisterallocatorfix:handlespillstorescorrectly<br> +n-i-bzaddsupportforPA6TPowerPCCPUs<br> +126389vexx86->IR:0xF0xAE(FXRSTOR)<br> +158525==126389<br> +152818vexx86->IR:0xF30xAC(repzlodsb)<br> +153196vexx86->IR:0xF20xA6(repnzcmpsb)<br> +155011vexx86->IR:0xCF(iret)<br> +155091Warning[...]unhandledDW_OP_opcode0x23<br> +156960==155901<br> +155528supportCore2/SSSE3insnsonx86/amd64<br> +155929ms_printfailsonmassifoutputscontaininglonglines<br> +157665valgrindfailsonshmdt(0)aftershmatto0<br> +157748supportx86PUSHFW/POPFW<br> +158212helgrind:handlepthread_rwlock_try{rd,wr}lock.<br> +158425sys_pollincorrectlyemulatedwhenRES==0<br> +158744vexamd64->IR:0xF00x410xF0xC0(xaddb)<br> +160907SupportforacoupleofrecentLinuxsyscalls<br> +161285Patch--supportforeventfd()syscall<br> +161378illegalopcodeindebuglibm(FUCOMPP)<br> +160136==161378<br> +161487numberofsuppressionsfilesislimitedto10<br> +162386ms_printtypoinmillisecondstimeunitformassif<br> +161036exp-drd:clientallocatedmemorywasneverfreed<br> +162663signalfd_wrapperfailson64bitlinux<br> +<br> +(3.3.1.RC1:2June2008,vexr1854,valgrindr8169).<br> +(3.3.1:4June2008,vexr1854,valgrindr8180).<br> +<br> +<br> +<br> Release3.3.0(7December2007)<br> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br> 3.3.0isafeaturereleasewithmanysignificantimprovementsandthe<br> Modified: trunk/docs/manual/dist.readme-developers.html =================================================================== --- trunk/docs/manual/dist.readme-developers.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/dist.readme-developers.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>7.README_DEVELOPERS</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="dist.html" title="Valgrind Distribution Documents"> <link rel="prev" href="dist.readme-missing.html" title="6.README_MISSING_SYSCALL_OR_IOCTL"> Modified: trunk/docs/manual/dist.readme-missing.html =================================================================== --- trunk/docs/manual/dist.readme-missing.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/dist.readme-missing.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>6.README_MISSING_SYSCALL_OR_IOCTL</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="dist.html" title="Valgrind Distribution Documents"> <link rel="prev" href="dist.readme.html" title="5.README"> Modified: trunk/docs/manual/dist.readme-packagers.html =================================================================== --- trunk/docs/manual/dist.readme-packagers.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/dist.readme-packagers.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>8.README_PACKAGERS</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="dist.html" title="Valgrind Distribution Documents"> <link rel="prev" href="dist.readme-developers.html" title="7.README_DEVELOPERS"> Modified: trunk/docs/manual/dist.readme.html =================================================================== --- trunk/docs/manual/dist.readme.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/dist.readme.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>5.README</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="dist.html" title="Valgrind Distribution Documents"> <link rel="prev" href="dist.news.html" title="4.NEWS"> Modified: trunk/docs/manual/faq.html =================================================================== --- trunk/docs/manual/faq.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/faq.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Valgrind Frequently Asked Questions</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="FAQ.html" title="Valgrind FAQ"> <link rel="prev" href="FAQ.html" title="Valgrind FAQ"> @@ -125,8 +125,10 @@ <td align="left" valign="top"><b>How do you pronounce "Valgrind"?</b></td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-pronounce"></a></td> <td align="left" valign="top"> +<a name="a-pronounce"></a><b></b> +</td> +<td align="left" valign="top"> <p>The "Val" as in the world "value". The "grind" is pronounced with a short 'i' -- ie. "grinned" (rhymes with "tinned") rather than "grined" (rhymes with "find").</p> @@ -142,8 +144,10 @@ <td align="left" valign="top"><b>Where does the name "Valgrind" come from?</b></td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-whence"></a></td> <td align="left" valign="top"> +<a name="a-whence"></a><b></b> +</td> +<td align="left" valign="top"> <p>From Nordic mythology. Originally (before release) the project was named Heimdall, after the watchman of the Nordic gods. He could "see a hundred miles by day or night, hear the grass growing, see the @@ -188,7 +192,9 @@ </td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-make_dies"></a></td> +<td align="left" valign="top"> +<a name="a-make_dies"></a><b></b> +</td> <td align="left" valign="top"><p>It's probably a bug in 'make'. Some, but not all, instances of version 3.79.1 have this bug, see www.mail-archive.com/bug...@gn.../msg01658.html. Try upgrading to @@ -198,7 +204,7 @@ <tr><td colspan="2"></td></tr> <tr class="question"> <td align="left" valign="top"> -<a name="faq.glibc_devel"></a><a name="id397756"></a><b>2.2.</b> +<a name="faq.glibc_devel"></a><a name="id2564558"></a><b>2.2.</b> </td> <td align="left" valign="top"><b>When I try to build Valgrind, 'make' fails with <pre class="programlisting"> @@ -208,7 +214,7 @@ </b></td> </tr> <tr class="answer"> -<td align="left" valign="top"></td> +<td align="left" valign="top"><b></b></td> <td align="left" valign="top"><p>You need to install the glibc-static-devel package.</p></td> </tr> </table> @@ -234,8 +240,10 @@ with a segmentation fault.</b></td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-exit_errors"></a></td> <td align="left" valign="top"> +<a name="a-exit_errors"></a><b></b> +</td> +<td align="left" valign="top"> <p>When the program exits, Valgrind runs the procedure <code class="function">__libc_freeres()</code> in glibc. This is a hook for memory debuggers, so they can ask glibc to free up any memory it has @@ -260,7 +268,9 @@ </td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-bugdeath"></a></td> +<td align="left" valign="top"> +<a name="a-bugdeath"></a><b></b> +</td> <td align="left" valign="top"><p>If Memcheck (the memory checker) shows any invalid reads, invalid writes or invalid frees in your program, the above may happen. Reason is that your program may trash Valgrind's low-level @@ -280,8 +290,10 @@ </td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-msgdeath"></a></td> <td align="left" valign="top"> +<a name="a-msgdeath"></a><b></b> +</td> +<td align="left" valign="top"> <p>Older versions did not support some x86 and amd64 instructions, particularly SSE/SSE2/SSE3 instructions. Try a newer Valgrind; we now support almost all instructions. If it still breaks, file a bug @@ -303,8 +315,10 @@ Does Valgrind handle such programs?</b></td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-java"></a></td> <td align="left" valign="top"> +<a name="a-java"></a><b></b> +</td> +<td align="left" valign="top"> <p>Valgrind can handle dynamically generated code, so long as none of the generated code is later overwritten by other generated code. If this happens, though, things will go wrong as Valgrind @@ -353,8 +367,10 @@ the exit of the program, but there should be none.</b></td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-reports"></a></td> <td align="left" valign="top"> +<a name="a-reports"></a><b></b> +</td> +<td align="left" valign="top"> <p>First of all: relax, it's probably not a bug, but a feature. Many implementations of the C++ standard libraries use their own memory pool allocators. Memory for quite a number of destructed @@ -400,8 +416,10 @@ helpful. How can I improve them?</b></td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-unhelpful"></a></td> <td align="left" valign="top"> +<a name="a-unhelpful"></a><b></b> +</td> +<td align="left" valign="top"> <p>If they're not long enough, use <code class="option">--num-callers</code> to make them longer.</p> <p>If they're not detailed enough, make sure you are compiling @@ -475,7 +493,9 @@ have the wrong function name in them. What's happening?</b></td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-aliases"></a></td> +<td align="left" valign="top"> +<a name="a-aliases"></a><b></b> +</td> <td align="left" valign="top"><p>Occasionally Valgrind stack traces get the wrong function names. This is caused by glibc using aliases to effectively give one function two names. Most of the time Valgrind chooses a @@ -492,8 +512,10 @@ versa. What's happening?</b></td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-crashes"></a></td> <td align="left" valign="top"> +<a name="a-crashes"></a><b></b> +</td> +<td align="left" valign="top"> <p>When a program runs under Valgrind, its environment is slightly different to when it runs natively. For example, the memory layout is different, and the way that threads are scheduled is different.</p> @@ -531,8 +553,10 @@ program has errors.</b></td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-hiddenbug"></a></td> <td align="left" valign="top"> +<a name="a-hiddenbug"></a><b></b> +</td> +<td align="left" valign="top"> <p>There are two possible causes of this.</p> <p>First, by default, Valgrind only traces the top-level process. So if your program spawns children, they won't be traced by Valgrind @@ -588,7 +612,9 @@ </td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-overruns"></a></td> +<td align="left" valign="top"> +<a name="a-overruns"></a><b></b> +</td> <td align="left" valign="top"><p>Unfortunately, Memcheck doesn't do bounds checking on static or stack arrays. We'd like to, but it's just not possible to do in a reasonable way that fits with how Memcheck works. Sorry.</p></td> @@ -617,8 +643,10 @@ write my suppression for me?</b></td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-writesupp"></a></td> <td align="left" valign="top"> +<a name="a-writesupp"></a><b></b> +</td> +<td align="left" valign="top"> <p>Yes! Use the <code class="option">--gen-suppressions=yes</code> feature to spit out suppressions automatically for you. You can then edit them if you like, eg. combining similar automatically generated @@ -638,8 +666,10 @@ reachable", and "suppressed"?</b></td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-deflost"></a></td> <td align="left" valign="top"> +<a name="a-deflost"></a><b></b> +</td> +<td align="left" valign="top"> <p>The details are in the Memcheck section of the user manual.</p> <p>In short:</p> @@ -671,8 +701,10 @@ memory values?</b></td> </tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-undeferrors"></a></td> <td align="left" valign="top"> +<a name="a-undeferrors"></a><b></b> +</td> +<td align="left" valign="top"> <p>We'd love to improve these errors, but we don't know how to do it without huge performance penalties.</p> <p>You can use the client request @@ -698,8 +730,10 @@ </td></tr> <tr class="toc" colspan="2"><td align="left" valign="top" colspan="2"></td></tr> <tr class="answer"> -<td align="left" valign="top"><a name="a-help"></a></td> <td align="left" valign="top"> +<a name="a-help"></a><b></b> +</td> +<td align="left" valign="top"> <p>Please read all of this section before posting.</p> <p>If you think an answer is incomplete or inaccurate, please e-mail <a href="mailto:val...@va..." target="_top">val...@va...</a>.</p> Modified: trunk/docs/manual/hg-manual.html =================================================================== --- trunk/docs/manual/hg-manual.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/hg-manual.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>7.Helgrind: a thread error detector</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="manual.html" title="Valgrind User Manual"> <link rel="prev" href="cl-manual.html" title="6.Callgrind: a call graph profiler"> Modified: trunk/docs/manual/index.html =================================================================== --- trunk/docs/manual/index.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/index.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Valgrind Documentation</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="next" href="QuickStart.html" title="The Valgrind Quick Start Guide"> </head> @@ -14,12 +14,12 @@ <div> <div align="center"><h1 class="title"> <a name="set-index"></a>Valgrind Documentation</h1></div> -<div align="center"><p class="releaseinfo">Release 3.3.0 7 December 2007</p></div> -<div align="center"><p class="copyright">Copyright 2000-2007 +<div align="center"><p class="releaseinfo">Release 3.3.1 4 June 2008</p></div> +<div align="center"><p class="copyright">Copyright 2000-2008 <a href="dist.authors.html" title="2.AUTHORS">AUTHORS</a> </p></div> <div align="center"><div class="legalnotice"> -<a name="id310328"></a><p>Permission is granted to copy, distribute and/or modify +<a name="id2517382"></a><p>Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Modified: trunk/docs/manual/license.gfdl.html =================================================================== --- trunk/docs/manual/license.gfdl.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/license.gfdl.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>2.The GNU Free Documentation License</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="licenses.html" title="GNU Licenses"> <link rel="prev" href="license.gpl.html" title="1.The GNU General Public License"> Modified: trunk/docs/manual/license.gpl.html =================================================================== --- trunk/docs/manual/license.gpl.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/license.gpl.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>1.The GNU General Public License</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="licenses.html" title="GNU Licenses"> <link rel="prev" href="licenses.html" title="GNU Licenses"> Modified: trunk/docs/manual/licenses.html =================================================================== --- trunk/docs/manual/licenses.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/licenses.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>GNU Licenses</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="index.html" title="Valgrind Documentation"> <link rel="prev" href="dist.readme-packagers.html" title="8.README_PACKAGERS"> Modified: trunk/docs/manual/lk-manual.html =================================================================== --- trunk/docs/manual/lk-manual.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/lk-manual.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>10.Lackey: a simple profiler and memory tracer</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="manual.html" title="Valgrind User Manual"> <link rel="prev" href="nl-manual.html" title='9.Nulgrind: the "null" tool'> Modified: trunk/docs/manual/manual-core-adv.html =================================================================== --- trunk/docs/manual/manual-core-adv.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/manual-core-adv.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>3.Using and understanding the Valgrind core: Advanced Topics</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="manual.html" title="Valgrind User Manual"> <link rel="prev" href="manual-core.html" title="2.Using and understanding the Valgrind core"> Modified: trunk/docs/manual/manual-core.html =================================================================== --- trunk/docs/manual/manual-core.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/manual-core.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>2.Using and understanding the Valgrind core</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="manual.html" title="Valgrind User Manual"> <link rel="prev" href="manual-intro.html" title="1.Introduction"> @@ -610,7 +610,8 @@ <p><code class="option">%p</code> is replaced with the current process ID. This is very useful for program that invoke multiple processes. WARNING: If you use <code class="option">--trace-children=yes</code> and your - program invokes multiple processes and you don't use this specifier + program invokes multiple processes OR your program forks without + calling exec afterwards, and you don't use this specifier (or the <code class="option">%q</code> specifier below), the Valgrind output from all those processes will go into one file, possibly jumbled up, and possibly incomplete.</p> @@ -749,8 +750,8 @@ </span> </dt> <dd><p>Specifies an extra file from which to read descriptions of - errors to suppress. You may use as many extra suppressions files - as you like.</p></dd> + errors to suppress. You may use up to 100 extra suppression + files.</p></dd> <dt> <a name="opt.gen-suppressions"></a><span class="term"> <code class="option">--gen-suppressions=<yes|no|all> [default: no] </code> Modified: trunk/docs/manual/manual-intro.html =================================================================== --- trunk/docs/manual/manual-intro.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/manual-intro.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>1.Introduction</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="manual.html" title="Valgrind User Manual"> <link rel="prev" href="manual.html" title="Valgrind User Manual"> Modified: trunk/docs/manual/manual.html =================================================================== --- trunk/docs/manual/manual.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/manual.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Valgrind User Manual</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="index.html" title="Valgrind Documentation"> <link rel="prev" href="quick-start.html" title="The Valgrind Quick Start Guide"> @@ -22,10 +22,10 @@ <div> <div><h1 class="title"> <a name="manual"></a>Valgrind User Manual</h1></div> -<div><p class="releaseinfo">Release 3.3.0 7 December 2007</p></div> -<div><p class="copyright">Copyright 2000-2007 <a href="http://www.valgrind.org/info/developers.html" target="_top">Valgrind Developers</a></p></div> +<div><p class="releaseinfo">Release 3.3.1 4 June 2008</p></div> +<div><p class="copyright">Copyright 2000-2008 <a href="http://www.valgrind.org/info/developers.html" target="_top">Valgrind Developers</a></p></div> <div><div class="legalnotice"> -<a name="id390681"></a><p>Email: <a href="mailto:val...@va..." target="_top">val...@va...</a></p> +<a name="id2633206"></a><p>Email: <a href="mailto:val...@va..." target="_top">val...@va...</a></p> </div></div> </div> <hr> @@ -126,6 +126,7 @@ <dt><span class="sect2"><a href="cg-manual.html#cg-manual.cgopts">5.2.2. Cachegrind options</a></span></dt> <dt><span class="sect2"><a href="cg-manual.html#cg-manual.annotate">5.2.3. Annotating C/C++ programs</a></span></dt> <dt><span class="sect2"><a href="cg-manual.html#cg-manual.assembler">5.2.4. Annotating assembly code programs</a></span></dt> +<dt><span class="sect2"><a href="cg-manual.html#ms-manual.forkingprograms">5.2.5. Forking Programs</a></span></dt> </dl></dd> <dt><span class="sect1"><a href="cg-manual.html#cg-manual.annopts">5.3. cg_annotate options</a></span></dt> <dd><dl> @@ -191,6 +192,7 @@ <dt><span class="sect2"><a href="ms-manual.html#ms-manual.theoutputpreamble">8.2.2. The Output Preamble</a></span></dt> <dt><span class="sect2"><a href="ms-manual.html#ms-manual.theoutputgraph">8.2.3. The Output Graph</a></span></dt> <dt><span class="sect2"><a href="ms-manual.html#ms-manual.thesnapshotdetails">8.2.4. The Snapshot Details</a></span></dt> +<dt><span class="sect2"><a href="ms-manual.html#ms-manual.forkingprograms">8.2.5. Forking Programs</a></span></dt> </dl></dd> <dt><span class="sect1"><a href="ms-manual.html#ms-manual.options">8.3. Massif Options</a></span></dt> <dt><span class="sect1"><a href="ms-manual.html#ms-manual.ms_print-options">8.4. ms_print Options</a></span></dt> Modified: trunk/docs/manual/mc-manual.html =================================================================== --- trunk/docs/manual/mc-manual.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/mc-manual.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>4.Memcheck: a heavyweight memory checker</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="manual.html" title="Valgrind User Manual"> <link rel="prev" href="manual-core-adv.html" title="3.Using and understanding the Valgrind core: Advanced Topics"> Modified: trunk/docs/manual/ms-manual.html =================================================================== --- trunk/docs/manual/ms-manual.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/ms-manual.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>8.Massif: a heap profiler</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="manual.html" title="Valgrind User Manual"> <link rel="prev" href="hg-manual.html" title="7.Helgrind: a thread error detector"> @@ -30,6 +30,7 @@ <dt><span class="sect2"><a href="ms-manual.html#ms-manual.theoutputpreamble">8.2.2. The Output Preamble</a></span></dt> <dt><span class="sect2"><a href="ms-manual.html#ms-manual.theoutputgraph">8.2.3. The Output Graph</a></span></dt> <dt><span class="sect2"><a href="ms-manual.html#ms-manual.thesnapshotdetails">8.2.4. The Snapshot Details</a></span></dt> +<dt><span class="sect2"><a href="ms-manual.html#ms-manual.forkingprograms">8.2.5. Forking Programs</a></span></dt> </dl></dd> <dt><span class="sect1"><a href="ms-manual.html#ms-manual.options">8.3. Massif Options</a></span></dt> <dt><span class="sect1"><a href="ms-manual.html#ms-manual.ms_print-options">8.4. ms_print Options</a></span></dt> @@ -462,11 +463,21 @@ only prints the details for code locations responsible for more than 1%. The entries that do not meet this threshold are aggregated. This avoids filling up the output with large numbers of unimportant entries. The -thresholds threshold can be changed with the +thresholds can be changed with the <code class="computeroutput">--threshold</code> option that both Massif and ms_print support.</p> </div> +<div class="sect2" lang="en"> +<div class="titlepage"><div><div><h3 class="title"> +<a name="ms-manual.forkingprograms"></a>8.2.5.Forking Programs</h3></div></div></div> +<p>If your program forks, the child will inherit all the profiling data that +has been gathered for the parent.</p> +<p>If the output file format string (controlled by +<code class="option">--massif-out-file</code>) does not contain <code class="option">%p</code>, then +the outputs from the parent and child will be intermingled in a single output +file, which will almost certainly make it unreadable by ms_print.</p> </div> +</div> <div class="sect1" lang="en"> <div class="titlepage"><div><div><h2 class="title" style="clear: both"> <a name="ms-manual.options"></a>8.3.Massif Options</h2></div></div></div> @@ -653,7 +664,7 @@ <div class="titlepage"><div><div><h2 class="title" style="clear: both"> <a name="ms-manual.fileformat"></a>8.5.Massif's output file format</h2></div></div></div> <p>Massif's file format is plain text (i.e. not binary) and deliberately -easy to read for both humands and machines. Nonetheless, the exact format +easy to read for both humans and machines. Nonetheless, the exact format is not described here. This is because the format is currently very Massif-specific. We plan to make the format more general, and thus suitable for possible use with other tools. Once this has been done, the format will Modified: trunk/docs/manual/nl-manual.html =================================================================== --- trunk/docs/manual/nl-manual.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/nl-manual.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>9.Nulgrind: the "null" tool</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="manual.html" title="Valgrind User Manual"> <link rel="prev" href="ms-manual.html" title="8.Massif: a heap profiler"> Modified: trunk/docs/manual/quick-start.html =================================================================== --- trunk/docs/manual/quick-start.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/quick-start.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>The Valgrind Quick Start Guide</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="QuickStart.html" title="The Valgrind Quick Start Guide"> <link rel="prev" href="QuickStart.html" title="The Valgrind Quick Start Guide"> Modified: trunk/docs/manual/tech-docs.html =================================================================== --- trunk/docs/manual/tech-docs.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/tech-docs.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Valgrind Technical Documentation</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="index.html" title="Valgrind Documentation"> <link rel="prev" href="faq.html" title="Valgrind Frequently Asked Questions"> @@ -22,10 +22,10 @@ <div> <div><h1 class="title"> <a name="tech-docs"></a>Valgrind Technical Documentation</h1></div> -<div><p class="releaseinfo">Release 3.3.0 7 December 2007</p></div> -<div><p class="copyright">Copyright 2000-2007 <a href="http://www.valgrind.org/info/developers.html" target="_top">Valgrind Developers</a></p></div> +<div><p class="releaseinfo">Release 3.3.1 4 June 2008</p></div> +<div><p class="copyright">Copyright 2000-2008 <a href="http://www.valgrind.org/info/developers.html" target="_top">Valgrind Developers</a></p></div> <div><div class="legalnotice"> -<a name="id418006"></a><p>Email: <a href="mailto:val...@va..." target="_top">val...@va...</a></p> +<a name="id2639908"></a><p>Email: <a href="mailto:val...@va..." target="_top">val...@va...</a></p> </div></div> </div> <hr> Modified: trunk/docs/manual/valgrind_manual.html.tar.bz2 =================================================================== (Binary files differ) Modified: trunk/docs/manual/valgrind_manual.pdf =================================================================== (Binary files differ) Modified: trunk/docs/manual/valgrind_manual.ps.bz2 =================================================================== (Binary files differ) Modified: trunk/docs/manual/writing-tools.html =================================================================== --- trunk/docs/manual/writing-tools.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/docs/manual/writing-tools.html 2008-06-04 10:46:20 UTC (rev 354) @@ -3,7 +3,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>2.Writing a New Valgrind Tool</title> <link rel="stylesheet" href="vg_basic.css" type="text/css"> -<meta name="generator" content="DocBook XSL Stylesheets V1.71.1"> +<meta name="generator" content="DocBook XSL Stylesheets V1.69.1"> <link rel="start" href="index.html" title="Valgrind Documentation"> <link rel="up" href="tech-docs.html" title="Valgrind Technical Documentation"> <link rel="prev" href="new-tech-docs.html" title="1.The Design and Implementation of Valgrind"> @@ -135,8 +135,8 @@ <code class="computeroutput">"fb_"</code> again.</p></li> <li><p>Edit <code class="filename">Makefile.am</code>, adding the new directory <code class="filename">foobar</code> to the - <code class="computeroutput">TOOLS</code> and - <code class="computeroutput">SUBDIRS</code>variables.</p></li> + <code class="computeroutput">TOOLS</code> or + <code class="computeroutput">EXP_TOOLS</code>variables.</p></li> <li><p>Edit <code class="filename">configure.in</code>, adding <code class="filename">foobar/Makefile</code>, <code class="filename">foobar/docs/Makefile</code> and Modified: trunk/downloads/current.html =================================================================== --- trunk/downloads/current.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/downloads/current.html 2008-06-04 10:46:20 UTC (rev 354) @@ -18,25 +18,20 @@ <div id="release"> -<a name="current"><h3>Release 3.3.0</h3></a> +<a name="current"><h3>Release 3.3.1</h3></a> -<p><a href="/downloads/valgrind-3.3.0.tar.bz2">valgrind 3.3.0 (tar.bz2)</a> -[4520Kb] - 11 December 2007.<br /> +<p><a href="/downloads/valgrind-3.3.1.tar.bz2">valgrind 3.3.1 (tar.bz2)</a> +[4544Kb] - 4 June 2008.<br /> For {x86,amd64,ppc32,ppc64}-linux.<br /> -<span class="md5sum">md5: e5fc39755a714f36b7e5014c1c6d4748</span></p> +<span class="md5sum">md5: 0539e2fa4aadb2cd4ca4bba65b1fe8b5</span></p> <p>You may want to look at the -<a href="/docs/manual/dist.news.html">3.3.0 release notes</a>. +<a href="/docs/manual/dist.news.html">3.3.1 release notes</a>. </p> -<p>3.3.0 primarily contains tool enhancements: a restored and improved -version of Helgrind (thread checker), majorly revamped version of -Massif (space profiler), branch-mispredict profiling for Cachegrind, -and new experimental tools (Omega and DRD). Also includes support for -recent Linux distros (Fedora 8, openSUSE 10.3), scalability -improvements (for gigabyte-sized applications), modestly improved -documentation, fixes for 56 bug reports, experimental support for -AIX5.3, and many minor refinements.</p> +<p>3.3.1 fixes a bunch of bugs in 3.3.0, adds support for glibc-2.8 based +systems (openSUSE 11, Fedora Core 9), improves the existing glibc-2.7 +support, and adds support for the SSSE3 (Core 2) instruction set.</p> Modified: trunk/downloads/old.html =================================================================== --- trunk/downloads/old.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/downloads/old.html 2008-06-04 10:46:20 UTC (rev 354) @@ -14,6 +14,29 @@ <div class="hr_brown"><hr/></div> +<h3>valgrind-3.3.0</h3> + +<p>valgrind 3.3.0 (tar.bz2)</a> +[4520Kb] - 11 December 2007.<br /> +For {x86,amd64,ppc32,ppc64}-linux.<br /> +<span class="md5sum">md5: e5fc39755a714f36b7e5014c1c6d4748</span></p> + +<p>You may want to look at the +<a href="/docs/manual/dist.news.html">3.3.0 release notes</a>. +</p> + +<p>3.3.0 primarily contains tool enhancements: a restored and improved +version of Helgrind (thread checker), majorly revamped version of +Massif (space profiler), branch-mispredict profiling for Cachegrind, +and new experimental tools (Omega and DRD). Also includes support for +recent Linux distros (Fedora 8, openSUSE 10.3), scalability +improvements (for gigabyte-sized applications), modestly improved +documentation, fixes for 56 bug reports, experimental support for +AIX5.3, and many minor refinements.</p> + + + +<div class="hr_brown"><hr/></div> <h3>valgrind-3.2.3</h3> <p>valgrind 3.2.3 (tar.bz2)</a> Modified: trunk/info/developers.html =================================================================== --- trunk/info/developers.html 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/info/developers.html 2008-06-04 10:46:20 UTC (rev 354) @@ -68,10 +68,17 @@ <?php echo vgemail('julian'); ?></td> <td>Julian was the original designer and author of Valgrind, created the dynamic translation frameworks, wrote Memcheck and - Addrcheck, and did lots of other things. + Addrcheck, and did lots of other things.</td> </tr> <tr valign="top"> + <td><b>Bart Van Assche</b><br /> + </td> + <td>Bart is the author of exp-drd, a tool for finding bugs in + threaded programs, that first shipped in the 3.3.0 release. +</tr> + +<tr valign="top"> <td><b>Robert Walsh</b><br /> <?php echo vgemail('robert'); ?></td> <td>Robert added file descriptor leakage checking, new library interception Modified: trunk/php/.htconfx =================================================================== --- trunk/php/.htconfx 2008-05-30 11:29:01 UTC (rev 353) +++ trunk/php/.htconfx 2008-06-04 10:46:20 UTC (rev 354) @@ -24,11 +24,11 @@ 'inc_dir' => $base_dir . '/php/', 'img_dir' => $base_dir . '/images/', - 'dt_copyright' => '2000-2007', + 'dt_copyright' => '2000-2008', /* current release info */ - 'release-date' => 'December 11 2007', - 'release-version' => 'valgrind-3.3.0', + 'release-date' => '4 June 2008', + 'release-version' => 'valgrind-3.3.1', /* mailing lists, bug reports, etc. */ 'vgannounce' => array( |
|
From: <sv...@va...> - 2008-06-04 09:10:40
|
Author: sewardj
Date: 2008-06-04 10:10:38 +0100 (Wed, 04 Jun 2008)
New Revision: 1855
Log:
Translate "fnstsw %ax" in a slightly different way, which plays better
with Memcheck's origin tracking stuff. a.k.a. a lame kludge. See
comments in source.
Modified:
trunk/priv/guest-x86/toIR.c
Modified: trunk/priv/guest-x86/toIR.c
===================================================================
--- trunk/priv/guest-x86/toIR.c 2008-05-31 08:30:13 UTC (rev 1854)
+++ trunk/priv/guest-x86/toIR.c 2008-06-04 09:10:38 UTC (rev 1855)
@@ -5027,7 +5027,25 @@
case 0xE0: /* FNSTSW %ax */
DIP("fnstsw %%ax\n");
/* Get the FPU status word value and dump it in %AX. */
- putIReg(2, R_EAX, get_FPU_sw());
+ if (0) {
+ /* The obvious thing to do is simply dump the 16-bit
+ status word value in %AX. However, due to a
+ limitation in Memcheck's origin tracking
+ machinery, this causes Memcheck not to track the
+ origin of any undefinedness into %AH (only into
+ %AL/%AX/%EAX), which means origins are lost in
+ the sequence "fnstsw %ax; test $M,%ah; jcond .." */
+ putIReg(2, R_EAX, get_FPU_sw());
+ } else {
+ /* So a somewhat lame kludge is to make it very
+ clear to Memcheck that the value is written to
+ both %AH and %AL. This generates marginally
+ worse code, but I don't think it matters much. */
+ IRTemp t16 = newTemp(Ity_I16);
+ assign(t16, get_FPU_sw());
+ putIReg( 1, R_AL, unop(Iop_16to8, mkexpr(t16)) );
+ putIReg( 1, R_AH, unop(Iop_16HIto8, mkexpr(t16)) );
+ }
break;
case 0xE8 ... 0xEF: /* FUCOMIP %st(0),%st(?) */
|
|
From: <sv...@va...> - 2008-06-04 09:07:44
|
Author: sewardj
Date: 2008-06-04 10:07:36 +0100 (Wed, 04 Jun 2008)
New Revision: 8181
Log:
Followup to r8178: don't segfault if VG_(clo_log_name) is NULL.
Modified:
trunk/coregrind/m_main.c
Modified: trunk/coregrind/m_main.c
===================================================================
--- trunk/coregrind/m_main.c 2008-06-04 07:04:12 UTC (rev 8180)
+++ trunk/coregrind/m_main.c 2008-06-04 09:07:36 UTC (rev 8181)
@@ -854,7 +854,8 @@
VG_(message)(Vg_UserMsg, "<pid>%d</pid>", VG_(getpid)());
VG_(message)(Vg_UserMsg, "<ppid>%d</ppid>", VG_(getppid)());
VG_(message)(Vg_UserMsg, "<tool>%t</tool>", toolname);
- print_file_vars(VG_(clo_log_name));
+ if (VG_(clo_log_name))
+ print_file_vars(VG_(clo_log_name));
if (VG_(clo_xml_user_comment)) {
/* Note: the user comment itself is XML and is therefore to
be passed through verbatim (%s) rather than escaped
|
|
From: <sv...@va...> - 2008-06-04 07:04:05
|
Author: sewardj
Date: 2008-06-04 08:04:12 +0100 (Wed, 04 Jun 2008)
New Revision: 8180
Log:
Finalise 3.3.1.
Modified:
branches/VALGRIND_3_3_BRANCH/NEWS
branches/VALGRIND_3_3_BRANCH/configure.in
branches/VALGRIND_3_3_BRANCH/docs/xml/vg-entities.xml
Modified: branches/VALGRIND_3_3_BRANCH/NEWS
===================================================================
--- branches/VALGRIND_3_3_BRANCH/NEWS 2008-06-04 07:01:22 UTC (rev 8179)
+++ branches/VALGRIND_3_3_BRANCH/NEWS 2008-06-04 07:04:12 UTC (rev 8180)
@@ -1,9 +1,9 @@
-Release 3.3.1 (2 June 2008)
+Release 3.3.1 (4 June 2008)
~~~~~~~~~~~~~~~~~~~~~~~~~~~
3.3.1 fixes a bunch of bugs in 3.3.0, adds support for glibc-2.8 based
-systems (openSUSE 11, Fedora Core 9), and adds support for the SSSE3
-(Core 2) instruction set.
+systems (openSUSE 11, Fedora Core 9), improves the existing glibc-2.7
+support, and adds support for the SSSE3 (Core 2) instruction set.
3.3.1 will likely be the last release that supports some very old
systems. In particular, the next major release, 3.4.0, will drop
@@ -32,7 +32,8 @@
n-i-bz partial fix for mc_leakcheck.c:698 assert:
'lc_shadows[i]->data + lc_shadows[i] ...
n-i-bz Massif/Cachegrind output corruption when programs fork
-n-i-bz regalloc: don't incorrectly omit spill stores
+n-i-bz register allocator fix: handle spill stores correctly
+n-i-bz add support for PA6T PowerPC CPUs
126389 vex x86->IR: 0xF 0xAE (FXRSTOR)
158525 ==126389
152818 vex x86->IR: 0xF3 0xAC (repz lodsb)
@@ -44,7 +45,7 @@
155929 ms_print fails on massif outputs containing long lines
157665 valgrind fails on shmdt(0) after shmat to 0
157748 support x86 PUSHFW/POPFW
-158212 hg: handle pthread_rwlock_try{rd,wr}lock.
+158212 helgrind: handle pthread_rwlock_try{rd,wr}lock.
158425 sys_poll incorrectly emulated when RES==0
158744 vex amd64->IR: 0xF0 0x41 0xF 0xC0 (xaddb)
160907 Support for a couple of recent Linux syscalls
@@ -56,9 +57,11 @@
161036 exp-drd: client allocated memory was never freed
162663 signalfd_wrapper fails on 64bit linux
-(3.3.1.RC1: 1 June 2008, vex r1854, valgrind r8168).
+(3.3.1.RC1: 2 June 2008, vex r1854, valgrind r8169).
+(3.3.1: 4 June 2008, vex r1854, valgrind r8180).
+
Release 3.3.0 (7 December 2007)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3.3.0 is a feature release with many significant improvements and the
Modified: branches/VALGRIND_3_3_BRANCH/configure.in
===================================================================
--- branches/VALGRIND_3_3_BRANCH/configure.in 2008-06-04 07:01:22 UTC (rev 8179)
+++ branches/VALGRIND_3_3_BRANCH/configure.in 2008-06-04 07:04:12 UTC (rev 8180)
@@ -8,7 +8,7 @@
##------------------------------------------------------------##
# Process this file with autoconf to produce a configure script.
-AC_INIT(Valgrind, 3.3.1.RC1, val...@li...)
+AC_INIT(Valgrind, 3.3.1, val...@li...)
AC_CONFIG_SRCDIR(coregrind/m_main.c)
AM_CONFIG_HEADER(config.h)
AM_INIT_AUTOMAKE
Modified: branches/VALGRIND_3_3_BRANCH/docs/xml/vg-entities.xml
===================================================================
--- branches/VALGRIND_3_3_BRANCH/docs/xml/vg-entities.xml 2008-06-04 07:01:22 UTC (rev 8179)
+++ branches/VALGRIND_3_3_BRANCH/docs/xml/vg-entities.xml 2008-06-04 07:04:12 UTC (rev 8180)
@@ -8,7 +8,7 @@
<!-- valgrind release + version stuff -->
<!ENTITY rel-type "Release">
<!ENTITY rel-version "3.3.1">
-<!ENTITY rel-date "2 June 2008">
+<!ENTITY rel-date "4 June 2008">
<!-- where the docs are installed -->
<!ENTITY vg-doc-path "/usr/share/doc/valgrind/html/index.html">
|
|
From: <sv...@va...> - 2008-06-04 07:01:19
|
Author: sewardj
Date: 2008-06-04 08:01:22 +0100 (Wed, 04 Jun 2008)
New Revision: 8179
Log:
Merge r8177 (Add '*flags |= SfMayBlock' to PRE(sys_sync_file_range).)
Modified:
branches/VALGRIND_3_3_BRANCH/coregrind/m_syswrap/syswrap-linux.c
Modified: branches/VALGRIND_3_3_BRANCH/coregrind/m_syswrap/syswrap-linux.c
===================================================================
--- branches/VALGRIND_3_3_BRANCH/coregrind/m_syswrap/syswrap-linux.c 2008-06-04 06:51:58 UTC (rev 8178)
+++ branches/VALGRIND_3_3_BRANCH/coregrind/m_syswrap/syswrap-linux.c 2008-06-04 07:01:22 UTC (rev 8179)
@@ -2275,13 +2275,14 @@
PRE(sys_sync_file_range)
{
- PRINT("sys_sync_file_range ( %d, %lld, %lld, %d )",
- ARG1,ARG2,ARG3,ARG4);
- PRE_REG_READ4(long, "sync_file_range",
- int, fd, vki_loff_t, offset, vki_loff_t, nbytes,
- unsigned int, flags);
- if (!ML_(fd_allowed)(ARG1, "sync_file_range", tid, False))
- SET_STATUS_Failure( VKI_EBADF );
+ *flags |= SfMayBlock;
+ PRINT("sys_sync_file_range ( %d, %lld, %lld, %d )",
+ ARG1,ARG2,ARG3,ARG4);
+ PRE_REG_READ4(long, "sync_file_range",
+ int, fd, vki_loff_t, offset, vki_loff_t, nbytes,
+ unsigned int, flags);
+ if (!ML_(fd_allowed)(ARG1, "sync_file_range", tid, False))
+ SET_STATUS_Failure( VKI_EBADF );
}
/* ---------------------------------------------------------------------
|
|
From: Julian S. <js...@ac...> - 2008-06-04 06:54:13
|
On Monday 02 June 2008 12:10, Ashley Pittman wrote: > On Mon, 2008-06-02 at 11:53 +0200, Julian Seward wrote: > > I have put a release candidate for 3.3.1 at > > > > http://www.valgrind.org/downloads/valgrind-3.3.1.RC1.tar.bz2 > > (md5 = 7b8325af2156c679d825d15eb38a0bd4) > > > > Please download and try it on platforms that are important to you, and > > let me know of any critical breakage. If no critical problems are > > reported, I plan to make make the final 3.3.1 release on Wednesday 4 > > June. > > Could you apply this patch to re-enable the log file qualifier in the > xml output. Applied to the trunk. Ta. I'd prefer not to change the visible behaviour of the stable branch at this point. > Also did the VPATH build issue get fixed? No .. there's a patch floating around somewhere, isn't there, that you sent before? Not sure where though. Any ideas? J |
|
From: <sv...@va...> - 2008-06-04 06:51:53
|
Author: sewardj
Date: 2008-06-04 07:51:58 +0100 (Wed, 04 Jun 2008)
New Revision: 8178
Log:
Reinstate printing of log-file-qualifiers in XML output (Ashley Pittman).
Modified:
trunk/coregrind/m_main.c
trunk/docs/internals/xml-output.txt
Modified: trunk/coregrind/m_main.c
===================================================================
--- trunk/coregrind/m_main.c 2008-06-04 06:49:56 UTC (rev 8177)
+++ trunk/coregrind/m_main.c 2008-06-04 06:51:58 UTC (rev 8178)
@@ -719,7 +719,48 @@
return (log_to == VgLogTo_Fd);
}
+// Write the name and value of log file qualifiers to the xml file.
+static void print_file_vars(Char* format)
+{
+ Int i = 0;
+
+ while (format[i]) {
+ if (format[i] == '%') {
+ // We saw a '%'. What's next...
+ i++;
+ if ('q' == format[i]) {
+ i++;
+ if ('{' == format[i]) {
+ // Get the env var name, print its contents.
+ Char* qualname;
+ Char* qual;
+ i++;
+ qualname = &format[i];
+ while (True) {
+ if ('}' == format[i]) {
+ // Temporarily replace the '}' with NUL to extract var
+ // name.
+ format[i] = 0;
+ qual = VG_(getenv)(qualname);
+ break;
+ }
+ i++;
+ }
+ VG_(message)(Vg_UserMsg, "<logfilequalifier> <var>%t</var> "
+ "<value>%t</value> </logfilequalifier>",
+ qualname,qual);
+ format[i] = '}';
+ i++;
+ }
+ }
+ } else {
+ i++;
+ }
+ }
+}
+
+
/*====================================================================*/
/*=== Printing the preamble ===*/
/*====================================================================*/
@@ -813,16 +854,7 @@
VG_(message)(Vg_UserMsg, "<pid>%d</pid>", VG_(getpid)());
VG_(message)(Vg_UserMsg, "<ppid>%d</ppid>", VG_(getppid)());
VG_(message)(Vg_UserMsg, "<tool>%t</tool>", toolname);
-// [This was made obsolete by the --log-file change in 3.3.0. But
-// I'm leaving it here (commented out) in case it needs to be reinstated in
-// some way --njn]
-// if (VG_(clo_log_file_qualifier)) {
-// HChar* val = VG_(getenv)(VG_(clo_log_file_qualifier));
-// VG_(message)(Vg_UserMsg, "<logfilequalifier> <var>%t</var> "
-// "<value>%t</value> </logfilequalifier>",
-// VG_(clo_log_file_qualifier),
-// val ? val : "");
-// }
+ print_file_vars(VG_(clo_log_name));
if (VG_(clo_xml_user_comment)) {
/* Note: the user comment itself is XML and is therefore to
be passed through verbatim (%s) rather than escaped
Modified: trunk/docs/internals/xml-output.txt
===================================================================
--- trunk/docs/internals/xml-output.txt 2008-06-04 06:49:56 UTC (rev 8177)
+++ trunk/docs/internals/xml-output.txt 2008-06-04 06:51:58 UTC (rev 8178)
@@ -115,8 +115,7 @@
----------------------
Changes in 3.4.X (tentative): (jrs, 1 March 2008)
-* There may be more than one <logfilequalifier> clause, depending on
- how this pans out. (AshleyP perhaps to investigate)
+* There may be more than one <logfilequalifier> clause.
* Some errors may have two <auxwhat> blocks, rather than just one
(resulting from merge of the DATASYMS branch)
|
|
From: <sv...@va...> - 2008-06-04 06:49:53
|
Author: sewardj
Date: 2008-06-04 07:49:56 +0100 (Wed, 04 Jun 2008)
New Revision: 8177
Log:
Add '*flags |= SfMayBlock' to PRE(sys_sync_file_range).
Modified:
trunk/coregrind/m_syswrap/syswrap-linux.c
Modified: trunk/coregrind/m_syswrap/syswrap-linux.c
===================================================================
--- trunk/coregrind/m_syswrap/syswrap-linux.c 2008-06-03 20:58:46 UTC (rev 8176)
+++ trunk/coregrind/m_syswrap/syswrap-linux.c 2008-06-04 06:49:56 UTC (rev 8177)
@@ -2275,13 +2275,14 @@
PRE(sys_sync_file_range)
{
- PRINT("sys_sync_file_range ( %d, %lld, %lld, %d )",
- ARG1,ARG2,ARG3,ARG4);
- PRE_REG_READ4(long, "sync_file_range",
- int, fd, vki_loff_t, offset, vki_loff_t, nbytes,
- unsigned int, flags);
- if (!ML_(fd_allowed)(ARG1, "sync_file_range", tid, False))
- SET_STATUS_Failure( VKI_EBADF );
+ *flags |= SfMayBlock;
+ PRINT("sys_sync_file_range ( %d, %lld, %lld, %d )",
+ ARG1,ARG2,ARG3,ARG4);
+ PRE_REG_READ4(long, "sync_file_range",
+ int, fd, vki_loff_t, offset, vki_loff_t, nbytes,
+ unsigned int, flags);
+ if (!ML_(fd_allowed)(ARG1, "sync_file_range", tid, False))
+ SET_STATUS_Failure( VKI_EBADF );
}
/* ---------------------------------------------------------------------
|
|
From: Tom H. <th...@cy...> - 2008-06-04 02:58:39
|
Nightly build on aston ( x86_64, Fedora Core 5 ) started at 2008-06-04 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 == 437 tests, 7 stderr failures, 1 stdout failure, 0 post failures == 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-06-04 02:42:55
|
Nightly build on lloyd ( x86_64, Fedora 7 ) started at 2008-06-04 03:05:04 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 == 431 tests, 4 stderr failures, 2 stdout failures, 0 post failures == 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-06-04 02:41:47
|
Nightly build on trojan ( x86_64, Fedora Core 6 ) started at 2008-06-04 03:25:04 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 == 435 tests, 6 stderr failures, 5 stdout failures, 0 post failures == 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 == 435 tests, 7 stderr failures, 5 stdout failures, 0 post failures == 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 Wed Jun 4 03:33:33 2008 --- new.short Wed Jun 4 03:41:53 2008 *************** *** 8,10 **** ! == 435 tests, 7 stderr failures, 5 stdout failures, 0 post failures == memcheck/tests/pointer-trace (stderr) --- 8,10 ---- ! == 435 tests, 6 stderr failures, 5 stdout failures, 0 post failures == memcheck/tests/pointer-trace (stderr) *************** *** 17,19 **** none/tests/mremap2 (stdout) - helgrind/tests/tc17_sembar (stderr) helgrind/tests/tc20_verifywrap (stderr) --- 17,18 ---- |
|
From: Tom H. <th...@cy...> - 2008-06-04 02:37:41
|
Nightly build on dellow ( x86_64, Fedora 8 ) started at 2008-06-04 03:10:07 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 431 tests, 7 stderr failures, 3 stdout failures, 0 post failures == memcheck/tests/pointer-trace (stderr) memcheck/tests/vcpu_fnfns (stdout) memcheck/tests/x86/scalar (stderr) none/tests/blockfault (stderr) none/tests/mremap2 (stdout) none/tests/pth_cvsimple (stdout) helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc20_verifywrap (stderr) helgrind/tests/tc21_pthonce (stderr) helgrind/tests/tc22_exit_w_lock (stderr) |
|
From: Stephen M.
|
>>>>> "JC" == Jim Clause <cl...@cc...> writes:
JC> Hi,
JC> I'm encountering a case where I'm getting an unexpected (to me) IR
JC> generation from VEX. When VEX generates IR from the following
JC> function:
JC> Dump of assembler code for function main:
....
JC> 0x00001ff4 <main+38>: movb $0x1,(%eax)
JC> The movb instruction at main+38 is transformed into STle(t21) =
JC> 0x1:I8, which looks good except that the type of the destination
JC> is Ity_I32 not Ity_I8 like I would expect. Is Ity_I32 the correct
JC> size for t21?
In full, it's translated into something like:
------ IMark(0x804839A, 3) ------
PUT(60) = 0x804839A:I32
t21 = GET:I32(0)
STle(t21) = 0x1:I8
STle represents a store to memory, and the argument in parentheses is
the address of the location to store. So I think that it's right for
it to be word-sized (32 bits for an x86), not the size of the data
you're storing. In the full example, you can see that the value of t21
is GET:I32(0), which is the way the IR refers to %eax in the guest
state.
JC> If it's not a possible fix might be to change disAMode_copy2tmp to
JC> generate a new temporary that the same size as it's argument
JC> rather than just a new Ity_I32.
I think the argument to disAMode_copy2tmp for the x86 is already
always an I32 expression, as suggested by the parameter name "addr32".
If it were anything else, it would be an IR type error to assign it to
an I32 temporary: you always have to be explicit about size
conversions in IR.
Hope this helps,
-- Stephen
|
|
From: Tom H. <th...@cy...> - 2008-06-04 02:23:11
|
Nightly build on gill ( x86_64, Fedora Core 2 ) started at 2008-06-04 03:00:03 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 437 tests, 30 stderr failures, 3 stdout failures, 0 post failures == 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) |
|
From: Jim C. <cl...@cc...> - 2008-06-04 01:34:50
|
Hi, I'm encountering a case where I'm getting an unexpected (to me) IR generation from VEX. When VEX generates IR from the following function: Dump of assembler code for function main: 0x00001fce <main+0>: push %ebp 0x00001fcf <main+1>: mov %esp,%ebp 0x00001fd1 <main+3>: sub $0x28,%esp 0x00001fd4 <main+6>: movl $0x0,-0x10(%ebp) 0x00001fdb <main+13>: movl $0x40,(%esp) 0x00001fe2 <main+20>: call 0x3005 <dyld_stub_malloc> 0x00001fe7 <main+25>: mov %eax,-0x10(%ebp) 0x00001fea <main+28>: lea -0x10(%ebp),%eax 0x00001fed <main+31>: mov %eax,-0xc(%ebp) 0x00001ff0 <main+34>: mov -0xc(%ebp),%eax 0x00001ff3 <main+37>: inc %eax 0x00001ff4 <main+38>: movb $0x1,(%eax) 0x00001ff7 <main+41>: mov $0x0,%eax 0x00001ffc <main+46>: leave 0x00001ffd <main+47>: ret End of assembler dump. The movb instruction at main+38 is transformed into STle(t21) = 0x1:I8, which looks good except that the type of the destination is Ity_I32 not Ity_I8 like I would expect. Is Ity_I32 the correct size for t21? If it's not a possible fix might be to change disAMode_copy2tmp to generate a new temporary that the same size as it's argument rather than just a new Ity_I32. Thanks, Jim |