|
From: <sv...@va...> - 2006-11-20 22:02:50
|
Author: njn
Date: 2006-11-20 22:02:40 +0000 (Mon, 20 Nov 2006)
New Revision: 6362
Log:
Clarify NON_SIMD_CALL instructions.
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-11-19 01:36:44 UTC (rev 6361)
+++ trunk/include/valgrind.h 2006-11-20 22:02:40 UTC (rev 6362)
@@ -3652,7 +3652,19 @@
=20
=20
/* These requests allow control to move from the simulated CPU to the
- real CPU, calling an arbitary function */
+ real CPU, calling an arbitary function.
+ =20
+ Note that the current ThreadId is inserted as the first argument.
+ So this call:
+
+ VALGRIND_NON_SIMD_CALL2(f, arg1, arg2)
+
+ requires f to have this signature:
+
+ Word f(Word tid, Word arg1, Word arg2)
+
+ where "Word" is a word-sized type.
+*/
#define VALGRIND_NON_SIMD_CALL0(_qyy_fn) \
__extension__ \
({unsigned long _qyy_res; \
|