* nm-hppab.h (KERNEL_U_ADDR): Define.
(FIVE_ARG_PTRACE): Likewise. (CANNOT_STORE_REGISTER): Likewise. * nm-hppah.h (KERNEL_U_ADDR): Define. (FIVE_ARG_PTRACE): Likewise. (CANNOT_STORE_REGISTER): Likewise. (NEED_TEXT_START_END): Likewise. * tm-hppah.h (NEED_TEXT_START_END): Delete definition. * xm-hppah.h (KERNEL_U_ADDR): Delete definition. (FIVE_ARG_PTRACE): Likewise. * xm-hppab.h (KERNEL_U_ADDR): Delete definition. (FIVE_ARG_PTRACE): Likewise. * hppa-tdep.c (read_unwind_info): Make static. (restore_pc_queue): Indirect through the target vector to reload the register state.
This commit is contained in:
parent
8bd8cef202
commit
fe15373a50
4 changed files with 46 additions and 20 deletions
|
@ -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
|
||||
|
||||
|
|
|
@ -19,10 +19,35 @@ 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);}
|
||||
|
||||
/* 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
|
||||
|
||||
/* We need to figure out where the text region is so that we use the
|
||||
appropriate ptrace operator to manipulate text. Simply reading/writing
|
||||
user space will crap out HPUX. */
|
||||
#define NEED_TEXT_START_END
|
||||
|
||||
/* 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 hppah-nat.c. */
|
||||
#define FETCH_INFERIOR_REGISTERS
|
||||
|
||||
|
|
|
@ -31,16 +31,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
|
|||
#undef INT_MIN
|
||||
#define INT_MIN 0x80000000
|
||||
|
||||
/* HPUX 8.0, in its infinite wisdom, has chosen to prototype ptrace
|
||||
with five arguments, so programs written for normal ptrace lose.
|
||||
|
||||
Idiots.
|
||||
|
||||
(They should have just made it varadic). */
|
||||
#define FIVE_ARG_PTRACE
|
||||
|
||||
#define KERNEL_U_ADDR 0
|
||||
|
||||
#ifndef SEEK_SET
|
||||
# define SEEK_SET 0 /* Set file pointer to "offset" */
|
||||
# define SEEK_CUR 1 /* Set file pointer to current plus "offset" */
|
||||
|
|
|
@ -30,14 +30,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
|
|||
#undef INT_MIN
|
||||
#define INT_MIN 0x80000000
|
||||
|
||||
/* HPUX 8.0, in its infinite wisdom, has chosen to prototype ptrace
|
||||
with five arguments, so programs written for normal ptrace lose.
|
||||
|
||||
Idiots.
|
||||
|
||||
(They should have just made it varadic). */
|
||||
#define FIVE_ARG_PTRACE
|
||||
|
||||
#define USG
|
||||
|
||||
#ifndef __STDC__
|
||||
|
@ -47,8 +39,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
|
|||
|
||||
#define HAVE_TERMIOS
|
||||
|
||||
#define KERNEL_U_ADDR 0
|
||||
|
||||
/* HP uses non-ANSI definitions, but with void * results. */
|
||||
#define MEM_FNS_DECLARED /* Some non-ANSI use void *, not char *. */
|
||||
extern void *
|
||||
|
|
Loading…
Reference in a new issue