aboutsummaryrefslogtreecommitdiff
path: root/gdb/config/pa/nm-hppab.h
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/config/pa/nm-hppab.h')
-rw-r--r--gdb/config/pa/nm-hppab.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/gdb/config/pa/nm-hppab.h b/gdb/config/pa/nm-hppab.h
index c14cb25..8b948d2 100644
--- a/gdb/config/pa/nm-hppab.h
+++ b/gdb/config/pa/nm-hppab.h
@@ -19,6 +19,8 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
#define U_REGS_OFFSET 0
+#define KERNEL_U_ADDR 0
+
/* What a coincidence! */
#define REGISTER_U_ADDR(addr, blockend, regno) \
{ addr = (int)(blockend) + REGISTER_BYTE (regno);}
@@ -27,6 +29,25 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
#define PTRACE_ARG3_TYPE caddr_t
+/* HPUX 8.0, in its infinite wisdom, has chosen to prototype ptrace
+ with five arguments, so programs written for normal ptrace lose. */
+#define FIVE_ARG_PTRACE
+
+
+/* This macro defines the register numbers (from REGISTER_NAMES) that
+ are effectively unavailable to the user through ptrace(). It allows
+ us to include the whole register set in REGISTER_NAMES (inorder to
+ better support remote debugging). If it is used in
+ fetch/store_inferior_registers() gdb will not complain about I/O errors
+ on fetching these registers. If all registers in REGISTER_NAMES
+ are available, then return false (0). */
+
+#define CANNOT_STORE_REGISTER(regno) \
+ ((regno) == 0) || \
+ ((regno) == PCSQ_HEAD_REGNUM) || \
+ ((regno) >= PCSQ_TAIL_REGNUM && (regno) < IPSW_REGNUM) || \
+ ((regno) > IPSW_REGNUM && (regno) < FP4_REGNUM)
+
/* fetch_inferior_registers is in hppab-nat.c. */
#define FETCH_INFERIOR_REGISTERS