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 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/coregrind/vg_threadmodel.c b/coregrind/vg_threadmodel.c
index 37209b0..a1bec5d 100644
--- a/coregrind/vg_threadmodel.c
+++ b/coregrind/vg_threadmodel.c
@@ -180,7 +180,7 @@
 //::    if (th->state == state)
 //::       return;
 //:: 
-//::    ec = VG_(get_ExeContext)(th->tid);
+//::    ec = VG_(record_ExeContext)(th->tid);
 //:: 
 //::    switch(state) {
 //::    case TS_Alive:
@@ -607,7 +607,7 @@
 //:: 
 //:: static void mutex_setstate(ThreadId tid, struct mutex *mx, enum mutex_state st)
 //:: {
-//::    ExeContext *ec = VG_(get_ExeContext)(tid);
+//::    ExeContext *ec = VG_(record_ExeContext)(tid);
 //:: 
 //::    switch(st) {
 //::    case MX_Init: