extern Int VG_(clo_sanity_level);
/* Automatically attempt to demangle C++ names? default: YES */
extern Bool VG_(clo_demangle);
-/* Simulate child processes? default: NO */
/* Soname synonyms : a string containing a list of pairs
xxxxx=yyyyy separated by commas.
E.g. --soname-synonyms=somalloc=libtcmalloc*.so*,solibtruc=NONE */
extern const HChar* VG_(clo_soname_synonyms);
+/* Valgrind-ise child processes (follow execve)? default : NO */
extern Bool VG_(clo_trace_children);
/* String containing comma-separated patterns for executable names
that should not be traced into even when --trace-children=yes */
void (*free_fn)(void*) );
/* Allocates a new element from ddpa with eltSzB bytes to store elt.
- This function never returns NULL. */
+ This function never returns NULL.
+ If ddpa already contains an element equal to elt, then the address of
+ the already existing element is returned.
+ Equality between elements is done by comparing all bytes.
+ So, if void *elt points to a struct, be sure to initialise all components
+ and the holes between components. */
extern const void* VG_(allocEltDedupPA) (DedupPoolAlloc *ddpa,
SizeT eltSzB, const void *elt);
/* Allocates a new (fixed size) element from ddpa. Returns the
- unique number identifying this element. This function never returns NULL. */
+ unique number identifying this element. This function never returns NULL.
+ Similarly to VG_(allocEltDedupPA), this will return the unique number
+ of an already existing identical element to elt. */
extern UInt VG_(allocFixedEltDedupPA) (DedupPoolAlloc *ddpa,
SizeT eltSzB, const void *elt);