|
From: <sv...@va...> - 2006-01-20 16:46:39
|
Author: sewardj
Date: 2006-01-20 16:46:34 +0000 (Fri, 20 Jan 2006)
New Revision: 5573
Log:
Make fn wrapping work again on ppc32-linux.
Modified:
trunk/include/valgrind.h
Modified: trunk/include/valgrind.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/include/valgrind.h 2006-01-20 15:55:21 UTC (rev 5572)
+++ trunk/include/valgrind.h 2006-01-20 16:46:34 UTC (rev 5573)
@@ -789,7 +789,7 @@
/* These CALL_FN_ macros assume that on ppc32-linux, sizeof(unsigned
long) =3D=3D 4. */
=20
-#define CALL_FN_W_v(lval, fnptr) \
+#define CALL_FN_W_v(lval, orig) \
do { \
volatile OrigFn _orig =3D (orig); \
volatile unsigned long _argvec[1]; \
@@ -807,12 +807,12 @@
lval =3D (__typeof__(lval)) _res; \
} while (0)
=20
-#define CALL_FN_W_W(lval, fnptr, arg1) \
+#define CALL_FN_W_W(lval, orig, arg1) \
do { \
- volatile void* _fnptr =3D (fnptr); \
+ volatile OrigFn _orig =3D (orig); \
volatile unsigned long _argvec[2]; \
volatile unsigned long _res; \
- _argvec[0] =3D (unsigned long)_fnptr; \
+ _argvec[0] =3D (unsigned long)_orig.nraddr; \
_argvec[1] =3D (unsigned long)arg1; \
__asm__ volatile( \
"mr 11,%1\n\t" \
@@ -827,12 +827,12 @@
lval =3D (__typeof__(lval)) _res; \
} while (0)
=20
-#define CALL_FN_W_WW(lval, fnptr, arg1,arg2) \
+#define CALL_FN_W_WW(lval, orig, arg1,arg2) \
do { \
- volatile void* _fnptr =3D (fnptr); \
+ volatile OrigFn _orig =3D (orig); \
volatile unsigned long _argvec[3]; \
volatile unsigned long _res; \
- _argvec[0] =3D (unsigned long)_fnptr; \
+ _argvec[0] =3D (unsigned long)_orig.nraddr; \
_argvec[1] =3D (unsigned long)arg1; \
_argvec[2] =3D (unsigned long)arg2; \
__asm__ volatile( \
|