A modularisation + refactoring commit. vg_execontext.c has been split into

two halves: stacktrace.c, which deals with getting, traversing and printing
stack traces;  and execontext.c, which deals with storing stack traces
permanently in a way that avoids duplicates, and comparing them.

One nice outcome:  previously we were often creating ExeContexts, which live
forever, even when they were only needed temporarily.  Ie. this was a memory
leak, which has been removed.

As part of this, new headers have been created, carved off core.h and
tool.h.  Lots of function names have changed, too.

In Massif, I also changed a lot of "eip" names to "ip" to make them less
x86-specific.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3429
This commit is contained in:
Nicholas Nethercote
2005-03-25 23:35:48 +00:00
parent 2f61b2f293
commit f474d2e51a
23 changed files with 586 additions and 353 deletions

View File

@@ -32,7 +32,7 @@
#define __BASIC_TYPES_H
/* ---------------------------------------------------------------------
Basic types
builtin types
------------------------------------------------------------------ */
#include "libvex_basictypes.h"
@@ -57,6 +57,14 @@ typedef Word SSizeT; // 32 64
typedef Word OffT; // 32 64
/* ---------------------------------------------------------------------
non-builtin types
------------------------------------------------------------------ */
/* ThreadIds are simply indices into the VG_(threads)[] array. */
typedef
UInt
ThreadId;
/* ---------------------------------------------------------------------
Where to send bug reports to.