clarify that vg-in-place cannot be used as an outer in outer/inner setup
If you use a vg-in-place outer, then you obtain errors such as:
valgrind: mmap(0x38000000, 3293184) failed in UME with error 22 (Invalid argument).
valgrind: this can be caused by executables with very large text, data or bss segments.
What must be used is the "make install"-ed valgrind
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13545 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/README_DEVELOPERS b/README_DEVELOPERS
index 2201fd6..6ebeef0 100644
--- a/README_DEVELOPERS
+++ b/README_DEVELOPERS
@@ -161,6 +161,9 @@
--run-libc-freeres=no --tool=cachegrind -v \
inner/.../bin/valgrind --vgdb-prefix=./inner --tool=none -v prog
+Note: You must use a "make install"-ed valgrind.
+Do *not* use vg-in-place for the outer valgrind.
+
If you omit the --trace-children=yes, you'll only monitor Inner's launcher
program, not its stage2. Outer needs --run-libc-freeres=no, as otherwise
it will try to find and run __libc_freeres in the inner, while libc is not
@@ -217,6 +220,9 @@
--outer-args allows to give specific arguments to the outer tool,
replacing the default one provided by vg_regtest.
+Note: --outer-valgrind must be a "make install"-ed valgrind.
+Do *not* use vg-in-place.
+
When an outer valgrind runs an inner valgrind, a regression test
produces one additional file <testname>.outer.log which contains the
errors detected by the outer valgrind. E.g. for an outer memcheck, it
@@ -238,10 +244,14 @@
perl perf/vg_perf --outer-valgrind=../outer/.../bin/valgrind \
--outer-tool=callgrind perf
+Note: --outer-valgrind must be a "make install"-ed valgrind.
+Do *not* use vg-in-place.
+
To compare the performance of multiple Valgrind versions, do :
perl perf/vg_perf --outer-valgrind=../outer/.../bin/valgrind \
--vg=../inner_xxxx --vg=../inner_yyyy perf
- (where inner_xxxx and inner_yyyy are the versions to compare).
+ (where inner_xxxx and inner_yyyy are the toplevel directories of
+ the versions to compare).
Cachegrind and cg_diff are particularly handy to obtain a delta
between the two versions.