]> git.ipfire.org Git - thirdparty/valgrind.git/commit
Changes to make function wrapping work better on ppc64-linux:
authorJulian Seward <jseward@acm.org>
Fri, 20 Jan 2006 14:31:57 +0000 (14:31 +0000)
committerJulian Seward <jseward@acm.org>
Fri, 20 Jan 2006 14:31:57 +0000 (14:31 +0000)
commit6af183ac219e479c7ddfe32360456674029a3d2f
tree60bedfbbdf7c2f974a62456aa82d81ca01bcea37
parentde99f0aaeb63a8813ad3de64fd3d77b64e02ef38
Changes to make function wrapping work better on ppc64-linux:

- when recording the non-redirected address in guest_NRADDR, also
  snapshot the current R2 value, as that will be needed to run the
  original safely

- As a consequence, the original-function information extracted by
  VALGRIND_GET_ORIG_FN is different on ppc64-linux (2 words) from
  all other platforms (1 word).  So change the type of it from
  void* to a new type OrigFn which can be defined differently for
  each platform.

- Change the CALL_FN_* macros for ppc64-linux to save/restore
  R2 values appropriately.

- ppc64-linux: detect overflow/underflow of the redirect stack
  and bring Valgrind to a halt if this happens

- Update VG_CLREQ_SZB for ppc32/64 (was out of date).

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5569
coregrind/m_scheduler/scheduler.c
coregrind/m_translate.c
include/pub_tool_machine.h
include/valgrind.h
memcheck/mc_main.c
memcheck/tests/wrap1.c
memcheck/tests/wrap2.c
memcheck/tests/wrap3.c
memcheck/tests/wrap4.c
memcheck/tests/wrap5.c
memcheck/tests/wrap6.c