summaryrefslogtreecommitdiff
path: root/gdb/config/pa
diff options
context:
space:
mode:
authorDaniel Jacobowitz <dan@debian.org>2004-09-16 17:02:14 +0000
committerDaniel Jacobowitz <dan@debian.org>2004-09-16 17:02:14 +0000
commitfca010d7bfaeb7657a222ae31a1ac6d2ff8b22a9 (patch)
tree04c103f9b8023e9e39971635650fcf0621942487 /gdb/config/pa
parent7d7c6fcee69a56637940d72acf1f5aec3c5c78f4 (diff)
downloadgdb-fca010d7bfaeb7657a222ae31a1ac6d2ff8b22a9.tar.gz
Merge mainline to intercu branch - 2004-09-15
Diffstat (limited to 'gdb/config/pa')
-rw-r--r--gdb/config/pa/hppa.mt2
-rw-r--r--gdb/config/pa/hppa64.mt2
-rw-r--r--gdb/config/pa/hppahpux.mh2
-rw-r--r--gdb/config/pa/hppahpux.mt2
-rw-r--r--gdb/config/pa/hpux1020.mh2
-rw-r--r--gdb/config/pa/hpux11.mh2
-rw-r--r--gdb/config/pa/hpux11w.mh2
-rw-r--r--gdb/config/pa/linux.mh8
-rw-r--r--gdb/config/pa/linux.mt3
-rw-r--r--gdb/config/pa/nm-hppah.h44
-rw-r--r--gdb/config/pa/nm-linux.h32
-rw-r--r--gdb/config/pa/obsd.mh3
-rw-r--r--gdb/config/pa/obsd.mt3
-rw-r--r--gdb/config/pa/tm-hppa.h175
-rw-r--r--gdb/config/pa/tm-hppa64.h33
-rw-r--r--gdb/config/pa/tm-hppah.h15
-rw-r--r--gdb/config/pa/tm-linux.h (renamed from gdb/config/pa/xm-hppah.h)19
17 files changed, 64 insertions, 285 deletions
diff --git a/gdb/config/pa/hppa.mt b/gdb/config/pa/hppa.mt
index be778922f34..5ba51fab90d 100644
--- a/gdb/config/pa/hppa.mt
+++ b/gdb/config/pa/hppa.mt
@@ -1,2 +1,2 @@
TDEPFILES= hppa-tdep.o
-TM_FILE= tm-hppa.h
+DEPRECATED_TM_FILE= tm-hppa.h
diff --git a/gdb/config/pa/hppa64.mt b/gdb/config/pa/hppa64.mt
index 10d9fc67129..f7baa4a6703 100644
--- a/gdb/config/pa/hppa64.mt
+++ b/gdb/config/pa/hppa64.mt
@@ -1,3 +1,3 @@
# Target: HP PA-RISC 2.0 running HPUX 11.00 in wide mode
TDEPFILES= hppa-tdep.o hppa-hpux-tdep.o
-TM_FILE= tm-hppa64.h
+DEPRECATED_TM_FILE= tm-hppa64.h
diff --git a/gdb/config/pa/hppahpux.mh b/gdb/config/pa/hppahpux.mh
index c0520576afb..b80a085c888 100644
--- a/gdb/config/pa/hppahpux.mh
+++ b/gdb/config/pa/hppahpux.mh
@@ -1,7 +1,5 @@
# Host: Hewlett-Packard PA-RISC machine, running HPUX
-XM_FILE= xm-hppah.h
-
NAT_FILE= nm-hppah.h
NATDEPFILES= hppah-nat.o corelow.o core-aout.o inftarg.o fork-child.o somread.o infptrace.o hpread.o somsolib.o
diff --git a/gdb/config/pa/hppahpux.mt b/gdb/config/pa/hppahpux.mt
index 806e91c7f4d..f997d89891b 100644
--- a/gdb/config/pa/hppahpux.mt
+++ b/gdb/config/pa/hppahpux.mt
@@ -1,3 +1,3 @@
# Target: HP PA-RISC running hpux
TDEPFILES= hppa-tdep.o hppa-hpux-tdep.o
-TM_FILE= tm-hppah.h
+DEPRECATED_TM_FILE= tm-hppah.h
diff --git a/gdb/config/pa/hpux1020.mh b/gdb/config/pa/hpux1020.mh
index 18f542ee885..9a727eb67c6 100644
--- a/gdb/config/pa/hpux1020.mh
+++ b/gdb/config/pa/hpux1020.mh
@@ -6,8 +6,6 @@
MH_CFLAGS = -D__HP_CURSES -Dvfork=fork
-XM_FILE= xm-hppah.h
-
NAT_FILE= nm-hppah.h
NATDEPFILES= hppah-nat.o corelow.o core-aout.o inftarg.o fork-child.o infptrace.o somread.o hpread.o somsolib.o
diff --git a/gdb/config/pa/hpux11.mh b/gdb/config/pa/hpux11.mh
index 25504e030c9..b5466ffa1f7 100644
--- a/gdb/config/pa/hpux11.mh
+++ b/gdb/config/pa/hpux11.mh
@@ -6,8 +6,6 @@
MH_CFLAGS = -D__HP_CURSES -Dvfork=fork
-XM_FILE= xm-hppah.h
-
NAT_FILE= nm-hppah11.h
NATDEPFILES= hppah-nat.o corelow.o core-aout.o inftarg.o fork-child.o infttrace.o somread.o hpread.o somsolib.o
diff --git a/gdb/config/pa/hpux11w.mh b/gdb/config/pa/hpux11w.mh
index cd897aa866b..c59f3fc78b5 100644
--- a/gdb/config/pa/hpux11w.mh
+++ b/gdb/config/pa/hpux11w.mh
@@ -6,8 +6,6 @@
MH_CFLAGS = -D__HP_CURSES -Dvfork=fork
-XM_FILE= xm-hppah.h
-
NAT_FILE= nm-hppah11.h
NATDEPFILES= hppah-nat.o corelow.o core-aout.o inftarg.o fork-child.o infttrace.o hpread.o pa64solib.o solib.o
diff --git a/gdb/config/pa/linux.mh b/gdb/config/pa/linux.mh
new file mode 100644
index 00000000000..596857c0b9c
--- /dev/null
+++ b/gdb/config/pa/linux.mh
@@ -0,0 +1,8 @@
+# Host: Hewlett-Packard PA-RISC machine, running Linux
+XDEPFILES=
+NAT_FILE= nm-linux.h
+NATDEPFILES= infptrace.o inftarg.o fork-child.o corelow.o gcore.o \
+ core-regset.o hppa-linux-nat.o linux-proc.o \
+ proc-service.o thread-db.o lin-lwp.o linux-nat.o
+
+LOADLIBES = -ldl -rdynamic
diff --git a/gdb/config/pa/linux.mt b/gdb/config/pa/linux.mt
new file mode 100644
index 00000000000..d2168668559
--- /dev/null
+++ b/gdb/config/pa/linux.mt
@@ -0,0 +1,3 @@
+# Target: HP PA-RISC running Linux
+TDEPFILES= hppa-tdep.o hppa-linux-tdep.o glibc-tdep.o solib.o solib-svr4.o
+DEPRECATED_TM_FILE=tm-linux.h
diff --git a/gdb/config/pa/nm-hppah.h b/gdb/config/pa/nm-hppah.h
index bf4fd3c475f..24d02567136 100644
--- a/gdb/config/pa/nm-hppah.h
+++ b/gdb/config/pa/nm-hppah.h
@@ -41,10 +41,6 @@ struct target_ops;
So I don't feel the least bit guilty about this. */
#define PTRACE_ARG3_TYPE CORE_ADDR
-/* 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. */
@@ -91,15 +87,6 @@ extern int hppa_require_detach (int, int);
#define PT_WRITE_I PT_WIUSER
#define PT_WRITE_D PT_WDUSER
-/* attach/detach works to some extent under BSD and HPUX. So long
- as the process you're attaching to isn't blocked waiting on io,
- blocked waiting on a signal, or in a system call things work
- fine. (The problems in those cases are related to the fact that
- the kernel can't provide complete register information for the
- target process... Which really pisses off GDB.) */
-
-#define ATTACH_DETACH
-
/* In infptrace or infttrace.c: */
/* Starting with HP-UX 10.30, support is provided (in the form of
@@ -111,8 +98,6 @@ extern int hppa_require_detach (int, int);
10.20 will at least link. However, the "can I use a fast watchpoint?"
query will always return "No" for 10.20. */
-#define TARGET_HAS_HARDWARE_WATCHPOINTS
-
/* The PA can watch any number of locations (generic routines already check
that all intermediates are in watchable memory locations). */
extern int hppa_can_use_hw_watchpoint (int type, int cnt, int ot);
@@ -126,31 +111,6 @@ extern int hppa_can_use_hw_watchpoint (int type, int cnt, int ot);
#define TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT(byte_count) \
(1)
-/* However, some addresses may not be profitable to use hardware to watch,
- or may be difficult to understand when the addressed object is out of
- scope, and hence should be unwatched. On some targets, this may have
- severe performance penalties, such that we might as well use regular
- watchpoints, and save (possibly precious) hardware watchpoints for other
- locations.
-
- On HP-UX, we choose not to watch stack-based addresses, because
-
- [1] Our implementation relies on page protection traps. The granularity
- of these is large and so can generate many false hits, which are expensive
- to respond to.
-
- [2] Watches of "*p" where we may not know the symbol that p points to,
- make it difficult to know when the addressed object is out of scope, and
- hence shouldn't be watched. Page protection that isn't removed when the
- addressed object is out of scope will either degrade execution speed
- (false hits) or give false triggers (when the address is recycled by
- other calls).
-
- Since either of these points results in a slow-running inferior, we might
- as well use normal watchpoints, aka single-step & test. */
-#define TARGET_RANGE_PROFITABLE_FOR_HW_WATCHPOINT(pid,start,len) \
- hppa_range_profitable_for_hw_watchpoint(pid, start, (LONGEST)(len))
-
/* On HP-UX, we're using page-protection to implement hardware watchpoints.
When an instruction attempts to write to a write-protected memory page,
a SIGBUS is raised. At that point, the write has not actually occurred.
@@ -258,10 +218,6 @@ extern int hppa_resume_execd_vforking_child_to_get_parent_vfork (void);
#define HPUXHPPA
-#define MAY_SWITCH_FROM_INFERIOR_PID (1)
-
#define MAY_FOLLOW_EXEC (1)
-#define USE_THREAD_STEP_NEEDED (1)
-
#include "infttrace.h" /* For parent_attach_all. */
diff --git a/gdb/config/pa/nm-linux.h b/gdb/config/pa/nm-linux.h
new file mode 100644
index 00000000000..08b79156aab
--- /dev/null
+++ b/gdb/config/pa/nm-linux.h
@@ -0,0 +1,32 @@
+/* Native support for GNU/Linux, for GDB, the GNU debugger.
+ Copyright (C) 2004 Free Software Foundation, Inc.
+
+ This file is part of GDB.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ 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. */
+
+#ifndef PA_NM_LINUX_H
+#define PA_NM_LINUX_H
+
+#include "config/nm-linux.h"
+
+#define U_REGS_OFFSET 0
+
+/* Override copies of {fetch,store}_inferior_registers in `infptrace.c'. */
+#define FETCH_INFERIOR_REGISTERS
+
+#endif
+
diff --git a/gdb/config/pa/obsd.mh b/gdb/config/pa/obsd.mh
new file mode 100644
index 00000000000..2c3dba97f59
--- /dev/null
+++ b/gdb/config/pa/obsd.mh
@@ -0,0 +1,3 @@
+# Host: OpenBSD/hppa
+NATDEPFILES= fork-child.o infptrace.o inftarg.o hppabsd-nat.o
+NAT_FILE= config/nm-bsd.h
diff --git a/gdb/config/pa/obsd.mt b/gdb/config/pa/obsd.mt
new file mode 100644
index 00000000000..b7a6888b4fc
--- /dev/null
+++ b/gdb/config/pa/obsd.mt
@@ -0,0 +1,3 @@
+# Target: OpenBSD/hppa
+TDEPFILES= hppa-tdep.o hppabsd-tdep.o corelow.o solib.o solib-svr4.o
+DEPRECATED_TM_FILE= solib.h
diff --git a/gdb/config/pa/tm-hppa.h b/gdb/config/pa/tm-hppa.h
index 1a78c6ceb6f..efcf99764da 100644
--- a/gdb/config/pa/tm-hppa.h
+++ b/gdb/config/pa/tm-hppa.h
@@ -26,72 +26,8 @@
#include "regcache.h"
-#define GDB_MULTI_ARCH 1
-
-/* Hack, get around problem with including "arch-utils.h". */
-struct frame_info;
-
-/* Forward declarations of some types we use in prototypes */
-
-struct frame_info;
-struct frame_saved_regs;
-struct value;
-struct type;
-struct inferior_status;
-
-/* Sequence of bytes for breakpoint instruction. */
-
-const unsigned char *hppa_breakpoint_from_pc (CORE_ADDR *pcptr, int *lenptr);
-#define BREAKPOINT_FROM_PC(PCPTR,LENPTR) hppa_breakpoint_from_pc ((PCPTR), (LENPTR))
-#define BREAKPOINT32 0x10004
-
extern int hppa_pc_requires_run_before_use (CORE_ADDR pc);
-#define PC_REQUIRES_RUN_BEFORE_USE(pc) hppa_pc_requires_run_before_use (pc)
-
-/* Register numbers of various important registers.
- Note that some of these values are "real" register numbers,
- and correspond to the general registers of the machine,
- and some are "phony" register numbers which are too large
- to be actual register numbers as far as the user is concerned
- but do serve to get the desired values when passed to read_register. */
-
-#define R0_REGNUM 0 /* Doesn't actually exist, used as base for
- other r registers. */
-#define FLAGS_REGNUM 0 /* Various status flags */
-#define RP_REGNUM 2 /* return pointer */
-#define HPPA_FP_REGNUM 3 /* The ABI's frame pointer, when used */
-#define HPPA_SP_REGNUM 30 /* Stack pointer. */
-#define SAR_REGNUM 32 /* Shift Amount Register */
-#define IPSW_REGNUM 41 /* Interrupt Processor Status Word */
-#define PCOQ_HEAD_REGNUM 33 /* instruction offset queue head */
-#define PCSQ_HEAD_REGNUM 34 /* instruction space queue head */
-#define PCOQ_TAIL_REGNUM 35 /* instruction offset queue tail */
-#define PCSQ_TAIL_REGNUM 36 /* instruction space queue tail */
-#define EIEM_REGNUM 37 /* External Interrupt Enable Mask */
-#define IIR_REGNUM 38 /* Interrupt Instruction Register */
-#define IOR_REGNUM 40 /* Interrupt Offset Register */
-#define SR4_REGNUM 43 /* space register 4 */
-#define RCR_REGNUM 51 /* Recover Counter (also known as cr0) */
-#define CCR_REGNUM 54 /* Coprocessor Configuration Register */
-#define TR0_REGNUM 57 /* Temporary Registers (cr24 -> cr31) */
-#define CR27_REGNUM 60 /* Base register for thread-local storage, cr27 */
-#define HPPA_FP0_REGNUM 64 /* First floating-point. */
-#define FP4_REGNUM 72
-
-#define ARG0_REGNUM 26 /* The first argument of a callee. */
-#define ARG1_REGNUM 25 /* The second argument of a callee. */
-#define ARG2_REGNUM 24 /* The third argument of a callee. */
-#define ARG3_REGNUM 23 /* The fourth argument of a callee. */
-
-/* When fetching register values from an inferior or a core file,
- clean them up using this macro. BUF is a char pointer to
- the raw value of the register in the registers[] array. */
-
-#define DEPRECATED_CLEAN_UP_REGISTER_VALUE(regno, buf) \
- do { \
- if ((regno) == PCOQ_HEAD_REGNUM || (regno) == PCOQ_TAIL_REGNUM) \
- (buf)[sizeof(CORE_ADDR) -1] &= ~0x3; \
- } while (0)
+#define DEPRECATED_PC_REQUIRES_RUN_BEFORE_USE(pc) hppa_pc_requires_run_before_use (pc)
/* PA specific macro to see if the current instruction is nullified. */
#ifndef INSTRUCTION_NULLIFIED
@@ -99,115 +35,6 @@ extern int hppa_instruction_nullified (void);
#define INSTRUCTION_NULLIFIED hppa_instruction_nullified ()
#endif
-#define INSTRUCTION_SIZE 4
-
-#define REG_PARM_STACK_SPACE 16
-
-/*
- * Unwind table and descriptor.
- */
-
-struct unwind_table_entry
- {
- CORE_ADDR region_start;
- CORE_ADDR region_end;
-
- unsigned int Cannot_unwind:1; /* 0 */
- unsigned int Millicode:1; /* 1 */
- unsigned int Millicode_save_sr0:1; /* 2 */
- unsigned int Region_description:2; /* 3..4 */
- unsigned int reserved1:1; /* 5 */
- unsigned int Entry_SR:1; /* 6 */
- unsigned int Entry_FR:4; /* number saved *//* 7..10 */
- unsigned int Entry_GR:5; /* number saved *//* 11..15 */
- unsigned int Args_stored:1; /* 16 */
- unsigned int Variable_Frame:1; /* 17 */
- unsigned int Separate_Package_Body:1; /* 18 */
- unsigned int Frame_Extension_Millicode:1; /* 19 */
- unsigned int Stack_Overflow_Check:1; /* 20 */
- unsigned int Two_Instruction_SP_Increment:1; /* 21 */
- unsigned int Ada_Region:1; /* 22 */
- unsigned int cxx_info:1; /* 23 */
- unsigned int cxx_try_catch:1; /* 24 */
- unsigned int sched_entry_seq:1; /* 25 */
- unsigned int reserved2:1; /* 26 */
- unsigned int Save_SP:1; /* 27 */
- unsigned int Save_RP:1; /* 28 */
- unsigned int Save_MRP_in_frame:1; /* 29 */
- unsigned int extn_ptr_defined:1; /* 30 */
- unsigned int Cleanup_defined:1; /* 31 */
-
- unsigned int MPE_XL_interrupt_marker:1; /* 0 */
- unsigned int HP_UX_interrupt_marker:1; /* 1 */
- unsigned int Large_frame:1; /* 2 */
- unsigned int Pseudo_SP_Set:1; /* 3 */
- unsigned int reserved4:1; /* 4 */
- unsigned int Total_frame_size:27; /* 5..31 */
-
- /* This is *NOT* part of an actual unwind_descriptor in an object
- file. It is *ONLY* part of the "internalized" descriptors that
- we create from those in a file.
- */
- struct
- {
- unsigned int stub_type:4; /* 0..3 */
- unsigned int padding:28; /* 4..31 */
- }
- stub_unwind;
- };
-
-/* HP linkers also generate unwinds for various linker-generated stubs.
- GDB reads in the stubs from the $UNWIND_END$ subspace, then
- "converts" them into normal unwind entries using some of the reserved
- fields to store the stub type. */
-
-/* The gaps represent linker stubs used in MPE and space for future
- expansion. */
-enum unwind_stub_types
- {
- LONG_BRANCH = 1,
- PARAMETER_RELOCATION = 2,
- EXPORT = 10,
- IMPORT = 11,
- IMPORT_SHLIB = 12,
- };
-
-/* We use the objfile->obj_private pointer for two things:
-
- * 1. An unwind table;
- *
- * 2. A pointer to any associated shared library object.
- *
- * #defines are used to help refer to these objects.
- */
-
-/* Info about the unwind table associated with an object file.
-
- * This is hung off of the "objfile->obj_private" pointer, and
- * is allocated in the objfile's psymbol obstack. This allows
- * us to have unique unwind info for each executable and shared
- * library that we are debugging.
- */
-struct obj_unwind_info
- {
- struct unwind_table_entry *table; /* Pointer to unwind info */
- struct unwind_table_entry *cache; /* Pointer to last entry we found */
- int last; /* Index of last entry */
- };
-
-typedef struct obj_private_struct
- {
- struct obj_unwind_info *unwind_info; /* a pointer */
- struct so_list *so_info; /* a pointer */
- CORE_ADDR dp;
- }
-obj_private_data_t;
-
-/* For a number of horrible reasons we may have to adjust the location
- of variables on the stack. Ugh. */
-#define HPREAD_ADJUST_STACK_ADDRESS(ADDR) hpread_adjust_stack_address(ADDR)
-extern int hpread_adjust_stack_address (CORE_ADDR);
-
/* Here's how to step off a permanent breakpoint. */
#define SKIP_PERMANENT_BREAKPOINT (hppa_skip_permanent_breakpoint)
extern void hppa_skip_permanent_breakpoint (void);
diff --git a/gdb/config/pa/tm-hppa64.h b/gdb/config/pa/tm-hppa64.h
index 79fd15cea1c..7a257d4cf18 100644
--- a/gdb/config/pa/tm-hppa64.h
+++ b/gdb/config/pa/tm-hppa64.h
@@ -48,44 +48,11 @@ struct frame_info;
#define SR5_REGNUM 48
-/* For a number of horrible reasons we may have to adjust the location
- of variables on the stack. Ugh. jimb: why? */
-#define HPREAD_ADJUST_STACK_ADDRESS(ADDR) hpread_adjust_stack_address(ADDR)
-
-extern int hpread_adjust_stack_address (CORE_ADDR);
-
-
/* jimb: omitted dynamic linking stuff here */
-/* The PA64 ABI reserves 64 bytes of stack space for outgoing register
- parameters. */
-#undef REG_PARM_STACK_SPACE
-#define REG_PARM_STACK_SPACE 64
-
-/* Use the 64-bit calling conventions designed for the PA2.0 in wide mode. */
-#define PA20W_CALLING_CONVENTIONS
-
#undef FUNC_LDIL_OFFSET
#undef FUNC_LDO_OFFSET
#undef SR4EXPORT_LDIL_OFFSET
#undef SR4EXPORT_LDO_OFFSET
-#undef FRAME_SAVED_PC_IN_SIGTRAMP
-extern void hppa64_hpux_frame_saved_pc_in_sigtramp (struct frame_info *fi,
- CORE_ADDR *tmp);
-#define FRAME_SAVED_PC_IN_SIGTRAMP(FRAME, TMP) \
- hppa64_hpux_frame_saved_pc_in_sigtramp (FRAME, TMP)
-
-#undef FRAME_BASE_BEFORE_SIGTRAMP
-extern void hppa64_hpux_frame_base_before_sigtramp (struct frame_info *fi,
- CORE_ADDR *tmp);
-#define FRAME_BASE_BEFORE_SIGTRAMP(FRAME, TMP) \
- hppa64_hpux_frame_base_before_sigtramp (FRAME, TMP)
-
-#undef FRAME_FIND_SAVED_REGS_IN_SIGTRAMP
-extern void hppa64_hpux_frame_find_saved_regs_in_sigtramp
- (struct frame_info *fi, CORE_ADDR *fsr);
-#define FRAME_FIND_SAVED_REGS_IN_SIGTRAMP(FRAME, FSR) \
- hppa64_hpux_frame_find_saved_regs_in_sigtramp (FRAME, FSR)
-
/* jimb: omitted purify call support */
diff --git a/gdb/config/pa/tm-hppah.h b/gdb/config/pa/tm-hppah.h
index 0d0dde3b703..d330d46f1c3 100644
--- a/gdb/config/pa/tm-hppah.h
+++ b/gdb/config/pa/tm-hppah.h
@@ -36,21 +36,6 @@ struct frame_info;
#include "somsolib.h"
#endif
-extern void hppa32_hpux_frame_saved_pc_in_sigtramp (struct frame_info *fi,
- CORE_ADDR *tmp);
-#define FRAME_SAVED_PC_IN_SIGTRAMP(FRAME, TMP) \
- hppa32_hpux_frame_saved_pc_in_sigtramp (FRAME, TMP)
-
-extern void hppa32_hpux_frame_base_before_sigtramp (struct frame_info *fi,
- CORE_ADDR *tmp);
-#define FRAME_BASE_BEFORE_SIGTRAMP(FRAME, TMP) \
- hppa32_hpux_frame_base_before_sigtramp (FRAME, TMP)
-
-extern void hppa32_hpux_frame_find_saved_regs_in_sigtramp
- (struct frame_info *fi, CORE_ADDR *fsr);
-#define FRAME_FIND_SAVED_REGS_IN_SIGTRAMP(FRAME, FSR) \
- hppa32_hpux_frame_find_saved_regs_in_sigtramp (FRAME, FSR)
-
/* For HP-UX on PA-RISC we have an implementation
for the exception handling target op (in hppa-tdep.c) */
#define CHILD_ENABLE_EXCEPTION_CALLBACK
diff --git a/gdb/config/pa/xm-hppah.h b/gdb/config/pa/tm-linux.h
index a2ed9ba407f..e8b31c57f3b 100644
--- a/gdb/config/pa/xm-hppah.h
+++ b/gdb/config/pa/tm-linux.h
@@ -1,9 +1,5 @@
-/* Parameters for hosting on an HPPA-RISC machine running HPUX, for GDB.
- Copyright 1991, 1992, 1993, 1995, 1996, 2000
- Free Software Foundation, Inc.
-
- Contributed by the Center for Software Science at the
- University of Utah (pa-gdb-bugs@cs.utah.edu).
+/* Definitions to target GDB to GNU/Linux on hppa-linux.
+ Copyright 2004 Free Software Foundation, Inc.
This file is part of GDB.
@@ -22,6 +18,13 @@
Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
-#define USG
+#ifndef TM_LINUX_H
+#define TM_LINUX_H
+
+#include "pa/tm-hppa.h"
+#include "config/tm-linux.h"
+
+#undef IN_SOLIB_CALL_TRAMPOLINE
+#undef SKIP_TRAMPOLINE_CODE
-#define HAVE_TERMIOS
+#endif /* #ifndef TM_LINUX_H */