/* Target-dependent code for the HP PA-RISC architecture.
- Copyright (C) 2003-2012 Free Software Foundation, Inc.
+ Copyright (C) 2003-2020 Free Software Foundation, Inc.
This file is part of GDB.
HPPA_ISR_REGNUM = 39, /* Interrupt Space Register */
HPPA_IOR_REGNUM = 40, /* Interrupt Offset Register */
HPPA_SR4_REGNUM = 43, /* space register 4 */
+ HPPA_SR0_REGNUM = 44, /* space register 0 */
+ HPPA_SR1_REGNUM = 45, /* space register 1 */
+ HPPA_SR2_REGNUM = 46, /* space register 2 */
+ HPPA_SR3_REGNUM = 47, /* space register 3 */
+ HPPA_SR5_REGNUM = 48, /* space register 5 */
+ HPPA_SR6_REGNUM = 49, /* space register 6 */
+ HPPA_SR7_REGNUM = 50, /* space register 7 */
HPPA_RCR_REGNUM = 51, /* Recover Counter (also known as cr0) */
HPPA_PID0_REGNUM = 52, /* Protection ID */
HPPA_PID1_REGNUM = 53, /* Protection ID */
CORE_ADDR (*find_global_pointer) (struct gdbarch *, struct value *);
/* For shared libraries, each call goes through a small piece of
- trampoline code in the ".plt", or equivalent, section.
- IN_SOLIB_CALL_TRAMPOLINE evaluates to nonzero if we are currently
- stopped in one of these. */
- int (*in_solib_call_trampoline) (struct gdbarch *gdbarch,
- CORE_ADDR pc, char *name);
+ trampoline code in the ".plt" section. IN_SOLIB_CALL_TRAMPOLINE
+ evaluates to nonzero if we are currently stopped in one of these. */
+ int (*in_solib_call_trampoline) (struct gdbarch *gdbarch, CORE_ADDR pc);
/* For targets that support multiple spaces, we may have additional stubs
in the return path. These stubs are internal to the ABI, and users are
struct unwind_table_entry *find_unwind_entry (CORE_ADDR);
-/* 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 hppa_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 */
- };
-
-struct hppa_objfile_private
- {
- struct hppa_unwind_info *unwind_info; /* a pointer */
- struct so_list *so_info; /* a pointer */
- CORE_ADDR dp;
-
- int dummy_call_sequence_reg;
- CORE_ADDR dummy_call_sequence_addr;
- };
-
-extern const struct objfile_data *hppa_objfile_priv_data;
-
int hppa_get_field (unsigned word, int from, int to);
int hppa_extract_5_load (unsigned int);
unsigned hppa_extract_5R_store (unsigned int);
extern CORE_ADDR hppa_unwind_pc (struct gdbarch *gdbarch,
struct frame_info *next_frame);
-extern struct minimal_symbol *
+extern struct bound_minimal_symbol
hppa_lookup_stub_minimal_symbol (const char *name,
enum unwind_stub_types stub_type);
-extern struct hppa_objfile_private *hppa_init_objfile_priv_data (struct objfile *objfile);
-
extern int hppa_in_solib_call_trampoline (struct gdbarch *gdbarch,
- CORE_ADDR pc, char *name);
+ CORE_ADDR pc);
extern CORE_ADDR hppa_skip_trampoline_code (struct frame_info *, CORE_ADDR pc);
#endif /* hppa-tdep.h */