From: Nicholas Nethercote Date: Thu, 3 Oct 2002 10:07:34 +0000 (+0000) Subject: Added basic docs for Helgrind, Lackey, CoreCheck. X-Git-Tag: svn/VALGRIND_1_9_4~257 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a43fe4a74cb5e3bf0e3787c6f5e71ca8a3647d6b;p=thirdparty%2Fvalgrind.git Added basic docs for Helgrind, Lackey, CoreCheck. Minor wibbles in AUTHORS. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1170 --- diff --git a/AUTHORS b/AUTHORS index 5940d60d03..13a70418ad 100644 --- a/AUTHORS +++ b/AUTHORS @@ -2,12 +2,12 @@ Julian Seward, jseward@acm.org, is the main author. Nicholas Nethercote, njn25@cam.ac.uk, did the core/skin -generalisation, and wrote Cachegrind. +generalisation, and wrote Cachegrind and some of the other skins. readelf's dwarf2 source line reader, written by Nick Clifton, was modified to be used in Valgrind by Daniel Berlin. -Michael Matz and Simon Hausmann modified in the GNU binutils +Michael Matz and Simon Hausmann modified the GNU binutils demangler(s) for use in Valgrind. Dirk Mueller contrib'd the malloc-free mismatch checking stuff. diff --git a/configure.in b/configure.in index f34b3ddf0c..107d8df002 100644 --- a/configure.in +++ b/configure.in @@ -312,8 +312,11 @@ AC_OUTPUT( cachegrind/docs/Makefile corecheck/Makefile corecheck/tests/Makefile + corecheck/docs/Makefile helgrind/Makefile + helgrind/docs/Makefile lackey/Makefile + lackey/docs/Makefile none/Makefile none/tests/Makefile none/docs/Makefile diff --git a/corecheck/Makefile.am b/corecheck/Makefile.am index d4cb7c35bc..40d0356b63 100644 --- a/corecheck/Makefile.am +++ b/corecheck/Makefile.am @@ -1,5 +1,5 @@ -SUBDIRS = . tests +SUBDIRS = . tests docs CFLAGS = $(WERROR) -DVG_LIBDIR="\"$(libdir)"\" \ -Winline -Wall -Wshadow -O -fomit-frame-pointer @PREFERRED_STACK_BOUNDARY@ -g diff --git a/corecheck/docs/.cvsignore b/corecheck/docs/.cvsignore new file mode 100644 index 0000000000..3dda72986f --- /dev/null +++ b/corecheck/docs/.cvsignore @@ -0,0 +1,2 @@ +Makefile.in +Makefile diff --git a/corecheck/docs/Makefile.am b/corecheck/docs/Makefile.am new file mode 100644 index 0000000000..39b9008b6a --- /dev/null +++ b/corecheck/docs/Makefile.am @@ -0,0 +1,5 @@ +docdir = $(datadir)/doc/valgrind + +doc_DATA = index.html + +EXTRA_DIST = $(doc_DATA) diff --git a/corecheck/docs/index.html b/corecheck/docs/index.html new file mode 100644 index 0000000000..e56954dc31 --- /dev/null +++ b/corecheck/docs/index.html @@ -0,0 +1,66 @@ + + + + Cachegrind + + + + + +

CoreCheck

+
This manual was last updated on 2002-10-03
+

+ +

+njn25@cam.ac.uk
+Copyright © 2000-2002 Nicholas Nethercote +

+CoreCheck is licensed under the GNU General Public License, +version 2
+CoreCheck is a Valgrind skin that does very basic error checking. +

+ +

+ +

1  CoreCheck

+ +CoreCheck is a very simple skin for Valgrind. It adds no instrumentation to +the program's code, and only reports the few kinds of errors detected by +Valgrind's core. It is mainly of use for Valgrind's developers for debugging +and regression testing. +

+The errors detected are those found by the core when +VG_(needs).core_errors is set. These include: + +

+ +
+ + + diff --git a/helgrind/Makefile.am b/helgrind/Makefile.am index 4674156543..677ef16ab5 100644 --- a/helgrind/Makefile.am +++ b/helgrind/Makefile.am @@ -1,5 +1,5 @@ -SUBDIRS = . +SUBDIRS = . docs CFLAGS = $(WERROR) -DVG_LIBDIR="\"$(libdir)"\" \ -Winline -Wall -Wshadow -O -fomit-frame-pointer @PREFERRED_STACK_BOUNDARY@ -g diff --git a/helgrind/docs/.cvsignore b/helgrind/docs/.cvsignore new file mode 100644 index 0000000000..3dda72986f --- /dev/null +++ b/helgrind/docs/.cvsignore @@ -0,0 +1,2 @@ +Makefile.in +Makefile diff --git a/helgrind/docs/Makefile.am b/helgrind/docs/Makefile.am new file mode 100644 index 0000000000..39b9008b6a --- /dev/null +++ b/helgrind/docs/Makefile.am @@ -0,0 +1,5 @@ +docdir = $(datadir)/doc/valgrind + +doc_DATA = index.html + +EXTRA_DIST = $(doc_DATA) diff --git a/helgrind/docs/index.html b/helgrind/docs/index.html new file mode 100644 index 0000000000..b9d72f9bcc --- /dev/null +++ b/helgrind/docs/index.html @@ -0,0 +1,80 @@ + + + + Cachegrind + + + + + +

Helgrind

+
This manual was last updated on 2002-10-03
+

+ +

+njn25@cam.ac.uk
+Copyright © 2000-2002 Nicholas Nethercote +

+Helgrind is licensed under the GNU General Public License, +version 2
+Helgrind is a Valgrind skin for detecting data races in threaded programs. +

+ +

+ +

1  Helgrind

+ +Helgrind is a Valgrind skin for detecting data races in C and C++ programs +that use the Pthreads library. +

+It uses the Eraser algorithm described in +

+ Eraser: A Dynamic Data Race Detector for Multithreaded Programs
+ Stefan Savage, Michael Burrows, Greg Nelson, Patrick Sobalvarro and + Thomas Anderson
+ ACM Transactions on Computer Systems, 15(4):391-411
+ November 1997. +
+ +It is unfortunately in a rather mangy state and probably doesn't work at all. +We include it partly because it may serve as a useful example skin, and partly +in case anybody is inspired to improve it and get it working. +

+If you are inspired, we'd love to hear from you. And if you are successful, +you might like to include some improvements to the basic Eraser algorithm +described in Section 4.2 of + +

+ Runtime Checking of Multithreaded Applications with Visual Threads + Jerry J. Harrow, Jr.
+ Proceedings of the 7th International SPIN Workshop on Model Checking of + Software
+ Stanford, California, USA
+ August 2000
+ LNCS 1885, pp331--342
+ K. Havelund, J. Penix, and W. Visser, editors.
+
+ + +
+ + + diff --git a/lackey/Makefile.am b/lackey/Makefile.am index a923313d57..da6e4e0c76 100644 --- a/lackey/Makefile.am +++ b/lackey/Makefile.am @@ -1,5 +1,5 @@ -SUBDIRS = . +SUBDIRS = . docs CFLAGS = $(WERROR) -DVG_LIBDIR="\"$(libdir)"\" \ -Winline -Wall -Wshadow -O -fomit-frame-pointer @PREFERRED_STACK_BOUNDARY@ -g diff --git a/lackey/docs/.cvsignore b/lackey/docs/.cvsignore new file mode 100644 index 0000000000..3dda72986f --- /dev/null +++ b/lackey/docs/.cvsignore @@ -0,0 +1,2 @@ +Makefile.in +Makefile diff --git a/lackey/docs/Makefile.am b/lackey/docs/Makefile.am new file mode 100644 index 0000000000..39b9008b6a --- /dev/null +++ b/lackey/docs/Makefile.am @@ -0,0 +1,5 @@ +docdir = $(datadir)/doc/valgrind + +doc_DATA = index.html + +EXTRA_DIST = $(doc_DATA) diff --git a/lackey/docs/index.html b/lackey/docs/index.html new file mode 100644 index 0000000000..72f1e8425a --- /dev/null +++ b/lackey/docs/index.html @@ -0,0 +1,68 @@ + + + + Cachegrind + + + + + +

Lackey

+
This manual was last updated on 2002-10-03
+

+ +

+njn25@cam.ac.uk
+Copyright © 2000-2002 Nicholas Nethercote +

+Lackey is licensed under the GNU General Public License, +version 2
+Lackey is an example Valgrind skin that does some very basic program +measurement. +

+ +

+ +

1  Lackey

+ +Lackey is a simple Valgrind skin that does some basic program measurement. +It adds quite a lot of simple instrumentation to the program's code. It is +primarily intended to be of use as an example skin. +

+It measures three things: + +

    +
  1. The number of calls to _dl_runtime_resolve(), the function + in glibc's dynamic linker that resolves function lookups into shared + objects.

    + +

  2. The number of UCode instructions (UCode is Valgrind's RISC-like + intermediate language), x86 instructions, and basic blocks executed by the + program, and some ratios between the three counts.

    + +

  3. The number of conditional branches encountered and the proportion of those + taken.

    +

+ +
+ + + diff --git a/lackey/lk_main.c b/lackey/lk_main.c index 95015d306d..5a22152c41 100644 --- a/lackey/lk_main.c +++ b/lackey/lk_main.c @@ -77,9 +77,9 @@ static void add_one_Jcc_untaken(void) void SK_(pre_clo_init)(VgNeeds* needs, VgTrackEvents* not_used) { - needs->name = "lackey"; - needs->description = "a UInstr counter"; - needs->description = "njn25@cam.ac.uk"; + needs->name = "lackey"; + needs->description = "an example Valgrind skin"; + needs->bug_reports_to = "njn25@cam.ac.uk"; VG_(register_compact_helper)((Addr) & add_one_dlrr_call); VG_(register_compact_helper)((Addr) & add_one_BB);