* gdbarch.sh (DEPRECATED_INIT_FRAME_PC_FIRST): Delete.
* gdbarch.h, gdbarch.c: Re-generate.
* frame.c (legacy_get_prev_frame): Delete references to
DEPRECATED_INIT_FRAME_PC_FIRST.
2004-04-02 Andrew Cagney <cagney@redhat.com>
+ * gdbarch.sh (DEPRECATED_INIT_FRAME_PC_FIRST): Delete.
+ * gdbarch.h, gdbarch.c: Re-generate.
+ * frame.c (legacy_get_prev_frame): Delete references to
+ DEPRECATED_INIT_FRAME_PC_FIRST.
+
* infrun.c (pc_in_sigtramp): Delete function.
(check_sigtramp2): Inline call to pc_in_sigtramp, use
get_frame_type.
}
/* Create the previous frame using the deprecated methods
- INIT_EXTRA_INFO, INIT_FRAME_PC and INIT_FRAME_PC_FIRST. */
+ INIT_EXTRA_INFO, and INIT_FRAME_PC. */
static struct frame_info *
legacy_get_prev_frame (struct frame_info *this_frame)
/* NOTE: cagney/2002-11-18: Should have been correctly setting the
frame's type here, before anything else, and not last, at the
bottom of this function. The various
- DEPRECATED_INIT_EXTRA_FRAME_INFO, DEPRECATED_INIT_FRAME_PC,
- DEPRECATED_INIT_FRAME_PC_FIRST and
+ DEPRECATED_INIT_EXTRA_FRAME_INFO, DEPRECATED_INIT_FRAME_PC, and
DEPRECATED_FRAME_INIT_SAVED_REGS methods are full of work-arounds
that handle the frame not being correctly set from the start.
Unfortunately those same work-arounds rely on the type defaulting
machines appear to require DEPRECATED_INIT_EXTRA_FRAME_INFO
before they can do DEPRECATED_INIT_FRAME_PC. Phoo.
- We shouldn't need DEPRECATED_INIT_FRAME_PC_FIRST to add more
- complication to an already overcomplicated part of GDB.
- gnu@cygnus.com, 15Sep92.
-
Assuming that some machines need DEPRECATED_INIT_FRAME_PC after
DEPRECATED_INIT_EXTRA_FRAME_INFO, one possible scheme:
frame_pc_unwind() and that function does have somewhere to cache
that PC value. */
- if (DEPRECATED_INIT_FRAME_PC_FIRST_P ())
- deprecated_update_frame_pc_hack (prev,
- DEPRECATED_INIT_FRAME_PC_FIRST (fromleaf,
- prev));
-
if (DEPRECATED_INIT_EXTRA_FRAME_INFO_P ())
DEPRECATED_INIT_EXTRA_FRAME_INFO (fromleaf, prev);
legacy_frame_p (struct gdbarch *current_gdbarch)
{
if (DEPRECATED_INIT_FRAME_PC_P ()
- || DEPRECATED_INIT_FRAME_PC_FIRST_P ()
|| DEPRECATED_INIT_EXTRA_FRAME_INFO_P ()
|| DEPRECATED_FRAME_CHAIN_P ())
/* No question, it's a legacy frame. */
gdbarch_cannot_store_register_ftype *cannot_store_register;
gdbarch_get_longjmp_target_ftype *get_longjmp_target;
gdbarch_deprecated_pc_in_call_dummy_ftype *deprecated_pc_in_call_dummy;
- gdbarch_deprecated_init_frame_pc_first_ftype *deprecated_init_frame_pc_first;
gdbarch_deprecated_init_frame_pc_ftype *deprecated_init_frame_pc;
int believe_pcc_promotion;
int believe_pcc_promotion_type;
0, /* cannot_store_register */
0, /* get_longjmp_target */
deprecated_pc_in_call_dummy, /* deprecated_pc_in_call_dummy */
- 0, /* deprecated_init_frame_pc_first */
0, /* deprecated_init_frame_pc */
0, /* believe_pcc_promotion */
0, /* believe_pcc_promotion_type */
/* Skip verify of cannot_store_register, invalid_p == 0 */
/* Skip verify of get_longjmp_target, has predicate */
/* Skip verify of deprecated_pc_in_call_dummy, has predicate */
- /* Skip verify of deprecated_init_frame_pc_first, has predicate */
/* Skip verify of deprecated_init_frame_pc, has predicate */
/* Skip verify of deprecated_get_saved_register, has predicate */
/* Skip verify of deprecated_register_convertible, has predicate */
(long) current_gdbarch->deprecated_init_frame_pc
/*DEPRECATED_INIT_FRAME_PC ()*/);
#endif
-#ifdef DEPRECATED_INIT_FRAME_PC_FIRST_P
- fprintf_unfiltered (file,
- "gdbarch_dump: %s # %s\n",
- "DEPRECATED_INIT_FRAME_PC_FIRST_P()",
- XSTRING (DEPRECATED_INIT_FRAME_PC_FIRST_P ()));
- fprintf_unfiltered (file,
- "gdbarch_dump: DEPRECATED_INIT_FRAME_PC_FIRST_P() = %d\n",
- DEPRECATED_INIT_FRAME_PC_FIRST_P ());
-#endif
-#ifdef DEPRECATED_INIT_FRAME_PC_FIRST
- fprintf_unfiltered (file,
- "gdbarch_dump: %s # %s\n",
- "DEPRECATED_INIT_FRAME_PC_FIRST(fromleaf, prev)",
- XSTRING (DEPRECATED_INIT_FRAME_PC_FIRST (fromleaf, prev)));
- fprintf_unfiltered (file,
- "gdbarch_dump: DEPRECATED_INIT_FRAME_PC_FIRST = <0x%08lx>\n",
- (long) current_gdbarch->deprecated_init_frame_pc_first
- /*DEPRECATED_INIT_FRAME_PC_FIRST ()*/);
-#endif
#ifdef DEPRECATED_MAX_REGISTER_RAW_SIZE_P
fprintf_unfiltered (file,
"gdbarch_dump: %s # %s\n",
gdbarch->deprecated_pc_in_call_dummy = deprecated_pc_in_call_dummy;
}
-int
-gdbarch_deprecated_init_frame_pc_first_p (struct gdbarch *gdbarch)
-{
- gdb_assert (gdbarch != NULL);
- return gdbarch->deprecated_init_frame_pc_first != NULL;
-}
-
-CORE_ADDR
-gdbarch_deprecated_init_frame_pc_first (struct gdbarch *gdbarch, int fromleaf, struct frame_info *prev)
-{
- gdb_assert (gdbarch != NULL);
- gdb_assert (gdbarch->deprecated_init_frame_pc_first != NULL);
- if (gdbarch_debug >= 2)
- fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_init_frame_pc_first called\n");
- return gdbarch->deprecated_init_frame_pc_first (fromleaf, prev);
-}
-
-void
-set_gdbarch_deprecated_init_frame_pc_first (struct gdbarch *gdbarch,
- gdbarch_deprecated_init_frame_pc_first_ftype deprecated_init_frame_pc_first)
-{
- gdbarch->deprecated_init_frame_pc_first = deprecated_init_frame_pc_first;
-}
-
int
gdbarch_deprecated_init_frame_pc_p (struct gdbarch *gdbarch)
{
#define DEPRECATED_PC_IN_CALL_DUMMY(pc, sp, frame_address) (gdbarch_deprecated_pc_in_call_dummy (current_gdbarch, pc, sp, frame_address))
#endif
-#if defined (DEPRECATED_INIT_FRAME_PC_FIRST)
-/* Legacy for systems yet to multi-arch DEPRECATED_INIT_FRAME_PC_FIRST */
-#if !defined (DEPRECATED_INIT_FRAME_PC_FIRST_P)
-#define DEPRECATED_INIT_FRAME_PC_FIRST_P() (1)
-#endif
-#endif
-
-extern int gdbarch_deprecated_init_frame_pc_first_p (struct gdbarch *gdbarch);
-#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (DEPRECATED_INIT_FRAME_PC_FIRST_P)
-#error "Non multi-arch definition of DEPRECATED_INIT_FRAME_PC_FIRST"
-#endif
-#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) || !defined (DEPRECATED_INIT_FRAME_PC_FIRST_P)
-#define DEPRECATED_INIT_FRAME_PC_FIRST_P() (gdbarch_deprecated_init_frame_pc_first_p (current_gdbarch))
-#endif
-
-typedef CORE_ADDR (gdbarch_deprecated_init_frame_pc_first_ftype) (int fromleaf, struct frame_info *prev);
-extern CORE_ADDR gdbarch_deprecated_init_frame_pc_first (struct gdbarch *gdbarch, int fromleaf, struct frame_info *prev);
-extern void set_gdbarch_deprecated_init_frame_pc_first (struct gdbarch *gdbarch, gdbarch_deprecated_init_frame_pc_first_ftype *deprecated_init_frame_pc_first);
-#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (DEPRECATED_INIT_FRAME_PC_FIRST)
-#error "Non multi-arch definition of DEPRECATED_INIT_FRAME_PC_FIRST"
-#endif
-#if !defined (DEPRECATED_INIT_FRAME_PC_FIRST)
-#define DEPRECATED_INIT_FRAME_PC_FIRST(fromleaf, prev) (gdbarch_deprecated_init_frame_pc_first (current_gdbarch, fromleaf, prev))
-#endif
-
#if defined (DEPRECATED_INIT_FRAME_PC)
/* Legacy for systems yet to multi-arch DEPRECATED_INIT_FRAME_PC */
#if !defined (DEPRECATED_INIT_FRAME_PC_P)
# migration process - old code, calling DEPRECATED_PC_IN_CALL_DUMMY(),
# doesn't need to be modified.
F::DEPRECATED_PC_IN_CALL_DUMMY:int:deprecated_pc_in_call_dummy:CORE_ADDR pc, CORE_ADDR sp, CORE_ADDR frame_address:pc, sp, frame_address::deprecated_pc_in_call_dummy:deprecated_pc_in_call_dummy
-F:2:DEPRECATED_INIT_FRAME_PC_FIRST:CORE_ADDR:deprecated_init_frame_pc_first:int fromleaf, struct frame_info *prev:fromleaf, prev
F:2:DEPRECATED_INIT_FRAME_PC:CORE_ADDR:deprecated_init_frame_pc:int fromleaf, struct frame_info *prev:fromleaf, prev
#
v:2:BELIEVE_PCC_PROMOTION:int:believe_pcc_promotion:::::::