History log of /external/valgrind/memcheck/tests/leak_cpp_interior.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
7c69a3edda5335fa4c60f8161252b4bab8a76f7e 21-Jul-2014 philippe <philippe@a5019735-40e9-0310-863c-91ae7b9d1cf9> Add a new heuristic 'length64' to detect interior pointers
pointing at offset 64bit of a block, when the first 8 bytes contains
the block size - 8. This is e.g. used by sqlite3MemMalloc.

Patch by Matthias Schwarzott (with small modif)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14179 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/tests/leak_cpp_interior.cpp
5bd40601a929e8216b1c4b98d5048dddd2c2c20e 02-Oct-2013 philippe <philippe@a5019735-40e9-0310-863c-91ae7b9d1cf9> Fix assert for who_points_at monitor cmd for an interiorly pointed block

* fix the assert
* some better comments
* update test to verify who_points_at behaviour with an interiorly pointed block



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13609 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/tests/leak_cpp_interior.cpp
06bc722457ffe12e056d2f40d0d2f5c8711b541f 02-Oct-2013 florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9> Silence clang warnings about uninitialised and unused values in
memcheck testcases.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13599 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/tests/leak_cpp_interior.cpp
671b0232c307abd80ef4da890c2b00e778751359 30-Sep-2013 philippe <philippe@a5019735-40e9-0310-863c-91ae7b9d1cf9> Use global vars to point at possibly leaked
Depending on the compiler or optimisation level, the blocks that
are supposed to be possibly leaked are still reachable.
=> change the pointers to be global variables,
and do the allocation in a function, not in main.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13591 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/tests/leak_cpp_interior.cpp
ab1fce9bfb9742bffdfbd7ea9e4dad04ffb17819 29-Sep-2013 philippe <philippe@a5019735-40e9-0310-863c-91ae7b9d1cf9> add heuristics decreasing false possible "possible leaks" in c++ code.

The option --leak-check-heuristics=heur1,heur2,... can activate
various heuristics to decrease the number of false positive
"possible leaks" for C++ code. The available heuristics are
detecting valid interior pointers to std::stdstring, to new[] allocated
arrays with elements having destructors and to interior pointers pointing
to an inner part of a C++ object using multiple inheritance.

This fixes 280271 Valgrind reports possible memory leaks on still-reachable
std::string

This has been tested on x86/amd64/ppc32/ppc64.

First performance measurements seems to show a neglectible impact on
the leak search.

More feedback welcome both on performance and functional aspects
(false positive 'possibly leaked' rate decrease and/or
false negative 'possibly leaked' rate increase).

Note that the heuristic is not checking that the memory has been
allocated with "new" or "new[]", as it is expected that in some cases,
specific alloc fn are used for c++ objects instead of the standard new/new[].
If needed, we might add an option to check the alloc functions
to be new/new[].



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13582 a5019735-40e9-0310-863c-91ae7b9d1cf9
/external/valgrind/memcheck/tests/leak_cpp_interior.cpp