Arch-abstraction:
- Added include/x86/: contains tool_arch.h, Makefile.am, .cvsignore.
- Added coregrind/x86/state.c. Contains some arch-specific code for dealing
with x86 registers -- eg. setting up the baseBlock, loading/saving the whole
register state. It is compiled into coregrind/x86/libarch.a and linked via
${VG_ARCH} with the core.
Relatedly, also added coregrind/x86/{core_arch.h,core_arch_asm.h}.
- Correspondingly abstracted the register state out of ThreadState. This
affected every place that touches registers, and there are a lot of them.
(Eventually all the register touching should be abstracted out in an
arch-neutral way, but not yet; one step at a time.)
- Added some declarations about register loading/saving functions to core.h;
all architectures will have to provide these functions.
- Rejigged the build system so that the arch-specific stuff is all done via
${VG_ARCH}, rather than naming e.g. x86/ directly. Appropriate -I arguments
are used so that all the headers are found, etc.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2656 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/include/tool.h.base b/include/tool.h.base
index 5b69c7a..36f86b0 100644
--- a/include/tool.h.base
+++ b/include/tool.h.base
@@ -35,9 +35,7 @@
#include <setjmp.h> /* for jmp_buf */
#include "tool_asm.h" // asm stuff
-
-// XXX: here temporarily, will eventually go in arch-specific headers...
-#define REGPARM(x) __attribute__((regparm (x)))
+#include "tool_arch.h" // arch-specific tool stuff
/* ---------------------------------------------------------------------
Where to send bug reports to.