Commit Graph

8 Commits

Author SHA1 Message Date
Nicholas Nethercote
18355ff96b 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
2004-09-03 13:45:29 +00:00
Nicholas Nethercote
90369deb78 Arch-abstraction:
- renamed "vg_constants.h" as "core_asm.h".
- renamed "vg_constants_skin.h" as "tool_asm.h".
- renamed "mc_constants.h" as "mc_asm.h".


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2650
2004-09-02 15:37:39 +00:00
Nicholas Nethercote
13a74aa53a Arch-abstraction: renamed "vg_skin.h" as "tool.h". Kept a residual vg_skin.h
(which just #includes tool.h) for backward-compatibility.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2647
2004-09-02 08:51:43 +00:00
Jeremy Fitzhardinge
918c3a7b7e This jumbo-checkin is the Full Virtualization checkin. This eliminates
Valgrind's dependency on the dynamic linker for getting started, and
instead takes things into its own hands.

This checkin doesn't add much in the way of new functionality, but it
is the basis for all future work on Valgrind.  It allows us much more
flexibility in implementation, and well as increasing the reliability
of Valgrind by protecting it more from its clients.

This patch requires some changes to tools to update them to the changes
in the tool API, but they are straightforward.  See the posting "Heads
up: Full Virtualization" on valgrind-developers for a more complete
description of this change and its effects on you.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2118
2003-12-16 02:05:15 +00:00
Nicholas Nethercote
1cc2127659 Moved vg_kerneliface.h from coregrind/ to include/, where it was needed for
external skin compilation to work.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1784
2003-07-24 19:35:00 +00:00
Nicholas Nethercote
c3439e49db Installing vg_skin.h and dependent .h files, on Josef's request, as it makes
separate skins easier to install.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1773
2003-07-22 07:44:21 +00:00
Nicholas Nethercote
488ff9a93a Changed Makefiles so that the following files are installed:
valgrind.h --> $prefix/include/valgrind/valgrind.h
  memcheck.h --> $prefix/include/valgrind/memcheck.h

This mirrors the lib/ structure.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1289
2002-11-12 10:53:31 +00:00
Nicholas Nethercote
d8dcbbc58a Changed name of core/ to coregrind/, since 'core' files/dirs have a habit
of being removed with extreme prejudice.

Also added a couple of necessary Makefile.am files.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1100
2002-09-23 16:24:41 +00:00