| Index: tools/valgrind/possible.patch
|
| ===================================================================
|
| --- tools/valgrind/possible.patch (revision 0)
|
| +++ tools/valgrind/possible.patch (revision 0)
|
| @@ -0,0 +1,56 @@
|
| +Index: memcheck/mc_main.c
|
| +===================================================================
|
| +--- memcheck/mc_main.c (revision 10536)
|
| ++++ memcheck/mc_main.c (working copy)
|
| +@@ -4658,6 +4658,7 @@
|
| + LeakCheckMode MC_(clo_leak_check) = LC_Summary;
|
| + VgRes MC_(clo_leak_resolution) = Vg_HighRes;
|
| + Bool MC_(clo_show_reachable) = False;
|
| ++Bool MC_(clo_show_possible) = True;
|
| + Bool MC_(clo_workaround_gcc296_bugs) = False;
|
| + Int MC_(clo_malloc_fill) = -1;
|
| + Int MC_(clo_free_fill) = -1;
|
| +@@ -4711,6 +4712,7 @@
|
| +
|
| + if VG_BOOL_CLO(arg, "--partial-loads-ok", MC_(clo_partial_loads_ok)) {}
|
| + else if VG_BOOL_CLO(arg, "--show-reachable", MC_(clo_show_reachable)) {}
|
| ++ else if VG_BOOL_CLO(arg, "--show-possible", MC_(clo_show_possible)) {}
|
| + else if VG_BOOL_CLO(arg, "--workaround-gcc296-bugs",
|
| + MC_(clo_workaround_gcc296_bugs)) {}
|
| +
|
| +@@ -4776,6 +4778,7 @@
|
| + " --leak-check=no|summary|full search for memory leaks at exit? [summary]\n"
|
| + " --leak-resolution=low|med|high differentiation of leak stack traces [high]\n"
|
| + " --show-reachable=no|yes show reachable blocks in leak check? [no]\n"
|
| ++" --show-possible=no|yes show possibly lost blocks in leak check? [yes]\n"
|
| + " --undef-value-errors=no|yes check for undefined value errors [yes]\n"
|
| + " --track-origins=no|yes show origins of undefined values? [no]\n"
|
| + " --partial-loads-ok=no|yes too hard to explain here; see manual [no]\n"
|
| +Index: memcheck/mc_include.h
|
| +===================================================================
|
| +--- memcheck/mc_include.h (revision 10536)
|
| ++++ memcheck/mc_include.h (working copy)
|
| +@@ -390,6 +390,9 @@
|
| + /* In leak check, show reachable-but-not-freed blocks? default: NO */
|
| + extern Bool MC_(clo_show_reachable);
|
| +
|
| ++/* In leak check, show possibly-lost blocks? default: YES */
|
| ++extern Bool MC_(clo_show_possible);
|
| ++
|
| + /* Assume accesses immediately below %esp are due to gcc-2.96 bugs.
|
| + * default: NO */
|
| + extern Bool MC_(clo_workaround_gcc296_bugs);
|
| +Index: memcheck/mc_leakcheck.c
|
| +===================================================================
|
| +--- memcheck/mc_leakcheck.c (revision 10536)
|
| ++++ memcheck/mc_leakcheck.c (working copy)
|
| +@@ -844,7 +844,8 @@
|
| + print_record = is_full_check &&
|
| + ( MC_(clo_show_reachable) ||
|
| + Unreached == lr->key.state ||
|
| +- Possible == lr->key.state );
|
| ++ ( MC_(clo_show_possible) &&
|
| ++ Possible == lr->key.state ) );
|
| + is_suppressed =
|
| + MC_(record_leak_error) ( tid, i+1, n_lossrecords, lr, print_record );
|
| +
|
|
|