From: Bart Van Assche Date: Wed, 4 Jun 2008 18:08:10 +0000 (+0000) Subject: Documentation updates. X-Git-Tag: svn/VALGRIND_3_4_0~517 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8c64ad3736ac7a2c5813469ec73ca44c3f27ab50;p=thirdparty%2Fvalgrind.git Documentation updates. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8187 --- diff --git a/exp-drd/TODO.txt b/exp-drd/TODO.txt index 53a4a10ddd..530642917d 100644 --- a/exp-drd/TODO.txt +++ b/exp-drd/TODO.txt @@ -8,13 +8,12 @@ Data-race detection algorithm 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 @@ Documentation (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 @@ Limitations ~~~~~~~~~~~ - 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. diff --git a/exp-drd/docs/README.txt b/exp-drd/docs/README.txt index f7f3d6a285..3e5b8746d7 100644 --- a/exp-drd/docs/README.txt +++ b/exp-drd/docs/README.txt @@ -353,50 +353,7 @@ function system-gcc { unset CC LD_LIBRARY_PATH; export CC LD_LIBRARY_PATH; } 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: - ---------------------------------------------------------------------------- -#!/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 $? ---------------------------------------------------------------------------- +For an example of how to recompile gcc, see also the script exp-drd/scripts/compile-gcc. Future DRD Versions @@ -423,6 +380,11 @@ Julian Seward as regression tests for the Helgrind tool. 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 ---------- diff --git a/exp-drd/scripts/compile-gcc b/exp-drd/scripts/compile-gcc new file mode 100755 index 0000000000..b74ea14123 --- /dev/null +++ b/exp-drd/scripts/compile-gcc @@ -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 $?