2012-11-07 David Holsgrove <david.holsgrove@xilinx.com>
[deliverable/binutils-gdb.git] / gdb / mips-linux-tdep.h
index 5f4a8eee8903e37a1e448acbee319bf21be30c55..0a1a161da26a17d2e1b7a976964220b3eb229e99 100644 (file)
@@ -1,6 +1,6 @@
 /* Target-dependent code for GNU/Linux on MIPS processors.
 
-   Copyright 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+   Copyright 2006-2012 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -36,6 +36,8 @@ typedef mips_elf_fpreg_t mips_elf_fpregset_t[ELF_NFPREG];
 #define MMLO           68
 #define FPC_CSR                69
 #define FPC_EIR                70
+#define DSP_BASE       71
+#define DSP_CONTROL    77
 
 #define EF_REG0                        6
 #define EF_REG31               37
@@ -87,16 +89,61 @@ typedef mips64_elf_fpreg_t mips64_elf_fpregset_t[MIPS64_ELF_NFPREG];
 #define MIPS64_EF_SIZE                 304
 
 void mips64_supply_gregset (struct regcache *, const mips64_elf_gregset_t *);
-void mips64_fill_gregset (const struct regcache *, mips64_elf_gregset_t *, int);
-void mips64_supply_fpregset (struct regcache *, const mips64_elf_fpregset_t *);
-void mips64_fill_fpregset (const struct regcache *, mips64_elf_fpregset_t *, int);
+void mips64_fill_gregset (const struct regcache *,
+                         mips64_elf_gregset_t *, int);
+void mips64_supply_fpregset (struct regcache *,
+                            const mips64_elf_fpregset_t *);
+void mips64_fill_fpregset (const struct regcache *,
+                          mips64_elf_fpregset_t *, int);
 
 enum {
   /* The Linux kernel stores an error code from any interrupted
      syscall in a "register" (in $0's save slot).  */
-  MIPS_RESTART_REGNUM = MIPS_LAST_EMBED_REGNUM + 1
+  MIPS_RESTART_REGNUM = 79
 };
 
 /* Return 1 if MIPS_RESTART_REGNUM is usable.  */
 
 int mips_linux_restart_reg_p (struct gdbarch *gdbarch);
+
+/* MIPS Signals -- adapted from linux/arch/mips/include/asm/signal.h.  */
+
+enum mips_signals 
+  {
+    MIPS_SIGHUP    =  1,       /* Hangup (POSIX).  */
+    MIPS_SIGINT    =  2,       /* Interrupt (ANSI).  */
+    MIPS_SIGQUIT   =  3,       /* Quit (POSIX).  */
+    MIPS_SIGILL    =  4,       /* Illegal instruction (ANSI).  */
+    MIPS_SIGTRAP   =  5,       /* Trace trap (POSIX).  */
+    MIPS_SIGIOT    =  6,       /* IOT trap (4.2 BSD).  */
+    MIPS_SIGABRT   =  MIPS_SIGIOT, /* Abort (ANSI).  */
+    MIPS_SIGEMT    =  7,
+    MIPS_SIGFPE    =  8,       /* Floating-point exception (ANSI).  */
+    MIPS_SIGKILL   =  9,       /* Kill, unblockable (POSIX).  */
+    MIPS_SIGBUS    = 10,       /* BUS error (4.2 BSD).  */
+    MIPS_SIGSEGV   = 11,       /* Segmentation violation (ANSI).  */
+    MIPS_SIGSYS    = 12,
+    MIPS_SIGPIPE   = 13,       /* Broken pipe (POSIX).  */
+    MIPS_SIGALRM   = 14,       /* Alarm clock (POSIX).  */
+    MIPS_SIGTERM   = 15,       /* Termination (ANSI).  */
+    MIPS_SIGUSR1   = 16,       /* User-defined signal 1 (POSIX).  */
+    MIPS_SIGUSR2   = 17,       /* User-defined signal 2 (POSIX).  */
+    MIPS_SIGCHLD   = 18,       /* Child status has changed (POSIX).  */
+    MIPS_SIGCLD    = MIPS_SIGCHLD, /* Same as SIGCHLD (System V).  */
+    MIPS_SIGPWR    = 19,       /* Power failure restart (System V).  */
+    MIPS_SIGWINCH  = 20,       /* Window size change (4.3 BSD, Sun).  */
+    MIPS_SIGURG    = 21,       /* Urgent condition on socket (4.2 BSD).  */
+    MIPS_SIGIO     = 22,       /* I/O now possible (4.2 BSD).  */
+    MIPS_SIGPOLL   = MIPS_SIGIO, /* Pollable event occurred (System V).  */
+    MIPS_SIGSTOP   = 23,       /* Stop, unblockable (POSIX).  */
+    MIPS_SIGTSTP   = 24,       /* Keyboard stop (POSIX).  */
+    MIPS_SIGCONT   = 25,       /* Continue (POSIX).  */
+    MIPS_SIGTTIN   = 26,       /* Background read from tty (POSIX).  */
+    MIPS_SIGTTOU   = 27,       /* Background write to tty (POSIX).  */
+    MIPS_SIGVTALRM = 28,       /* Virtual alarm clock (4.2 BSD).  */
+    MIPS_SIGPROF   = 29,       /* Profiling alarm clock (4.2 BSD).  */
+    MIPS_SIGXCPU   = 30,       /* CPU limit exceeded (4.2 BSD).  */
+    MIPS_SIGXFSZ   = 31,       /* File size limit exceeded (4.2 BSD).  */
+    MIPS_SIGRTMIN  = 32,       /* Minimum RT signal.  */
+    MIPS_SIGRTMAX  = 128 - 1   /* Maximum RT signal.  */
+  };
This page took 0.023895 seconds and 4 git commands to generate.