Added command line option --var-info. Reading debug info for client variables is now disabled by default.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7797 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/exp-drd/drd_main.c b/exp-drd/drd_main.c
index 4a0734b..8c7246f 100644
--- a/exp-drd/drd_main.c
+++ b/exp-drd/drd_main.c
@@ -65,6 +65,7 @@
static Bool drd_trace_fork_join = False;
static Bool drd_trace_mem = False;
static Addr drd_trace_address = 0;
+static Bool s_drd_var_info = False;
//
@@ -102,6 +103,7 @@
else VG_BOOL_CLO(arg, "--trace-segment", trace_segment)
else VG_BOOL_CLO(arg, "--trace-semaphore", trace_semaphore)
else VG_BOOL_CLO(arg, "--trace-suppression", trace_suppression)
+ else VG_BOOL_CLO(arg, "--var-info", s_drd_var_info)
else VG_STR_CLO (arg, "--trace-address", trace_address)
else
return VG_(replacement_malloc_process_cmd_line_option)(arg);
@@ -727,6 +729,11 @@
# else
VG_(printf)("\nWARNING: DRD has only been tested on x86-linux and amd64-linux.\n\n");
# endif
+
+ if (s_drd_var_info)
+ {
+ VG_(needs_var_info)();
+ }
}
static void instrument_load(IRSB* const bb,
@@ -1038,8 +1045,6 @@
VG_(track_pre_thread_ll_exit) (drd_thread_finished);
// Other stuff.
- VG_(needs_var_info)();
-
drd_register_malloc_wrappers(drd_start_using_mem, drd_stop_using_mem);
drd_clientreq_init();
diff --git a/exp-drd/tests/fp_race.vgtest b/exp-drd/tests/fp_race.vgtest
index 7b69785..76e2801 100644
--- a/exp-drd/tests/fp_race.vgtest
+++ b/exp-drd/tests/fp_race.vgtest
@@ -1,2 +1,3 @@
prereq: ./supported_libpthread
+vgopts: --var-info=yes
prog: fp_race
diff --git a/exp-drd/tests/hg03_inherit.vgtest b/exp-drd/tests/hg03_inherit.vgtest
index 169d4d4..e7b2431 100644
--- a/exp-drd/tests/hg03_inherit.vgtest
+++ b/exp-drd/tests/hg03_inherit.vgtest
@@ -1,3 +1,3 @@
prereq: ./supported_libpthread
+vgopts: --show-confl-seg=no --var-info=yes
prog: hg03_inherit
-vgopts: --show-confl-seg=no
diff --git a/exp-drd/tests/hg04_race.vgtest b/exp-drd/tests/hg04_race.vgtest
index 7062ac6..173c17c 100644
--- a/exp-drd/tests/hg04_race.vgtest
+++ b/exp-drd/tests/hg04_race.vgtest
@@ -1,2 +1,3 @@
prereq: ./supported_libpthread
+vgopts: --var-info=yes
prog: hg04_race
diff --git a/exp-drd/tests/hg05_race2.vgtest b/exp-drd/tests/hg05_race2.vgtest
index b0f3180..4ad5b3d 100644
--- a/exp-drd/tests/hg05_race2.vgtest
+++ b/exp-drd/tests/hg05_race2.vgtest
@@ -1,2 +1,3 @@
prereq: ./supported_libpthread
+vgopts: --var-info=yes
prog: hg05_race2
diff --git a/exp-drd/tests/pth_detached2.vgtest b/exp-drd/tests/pth_detached2.vgtest
index 02e2c60..b34eb5c 100644
--- a/exp-drd/tests/pth_detached2.vgtest
+++ b/exp-drd/tests/pth_detached2.vgtest
@@ -1,3 +1,4 @@
prereq: ./supported_libpthread
+vgopts: --var-info=yes
prog: pth_detached
args: 10 10
diff --git a/exp-drd/tests/rwlock_race.vgtest b/exp-drd/tests/rwlock_race.vgtest
index 531d2af..856138b 100644
--- a/exp-drd/tests/rwlock_race.vgtest
+++ b/exp-drd/tests/rwlock_race.vgtest
@@ -1,2 +1,3 @@
prereq: ./supported_libpthread
+vgopts: --var-info=yes
prog: rwlock_race
diff --git a/exp-drd/tests/sem_as_mutex.vgtest b/exp-drd/tests/sem_as_mutex.vgtest
index 2fe2f76..e013196 100644
--- a/exp-drd/tests/sem_as_mutex.vgtest
+++ b/exp-drd/tests/sem_as_mutex.vgtest
@@ -1,2 +1,3 @@
prereq: ./supported_libpthread
+vgopts: --var-info=yes
prog: sem_as_mutex
diff --git a/exp-drd/tests/tc01_simple_race.vgtest b/exp-drd/tests/tc01_simple_race.vgtest
index 7a8abda..bfd0879 100644
--- a/exp-drd/tests/tc01_simple_race.vgtest
+++ b/exp-drd/tests/tc01_simple_race.vgtest
@@ -1,2 +1,3 @@
prereq: ./supported_libpthread
+vgopts: --var-info=yes
prog: tc01_simple_race
diff --git a/exp-drd/tests/tc16_byterace.vgtest b/exp-drd/tests/tc16_byterace.vgtest
index 2308aeb..b6f47e6 100644
--- a/exp-drd/tests/tc16_byterace.vgtest
+++ b/exp-drd/tests/tc16_byterace.vgtest
@@ -1,2 +1,3 @@
prereq: ./supported_libpthread
+vgopts: --var-info=yes
prog: tc16_byterace
diff --git a/exp-drd/tests/tc20_verifywrap.vgtest b/exp-drd/tests/tc20_verifywrap.vgtest
index 69f1436..bee185c 100644
--- a/exp-drd/tests/tc20_verifywrap.vgtest
+++ b/exp-drd/tests/tc20_verifywrap.vgtest
@@ -1,2 +1,3 @@
prereq: ./supported_libpthread
+vgopts: --var-info=yes
prog: tc20_verifywrap
diff --git a/exp-drd/tests/tc20_verifywrap2.vgtest b/exp-drd/tests/tc20_verifywrap2.vgtest
index aa52d03..7a445e1 100644
--- a/exp-drd/tests/tc20_verifywrap2.vgtest
+++ b/exp-drd/tests/tc20_verifywrap2.vgtest
@@ -1,3 +1,3 @@
prereq: ./supported_libpthread
+vgopts: --trace-mutex=yes --trace-cond=yes --trace-semaphore=yes --var-info=yes
prog: tc20_verifywrap
-vgopts: --trace-mutex=yes --trace-cond=yes --trace-semaphore=yes