mirror of
https://github.com/Zenithsiz/ftmemsim-valgrind.git
synced 2026-02-03 18:13:01 +00:00
More ppc64-linux function replacement/wrapping stuff.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@5536
This commit is contained in:
parent
f0d678baab
commit
5e2f451da8
@ -302,6 +302,11 @@ VG_(trampoline_stuff_end):
|
||||
.global VG_(trampoline_stuff_start)
|
||||
VG_(trampoline_stuff_start):
|
||||
|
||||
/* See comment in pub_core_trampoline.h for what this is for */
|
||||
.global VG_(ppc64_linux_magic_redirect_return_stub)
|
||||
VG_(ppc64_linux_magic_redirect_return_stub):
|
||||
trap
|
||||
|
||||
/* this function is written using the "dotless" ABI convention */
|
||||
.align 2
|
||||
.globl VG_(ppc64_linux_REDIR_FOR_strlen)
|
||||
|
||||
@ -69,6 +69,14 @@ extern void* VG_(ppc32_linux_REDIR_FOR_strchr)( void*, Int );
|
||||
#if defined(VGP_ppc64_linux)
|
||||
extern UInt VG_(ppc64_linux_REDIR_FOR_strlen)( void* );
|
||||
extern void* VG_(ppc64_linux_REDIR_FOR_strchr)( void*, Int );
|
||||
/* A label (sans dot) marking the ultra-magical return stub via which
|
||||
all redirected and wrapped functions are made to "return" on
|
||||
ppc64-linux. The one insn at this label is never really
|
||||
translated. Instead, m_translate generates IR to restore the
|
||||
thread's LR and R2 registers from a small stack in the ppc64 guest
|
||||
state structure, and then branch to LR. Convoluted? Confusing?
|
||||
You betcha. Could I think of anything simpler? No. */
|
||||
extern void VG_(ppc64_linux_magic_redirect_return_stub);
|
||||
#endif
|
||||
|
||||
#endif // __PUB_CORE_TRAMPOLINE_H
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user