summaryrefslogtreecommitdiff
path: root/gdb/hppah-nat.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/hppah-nat.c')
-rw-r--r--gdb/hppah-nat.c46
1 files changed, 21 insertions, 25 deletions
diff --git a/gdb/hppah-nat.c b/gdb/hppah-nat.c
index ea4015a8d32..60e28890c8c 100644
--- a/gdb/hppah-nat.c
+++ b/gdb/hppah-nat.c
@@ -32,13 +32,10 @@
#include "gdb_wait.h"
#include "regcache.h"
#include "gdb_string.h"
+#include "infttrace.h"
#include <signal.h>
-extern int hpux_has_forked (int pid, int *childpid);
-extern int hpux_has_vforked (int pid, int *childpid);
-extern int hpux_has_execd (int pid, char **execd_pathname);
-extern int hpux_has_syscall_event (int pid, enum target_waitkind *kind,
- int *syscall_id);
+#include "hppa-tdep.h"
static CORE_ADDR text_end;
@@ -98,7 +95,7 @@ store_inferior_registers (int regno)
return;
offset = 0;
- len = DEPRECATED_REGISTER_RAW_SIZE (regno);
+ len = register_size (current_gdbarch, regno);
/* Requests for register zero actually want the save_state's
ss_flags member. As RM says: "Oh, what a hack!" */
@@ -109,17 +106,16 @@ store_inferior_registers (int regno)
len = sizeof (ss.ss_flags);
/* Note that ss_flags is always an int, no matter what
- DEPRECATED_REGISTER_RAW_SIZE(0) says. Assuming all HP-UX
- PA machines are big-endian, put it at the least
- significant end of the value, and zap the rest of the
- buffer. */
- offset = DEPRECATED_REGISTER_RAW_SIZE (0) - len;
+ register_size (0) says. Assuming all HP-UX PA machines
+ are big-endian, put it at the least significant end of
+ the value, and zap the rest of the buffer. */
+ offset = register_size (current_gdbarch, 0) - len;
}
/* Floating-point registers come from the ss_fpblock area. */
- else if (regno >= FP0_REGNUM)
+ else if (regno >= HPPA_FP0_REGNUM)
addr = (HPPAH_OFFSETOF (save_state_t, ss_fpblock)
- + (DEPRECATED_REGISTER_BYTE (regno) - DEPRECATED_REGISTER_BYTE (FP0_REGNUM)));
+ + (DEPRECATED_REGISTER_BYTE (regno) - DEPRECATED_REGISTER_BYTE (HPPA_FP0_REGNUM)));
/* Wide registers come from the ss_wide area.
I think it's more PC to test (ss_flags & SS_WIDEREGS) to select
@@ -145,7 +141,7 @@ store_inferior_registers (int regno)
layering will not allow us to perform a 64bit register store.
What a crock. */
- if (regno == PCOQ_HEAD_REGNUM || regno == PCOQ_TAIL_REGNUM && len == 8)
+ if (regno == HPPA_PCOQ_HEAD_REGNUM || regno == HPPA_PCOQ_TAIL_REGNUM && len == 8)
{
CORE_ADDR temp;
@@ -173,7 +169,7 @@ store_inferior_registers (int regno)
/* Another crock. HPUX complains if you write a nonzero value to
the high part of IPSW. What will it take for HP to catch a
clue about building sensible interfaces? */
- if (regno == IPSW_REGNUM && len == 8)
+ if (regno == HPPA_IPSW_REGNUM && len == 8)
*(int *)&deprecated_registers[DEPRECATED_REGISTER_BYTE (regno)] = 0;
#endif
@@ -193,7 +189,7 @@ store_inferior_registers (int regno)
REGISTER_NAME (regno), err);
/* If we fail to write the PC, give a true error instead of
just a warning. */
- if (regno == PCOQ_HEAD_REGNUM || regno == PCOQ_TAIL_REGNUM)
+ if (regno == HPPA_PCOQ_HEAD_REGNUM || regno == HPPA_PCOQ_TAIL_REGNUM)
perror_with_name (msg);
else
warning (msg);
@@ -216,7 +212,7 @@ fetch_register (int regno)
int i;
offset = 0;
- len = DEPRECATED_REGISTER_RAW_SIZE (regno);
+ len = register_size (current_gdbarch, regno);
/* Requests for register zero actually want the save_state's
ss_flags member. As RM says: "Oh, what a hack!" */
@@ -227,17 +223,17 @@ fetch_register (int regno)
len = sizeof (ss.ss_flags);
/* Note that ss_flags is always an int, no matter what
- DEPRECATED_REGISTER_RAW_SIZE(0) says. Assuming all HP-UX PA
- machines are big-endian, put it at the least significant end
- of the value, and zap the rest of the buffer. */
- offset = DEPRECATED_REGISTER_RAW_SIZE (0) - len;
+ register_size (0) says. Assuming all HP-UX PA machines are
+ big-endian, put it at the least significant end of the value,
+ and zap the rest of the buffer. */
+ offset = register_size (current_gdbarch, 0) - len;
memset (buf, 0, sizeof (buf));
}
/* Floating-point registers come from the ss_fpblock area. */
- else if (regno >= FP0_REGNUM)
+ else if (regno >= HPPA_FP0_REGNUM)
addr = (HPPAH_OFFSETOF (save_state_t, ss_fpblock)
- + (DEPRECATED_REGISTER_BYTE (regno) - DEPRECATED_REGISTER_BYTE (FP0_REGNUM)));
+ + (DEPRECATED_REGISTER_BYTE (regno) - DEPRECATED_REGISTER_BYTE (HPPA_FP0_REGNUM)));
/* Wide registers come from the ss_wide area.
I think it's more PC to test (ss_flags & SS_WIDEREGS) to select
@@ -282,10 +278,10 @@ fetch_register (int regno)
/* If we're reading an address from the instruction address queue,
mask out the bottom two bits --- they contain the privilege
level. */
- if (regno == PCOQ_HEAD_REGNUM || regno == PCOQ_TAIL_REGNUM)
+ if (regno == HPPA_PCOQ_HEAD_REGNUM || regno == HPPA_PCOQ_TAIL_REGNUM)
buf[len - 1] &= ~0x3;
- supply_register (regno, buf);
+ regcache_raw_supply (current_regcache, regno, buf);
}