40
40
#include "pub_tool_debuginfo.h"
42
/* Notify the debuginfo system about a new mapping. This is the way
43
new debug information gets loaded. If allow_SkFileV is True, it
44
will try load debug info if the mapping at 'a' belongs to Valgrind;
45
whereas normally (False) it will not do that. This allows us to
46
carefully control when the thing will read symbols from the
47
Valgrind executable itself. */
42
/* LINUX: Notify the debuginfo system about a new mapping, or the
43
disappearance of such, or a permissions change on an existing
44
mapping. This is the way new debug information gets loaded. If
45
allow_SkFileV is True, it will try load debug info if the mapping
46
at 'a' belongs to Valgrind; whereas normally (False) it will not do
47
that. This allows us to carefully control when the thing will read
48
symbols from the Valgrind executable itself. */
49
#if defined(VGO_linux)
48
50
extern void VG_(di_notify_mmap)( Addr a, Bool allow_SkFileV );
50
52
extern void VG_(di_notify_munmap)( Addr a, SizeT len );
52
54
extern void VG_(di_notify_mprotect)( Addr a, SizeT len, UInt prot );
58
/* AIX5: Very similar, except packaged more neatly. The supplied
59
parameters describe a code segment and its associated data segment,
60
that have recently been mapped in -- so we need to read debug info
61
for it -- or conversely, have recently been dumped, in which case
62
the relevant debug info has to be unloaded. */
63
extern void VG_(di_aix5_notify_segchange)(
54
75
extern Bool VG_(get_fnname_nodemangle)( Addr a,
55
76
Char* fnname, Int n_fnname );
73
94
Bool VG_(get_fnname_Z_demangle_only) ( Addr a, Char* buf, Int nbuf );
96
/* Map a function name to its entry point and toc pointer. Is done by
97
sequential search of all symbol tables, so is very slow. To
98
mitigate the worst performance effects, you may specify a soname
99
pattern, and only objects matching that pattern are searched.
100
Therefore specify "*" to search all the objects. On TOC-afflicted
101
platforms, a symbol is deemed to be found only if it has a nonzero
104
Bool VG_(lookup_symbol_SLOW)(UChar* sopatt, UChar* name, Addr* pEnt, Addr* pToc);
75
106
#endif // __PUB_CORE_DEBUGINFO_H
77
108
/*--------------------------------------------------------------------*/