|
From: <sv...@va...> - 2015-09-02 21:58:02
|
Author: philippe
Date: Wed Sep 2 22:57:53 2015
New Revision: 15618
Log:
- The default value for --leak-check-heuristics has been changed from
"none" to "all". This helps to reduce the number of possibly
lost blocks, in particular for C++ applications.
Modified:
trunk/NEWS
trunk/memcheck/docs/mc-manual.xml
trunk/memcheck/mc_include.h
trunk/memcheck/mc_main.c
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Wed Sep 2 22:57:53 2015
@@ -32,6 +32,9 @@
* ==================== TOOL CHANGES ====================
* Memcheck:
+ - The default value for --leak-check-heuristics has been changed from
+ "none" to "all". This helps to reduce the number of possibly
+ lost blocks, in particular for C++ applications.
- The default value for --keep-stacktraces has been changed from
"malloc-then-free" to "malloc-and-free". This has a small cost in
Modified: trunk/memcheck/docs/mc-manual.xml
==============================================================================
--- trunk/memcheck/docs/mc-manual.xml (original)
+++ trunk/memcheck/docs/mc-manual.xml Wed Sep 2 22:57:53 2015
@@ -811,7 +811,7 @@
<varlistentry id="opt.leak-check-heuristics" xreflabel="--leak-check-heuristics">
<term>
- <option><![CDATA[--leak-check-heuristics=<set> [default: none] ]]></option>
+ <option><![CDATA[--leak-check-heuristics=<set> [default: all] ]]></option>
</term>
<listitem>
<para>Specifies the set of leak check heuristics to be used
Modified: trunk/memcheck/mc_include.h
==============================================================================
--- trunk/memcheck/mc_include.h (original)
+++ trunk/memcheck/mc_include.h Wed Sep 2 22:57:53 2015
@@ -642,7 +642,7 @@
#define HiS(h,s) ((s) & H2S(h))
/* Heuristics set to use for the leak search.
- Default : no heuristic. */
+ Default : all heuristics. */
extern UInt MC_(clo_leak_check_heuristics);
/* Assume accesses immediately below %esp are due to gcc-2.96 bugs.
Modified: trunk/memcheck/mc_main.c
==============================================================================
--- trunk/memcheck/mc_main.c (original)
+++ trunk/memcheck/mc_main.c Wed Sep 2 22:57:53 2015
@@ -5699,7 +5699,10 @@
VgRes MC_(clo_leak_resolution) = Vg_HighRes;
UInt MC_(clo_show_leak_kinds) = R2S(Possible) | R2S(Unreached);
UInt MC_(clo_error_for_leak_kinds) = R2S(Possible) | R2S(Unreached);
-UInt MC_(clo_leak_check_heuristics) = 0;
+UInt MC_(clo_leak_check_heuristics) = H2S(LchStdString)
+ | H2S( LchLength64)
+ | H2S( LchNewArray)
+ | H2S( LchMultipleInheritance);
Bool MC_(clo_workaround_gcc296_bugs) = False;
Int MC_(clo_malloc_fill) = -1;
Int MC_(clo_free_fill) = -1;
@@ -5879,7 +5882,7 @@
" where kind is one of:\n"
" definite indirect possible reachable all none\n"
" --leak-check-heuristics=heur1,heur2,... which heuristics to use for\n"
-" improving leak search false positive [none]\n"
+" improving leak search false positive [all]\n"
" where heur is one of:\n"
" stdstring length64 newarray multipleinheritance all none\n"
" --show-reachable=yes same as --show-leak-kinds=all\n"
|