-/* Target-dependent definitions for GNU/Linux x86-64.
+/* Target-dependent code for GNU/Linux AMD64.
- Copyright 2003, 2004 Free Software Foundation, Inc.
-
- Contributed by Michal Ludvig, SuSE AG.
+ Copyright (C) 2006, 2007 Free Software Foundation, Inc.
This file is part of GDB.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
+ Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA. */
#ifndef AMD64_LINUX_TDEP_H
#define AMD64_LINUX_TDEP_H
-/* Fill GDB's register array with the general-purpose register values
- in *GREGSETP. */
-
-void amd64_linux_supply_gregset (char *regp);
+/* Like for i386 GNU/Linux, there is an extra "register"
+ used to control syscall restarting. */
-/* Fill register REGNO (if it is a general-purpose register) in
- *GREGSETPS with the value in GDB's register array. If REGNO is -1,
- do this for all registers. */
+/* Register number for the "orig_rax" register. If this register
+ contains a value >= 0 it is interpreted as the system call number
+ that the kernel is supposed to restart. */
+#define AMD64_LINUX_ORIG_RAX_REGNUM (AMD64_MXCSR_REGNUM + 1)
-void amd64_linux_fill_gregset (char *regp, int regno);
+/* Total number of registers for GNU/Linux. */
+#define AMD64_LINUX_NUM_REGS (AMD64_LINUX_ORIG_RAX_REGNUM + 1)
#endif /* amd64-linux-tdep.h */