Automatic date update in version.in
[platform/upstream/binutils.git] / gdb / gdb_ptrace.h
index 4be0c23..c7b4fae 100644 (file)
@@ -1,6 +1,6 @@
 /* Portable <sys/ptrace.h>
 
-   Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
+   Copyright (C) 2004-2014 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
 # endif
 #endif
 
+/* For systems such as HP/UX that do not provide PT_SYSCALL, define it
+   here as an alias for PT_CONTINUE.  This is what the PT_SYSCALL
+   request is expected to do, in addition to stopping when entering/
+   exiting a system call.  Chances are, if the system supports system
+   call tracing, enabling this feature is probably done separately;
+   and there is probably no special request that we would be required
+   to use when resuming the execution of our program.  */
+#ifndef PT_SYSCALL
+# ifdef PTRACE_SYSCALL
+#  define PT_SYSCALL PTRACE_SYSCALL
+#else
+#  define PT_SYSCALL PT_CONTINUE
+# endif
+#endif
+
 /* Some systems, in particular DEC OSF/1, Digital Unix, Compaq Tru64
    or whatever it's called these days, don't provide a prototype for
    ptrace.  Provide one to silence compiler warnings.  */
@@ -120,7 +135,15 @@ extern PTRACE_TYPE_RET ptrace();
    zero.  */
 
 #ifdef PTRACE_TYPE_ARG5
-# define ptrace(request, pid, addr, data) ptrace (request, pid, addr, data, 0)
+# ifdef HAVE_PTRACE64
+#  define ptrace(request, pid, addr, data) \
+          ptrace64 (request, pid, addr, data, 0)
+#  undef PTRACE_TYPE_ARG3
+#  define PTRACE_TYPE_ARG3 long long
+# else
+#  define ptrace(request, pid, addr, data) \
+          ptrace (request, pid, addr, data, 0)
+# endif
 #endif
 
 #endif /* gdb_ptrace.h */