Put all the system call stuff in a new module, m_syscalls.  This
required moving a lot of stuff around.  I deleted
VG_(set_return_from_syscall_shadow)() and VG_(get_exit_status_shadow)(),
which screwed up the modularity and weren't being used and can be
simulated in other ways with a bit of care.

What are the chances that I've added and moved all the files correctly
in this commit, and not broken the amd64 port?


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3636 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/coregrind/vg_scheduler.c b/coregrind/vg_scheduler.c
index d344444..75dec98 100644
--- a/coregrind/vg_scheduler.c
+++ b/coregrind/vg_scheduler.c
@@ -60,8 +60,9 @@
                              VG_USERREQ__DISCARD_TRANSLATIONS, and others */
 #include "core.h"
 
-#include "pub_core_stacktrace.h"
 #include "pub_core_errormgr.h"
+#include "pub_core_stacktrace.h"
+#include "pub_core_syscalls.h"
 
 /* ---------------------------------------------------------------------
    Types and globals for the scheduler.
@@ -936,18 +937,6 @@
    VG_(memcpy)( area, (void*)(((Addr)&(tst->arch.vex_shadow)) + offset), size);
 }
 
-
-void VG_(set_return_from_syscall_shadow) ( ThreadId tid, UWord ret_shadow )
-{
-   VG_(threads)[tid].arch.vex_shadow.VGP_SYSCALL_RET = ret_shadow;
-}
-
-UInt VG_(get_exit_status_shadow) ( ThreadId tid )
-{
-   return VG_(threads)[tid].arch.vex_shadow.VGP_SYSCALL_ARG1;
-}
-
-
 /* ---------------------------------------------------------------------
    Handle client requests.
    ------------------------------------------------------------------ */