mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2025-02-27 12:56:07 +00:00
2003-03-01 Andrew Cagney <cagney@redhat.com>
* gdbarch.sh (DEPRECATED_INIT_EXTRA_FRAME_INFO): Rename INIT_EXTRA_FRAME_INFO. * gdbarch.h, gdbarch.c: Regenerate. * arm-tdep.c: Update comments. * sh-tdep.c, mcore-tdep.c, m68hc11-tdep.c: Ditto. * i386-interix-tdep.c, hppa-tdep.c, h8300-tdep.c: Ditto. * frame.h, avr-tdep.c: Ditto. * frame.c (get_prev_frame): DEPRECATED_INIT_EXTRA_FRAME_INFO. (create_new_frame, legacy_get_prev_frame): Ditto. * config/sparc/tm-sparc.h (DEPRECATED_INIT_EXTRA_FRAME_INFO): Rename. * config/pa/tm-hppa.h (DEPRECATED_INIT_EXTRA_FRAME_INFO): Rename. * xstormy16-tdep.c (xstormy16_gdbarch_init): Initialize deprecated_init_extra_frame_info instead of init_extra_frame_info. * x86-64-tdep.c (x86_64_init_abi): Ditto. * v850-tdep.c (v850_gdbarch_init): Ditto. * sparc-tdep.c (sparc_gdbarch_init): Ditto. * sh-tdep.c (sh_gdbarch_init): Ditto. * s390-tdep.c (s390_gdbarch_init): Ditto. * ppc-linux-tdep.c (ppc_linux_init_abi): Ditto. * mn10300-tdep.c (mn10300_gdbarch_init): Ditto. * mips-tdep.c (mips_gdbarch_init): Ditto. * mcore-tdep.c (mcore_gdbarch_init): Ditto. * m68hc11-tdep.c (m68hc11_gdbarch_init): Ditto. * ia64-tdep.c (ia64_gdbarch_init): Ditto. * i386-interix-tdep.c (i386_interix_init_abi): Ditto. * hppa-tdep.c (hppa_gdbarch_init): Ditto. * h8300-tdep.c (h8300_gdbarch_init): Ditto. * frv-tdep.c (frv_gdbarch_init): Ditto. * cris-tdep.c (cris_gdbarch_init): Ditto. * avr-tdep.c (avr_gdbarch_init): Ditto. * arm-tdep.c (arm_gdbarch_init): Ditto. * alpha-tdep.c (alpha_gdbarch_init): Ditto. * rs6000-tdep.c (rs6000_gdbarch_init): Ditto. Index: doc/ChangeLog 2003-02-26 Andrew Cagney <cagney@redhat.com> * gdbint.texinfo: Rename INIT_EXTRA_FRAME_INFO to DEPRECATED_INIT_EXTRA_FRAME_INFO.
This commit is contained in:
parent
85495d8caf
commit
e9582e713d
@ -1,3 +1,39 @@
|
||||
2003-03-01 Andrew Cagney <cagney@redhat.com>
|
||||
|
||||
* gdbarch.sh (DEPRECATED_INIT_EXTRA_FRAME_INFO): Rename
|
||||
INIT_EXTRA_FRAME_INFO.
|
||||
* gdbarch.h, gdbarch.c: Regenerate.
|
||||
* arm-tdep.c: Update comments.
|
||||
* sh-tdep.c, mcore-tdep.c, m68hc11-tdep.c: Ditto.
|
||||
* i386-interix-tdep.c, hppa-tdep.c, h8300-tdep.c: Ditto.
|
||||
* frame.h, avr-tdep.c: Ditto.
|
||||
* frame.c (get_prev_frame): DEPRECATED_INIT_EXTRA_FRAME_INFO.
|
||||
(create_new_frame, legacy_get_prev_frame): Ditto.
|
||||
* config/sparc/tm-sparc.h (DEPRECATED_INIT_EXTRA_FRAME_INFO): Rename.
|
||||
* config/pa/tm-hppa.h (DEPRECATED_INIT_EXTRA_FRAME_INFO): Rename.
|
||||
* xstormy16-tdep.c (xstormy16_gdbarch_init): Initialize
|
||||
deprecated_init_extra_frame_info instead of init_extra_frame_info.
|
||||
* x86-64-tdep.c (x86_64_init_abi): Ditto.
|
||||
* v850-tdep.c (v850_gdbarch_init): Ditto.
|
||||
* sparc-tdep.c (sparc_gdbarch_init): Ditto.
|
||||
* sh-tdep.c (sh_gdbarch_init): Ditto.
|
||||
* s390-tdep.c (s390_gdbarch_init): Ditto.
|
||||
* ppc-linux-tdep.c (ppc_linux_init_abi): Ditto.
|
||||
* mn10300-tdep.c (mn10300_gdbarch_init): Ditto.
|
||||
* mips-tdep.c (mips_gdbarch_init): Ditto.
|
||||
* mcore-tdep.c (mcore_gdbarch_init): Ditto.
|
||||
* m68hc11-tdep.c (m68hc11_gdbarch_init): Ditto.
|
||||
* ia64-tdep.c (ia64_gdbarch_init): Ditto.
|
||||
* i386-interix-tdep.c (i386_interix_init_abi): Ditto.
|
||||
* hppa-tdep.c (hppa_gdbarch_init): Ditto.
|
||||
* h8300-tdep.c (h8300_gdbarch_init): Ditto.
|
||||
* frv-tdep.c (frv_gdbarch_init): Ditto.
|
||||
* cris-tdep.c (cris_gdbarch_init): Ditto.
|
||||
* avr-tdep.c (avr_gdbarch_init): Ditto.
|
||||
* arm-tdep.c (arm_gdbarch_init): Ditto.
|
||||
* alpha-tdep.c (alpha_gdbarch_init): Ditto.
|
||||
* rs6000-tdep.c (rs6000_gdbarch_init): Ditto.
|
||||
|
||||
2003-03-01 Andrew Cagney <cagney@redhat.com>
|
||||
|
||||
* gdbarch.sh (register_type): New function with predicate.
|
||||
|
@ -74,7 +74,6 @@ static gdbarch_frame_init_saved_regs_ftype alpha_frame_init_saved_regs;
|
||||
static gdbarch_push_arguments_ftype alpha_push_arguments;
|
||||
static gdbarch_pop_frame_ftype alpha_pop_frame;
|
||||
static gdbarch_fix_call_dummy_ftype alpha_fix_call_dummy;
|
||||
static gdbarch_init_extra_frame_info_ftype alpha_init_extra_frame_info;
|
||||
|
||||
static gdbarch_get_longjmp_target_ftype alpha_get_longjmp_target;
|
||||
|
||||
@ -1871,7 +1870,7 @@ alpha_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
set_gdbarch_sizeof_call_dummy_words (gdbarch, 0);
|
||||
set_gdbarch_frame_args_address (gdbarch, alpha_frame_args_address);
|
||||
set_gdbarch_frame_locals_address (gdbarch, alpha_frame_locals_address);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, alpha_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, alpha_init_extra_frame_info);
|
||||
|
||||
/* Alpha OSF/1 inhibits execution of code on the stack. But there is
|
||||
no need for a dummy on the Alpha. PUSH_ARGUMENTS takes care of all
|
||||
|
@ -1014,7 +1014,7 @@ arm_find_callers_reg (struct frame_info *fi, int regnum)
|
||||
}
|
||||
/* Function: frame_chain Given a GDB frame, determine the address of
|
||||
the calling function's frame. This will be used to create a new
|
||||
GDB frame struct, and then INIT_EXTRA_FRAME_INFO and
|
||||
GDB frame struct, and then DEPRECATED_INIT_EXTRA_FRAME_INFO and
|
||||
DEPRECATED_INIT_FRAME_PC will be called for the new frame. For
|
||||
ARM, we save the frame size when we initialize the frame_info. */
|
||||
|
||||
@ -1112,7 +1112,7 @@ arm_init_extra_frame_info (int fromleaf, struct frame_info *fi)
|
||||
/* Determine whether or not we're in a sigtramp frame.
|
||||
Unfortunately, it isn't sufficient to test (get_frame_type (fi)
|
||||
== SIGTRAMP_FRAME) because this value is sometimes set after
|
||||
invoking INIT_EXTRA_FRAME_INFO. So we test *both*
|
||||
invoking DEPRECATED_INIT_EXTRA_FRAME_INFO. So we test *both*
|
||||
(get_frame_type (fi) == SIGTRAMP_FRAME) and PC_IN_SIGTRAMP to
|
||||
determine if we need to use the sigcontext addresses for the
|
||||
saved registers.
|
||||
@ -2904,7 +2904,7 @@ arm_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
|
||||
/* Frame handling. */
|
||||
set_gdbarch_frame_chain_valid (gdbarch, arm_frame_chain_valid);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, arm_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, arm_init_extra_frame_info);
|
||||
set_gdbarch_read_fp (gdbarch, arm_read_fp);
|
||||
set_gdbarch_frame_chain (gdbarch, arm_frame_chain);
|
||||
set_gdbarch_frameless_function_invocation
|
||||
|
@ -974,8 +974,8 @@ avr_frame_address (struct frame_info *fi)
|
||||
|
||||
/* Given a GDB frame, determine the address of the calling function's
|
||||
frame. This will be used to create a new GDB frame struct, and
|
||||
then INIT_EXTRA_FRAME_INFO and DEPRECATED_INIT_FRAME_PC will be
|
||||
called for the new frame.
|
||||
then DEPRECATED_INIT_EXTRA_FRAME_INFO and DEPRECATED_INIT_FRAME_PC
|
||||
will be called for the new frame.
|
||||
|
||||
For us, the frame address is its stack pointer value, so we look up
|
||||
the function prologue to determine the caller's sp value, and return it. */
|
||||
@ -1188,7 +1188,7 @@ avr_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
set_gdbarch_store_struct_return (gdbarch, avr_store_struct_return);
|
||||
|
||||
set_gdbarch_frame_init_saved_regs (gdbarch, avr_scan_prologue);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, avr_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, avr_init_extra_frame_info);
|
||||
set_gdbarch_skip_prologue (gdbarch, avr_skip_prologue);
|
||||
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
|
||||
|
||||
|
@ -383,7 +383,7 @@ extern int hppa_cannot_store_register (int regnum);
|
||||
#endif
|
||||
|
||||
#if !GDB_MULTI_ARCH
|
||||
#define INIT_EXTRA_FRAME_INFO(fromleaf, frame) hppa_init_extra_frame_info (fromleaf, frame)
|
||||
#define DEPRECATED_INIT_EXTRA_FRAME_INFO(fromleaf, frame) hppa_init_extra_frame_info (fromleaf, frame)
|
||||
extern void hppa_init_extra_frame_info (int, struct frame_info *);
|
||||
#endif
|
||||
|
||||
|
@ -468,7 +468,7 @@ void sparc_get_saved_register (char *raw_buffer,
|
||||
|
||||
#define FRAME_INIT_SAVED_REGS(FP) /*no-op */
|
||||
|
||||
#define INIT_EXTRA_FRAME_INFO(FROMLEAF, FCI) \
|
||||
#define DEPRECATED_INIT_EXTRA_FRAME_INFO(FROMLEAF, FCI) \
|
||||
sparc_init_extra_frame_info (FROMLEAF, FCI)
|
||||
extern void sparc_init_extra_frame_info (int, struct frame_info *);
|
||||
|
||||
@ -509,7 +509,8 @@ extern CORE_ADDR sparc_frame_saved_pc (struct frame_info *);
|
||||
sparc_print_extra_frame_info (FI)
|
||||
extern void sparc_print_extra_frame_info (struct frame_info *);
|
||||
|
||||
/* INIT_EXTRA_FRAME_INFO needs the PC to detect flat frames. */
|
||||
/* DEPRECATED_INIT_EXTRA_FRAME_INFO needs the PC to detect flat
|
||||
frames. */
|
||||
|
||||
/* NOTE: cagney/2002-12-08: Add local declaration of
|
||||
init_frame_pc_noop() because it isn't possible to include
|
||||
|
@ -4292,7 +4292,7 @@ cris_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
set_gdbarch_use_struct_convention (gdbarch, cris_use_struct_convention);
|
||||
|
||||
set_gdbarch_frame_init_saved_regs (gdbarch, cris_frame_init_saved_regs);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, cris_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, cris_init_extra_frame_info);
|
||||
set_gdbarch_skip_prologue (gdbarch, cris_skip_prologue);
|
||||
set_gdbarch_prologue_frameless_p (gdbarch, generic_prologue_frameless_p);
|
||||
|
||||
|
@ -1,3 +1,8 @@
|
||||
2003-02-26 Andrew Cagney <cagney@redhat.com>
|
||||
|
||||
* gdbint.texinfo: Rename INIT_EXTRA_FRAME_INFO to
|
||||
DEPRECATED_INIT_EXTRA_FRAME_INFO.
|
||||
|
||||
2003-02-23 Raoul Gough <RaoulGough@yahoo.co.uk>
|
||||
|
||||
* gdb.texinfo (Cygwin Native): Links to Non-debug DLL symbols.
|
||||
|
@ -247,14 +247,15 @@ create_new_frame (read_register (FP_REGNUM), read_pc ()));
|
||||
Other than that, all the meaning imparted to @code{FP_REGNUM} is
|
||||
imparted by the machine-dependent code. So, @code{FP_REGNUM} can have
|
||||
any value that is convenient for the code that creates new frames.
|
||||
(@code{create_new_frame} calls @code{INIT_EXTRA_FRAME_INFO} if it is
|
||||
defined; that is where you should use the @code{FP_REGNUM} value, if
|
||||
your frames are nonstandard.)
|
||||
(@code{create_new_frame} calls @code{DEPRECATED_INIT_EXTRA_FRAME_INFO}
|
||||
if it is defined; that is where you should use the @code{FP_REGNUM}
|
||||
value, if your frames are nonstandard.)
|
||||
|
||||
@cindex frame chain
|
||||
Given a @value{GDBN} frame, define @code{FRAME_CHAIN} to determine the
|
||||
address of the calling function's frame. This will be used to create a
|
||||
new @value{GDBN} frame struct, and then @code{INIT_EXTRA_FRAME_INFO} and
|
||||
new @value{GDBN} frame struct, and then
|
||||
@code{DEPRECATED_INIT_EXTRA_FRAME_INFO} and
|
||||
@code{DEPRECATED_INIT_FRAME_PC} will be called for the new frame.
|
||||
|
||||
@section Breakpoint Handling
|
||||
@ -3357,8 +3358,8 @@ On HP-UX, certain system routines (millicode) have names beginning with
|
||||
@samp{$} or @samp{$$}. For example, @code{$$dyncall} is a millicode
|
||||
routine that handles inter-space procedure calls on PA-RISC.
|
||||
|
||||
@item INIT_EXTRA_FRAME_INFO (@var{fromleaf}, @var{frame})
|
||||
@findex INIT_EXTRA_FRAME_INFO
|
||||
@item DEPRECATED_INIT_EXTRA_FRAME_INFO (@var{fromleaf}, @var{frame})
|
||||
@findex DEPRECATED_INIT_EXTRA_FRAME_INFO
|
||||
If additional information about the frame is required this should be
|
||||
stored in @code{frame->extra_info}. Space for @code{frame->extra_info}
|
||||
is allocated using @code{frame_extra_info_zalloc}.
|
||||
|
59
gdb/frame.c
59
gdb/frame.c
@ -905,8 +905,8 @@ create_new_frame (CORE_ADDR addr, CORE_ADDR pc)
|
||||
fi->next = create_sentinel_frame (current_regcache);
|
||||
fi->type = frame_type_from_pc (pc);
|
||||
|
||||
if (INIT_EXTRA_FRAME_INFO_P ())
|
||||
INIT_EXTRA_FRAME_INFO (0, fi);
|
||||
if (DEPRECATED_INIT_EXTRA_FRAME_INFO_P ())
|
||||
DEPRECATED_INIT_EXTRA_FRAME_INFO (0, fi);
|
||||
|
||||
/* Select/initialize an unwind function. */
|
||||
fi->unwind = frame_unwind_find_by_pc (current_gdbarch, fi->pc);
|
||||
@ -1037,25 +1037,25 @@ legacy_get_prev_frame (struct frame_info *next_frame)
|
||||
|
||||
/* This change should not be needed, FIXME! We should determine
|
||||
whether any targets *need* DEPRECATED_INIT_FRAME_PC to happen
|
||||
after INIT_EXTRA_FRAME_INFO and come up with a simple way to
|
||||
express what goes on here.
|
||||
after DEPRECATED_INIT_EXTRA_FRAME_INFO and come up with a simple
|
||||
way to express what goes on here.
|
||||
|
||||
INIT_EXTRA_FRAME_INFO is called from two places: create_new_frame
|
||||
(where the PC is already set up) and here (where it isn't).
|
||||
DEPRECATED_INIT_FRAME_PC is only called from here, always after
|
||||
INIT_EXTRA_FRAME_INFO.
|
||||
DEPRECATED_INIT_EXTRA_FRAME_INFO is called from two places:
|
||||
create_new_frame (where the PC is already set up) and here (where
|
||||
it isn't). DEPRECATED_INIT_FRAME_PC is only called from here,
|
||||
always after DEPRECATED_INIT_EXTRA_FRAME_INFO.
|
||||
|
||||
The catch is the MIPS, where INIT_EXTRA_FRAME_INFO requires the
|
||||
PC value (which hasn't been set yet). Some other machines appear
|
||||
to require INIT_EXTRA_FRAME_INFO before they can do
|
||||
DEPRECATED_INIT_FRAME_PC. Phoo.
|
||||
The catch is the MIPS, where DEPRECATED_INIT_EXTRA_FRAME_INFO
|
||||
requires the PC value (which hasn't been set yet). Some other
|
||||
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
|
||||
INIT_EXTRA_FRAME_INFO, one possible scheme:
|
||||
DEPRECATED_INIT_EXTRA_FRAME_INFO, one possible scheme:
|
||||
|
||||
SETUP_INNERMOST_FRAME(): Default version is just create_new_frame
|
||||
(read_fp ()), read_pc ()). Machines with extra frame info would
|
||||
@ -1065,13 +1065,14 @@ legacy_get_prev_frame (struct frame_info *next_frame)
|
||||
create_new_frame would no longer init extra frame info;
|
||||
SETUP_ARBITRARY_FRAME would have to do that.
|
||||
|
||||
INIT_PREV_FRAME(fromleaf, prev) Replace INIT_EXTRA_FRAME_INFO and
|
||||
DEPRECATED_INIT_FRAME_PC. This should also return a flag saying
|
||||
whether to keep the new frame, or whether to discard it, because
|
||||
on some machines (e.g. mips) it is really awkward to have
|
||||
FRAME_CHAIN_VALID called *before* INIT_EXTRA_FRAME_INFO (there is
|
||||
no good way to get information deduced in FRAME_CHAIN_VALID into
|
||||
the extra fields of the new frame). std_frame_pc(fromleaf, prev)
|
||||
INIT_PREV_FRAME(fromleaf, prev) Replace
|
||||
DEPRECATED_INIT_EXTRA_FRAME_INFO and DEPRECATED_INIT_FRAME_PC.
|
||||
This should also return a flag saying whether to keep the new
|
||||
frame, or whether to discard it, because on some machines (e.g.
|
||||
mips) it is really awkward to have FRAME_CHAIN_VALID called
|
||||
BEFORE DEPRECATED_INIT_EXTRA_FRAME_INFO (there is no good way to
|
||||
get information deduced in FRAME_CHAIN_VALID into the extra
|
||||
fields of the new frame). std_frame_pc(fromleaf, prev)
|
||||
|
||||
This is the default setting for INIT_PREV_FRAME. It just does
|
||||
what the default DEPRECATED_INIT_FRAME_PC does. Some machines
|
||||
@ -1108,8 +1109,8 @@ legacy_get_prev_frame (struct frame_info *next_frame)
|
||||
if (DEPRECATED_INIT_FRAME_PC_FIRST_P ())
|
||||
prev->pc = (DEPRECATED_INIT_FRAME_PC_FIRST (fromleaf, prev));
|
||||
|
||||
if (INIT_EXTRA_FRAME_INFO_P ())
|
||||
INIT_EXTRA_FRAME_INFO (fromleaf, prev);
|
||||
if (DEPRECATED_INIT_EXTRA_FRAME_INFO_P ())
|
||||
DEPRECATED_INIT_EXTRA_FRAME_INFO (fromleaf, prev);
|
||||
|
||||
/* This entry is in the frame queue now, which is good since
|
||||
FRAME_SAVED_PC may use that queue to figure out its value (see
|
||||
@ -1282,7 +1283,7 @@ get_prev_frame (struct frame_info *next_frame)
|
||||
frames use the new unwind code. */
|
||||
if ((DEPRECATED_INIT_FRAME_PC_P ()
|
||||
|| DEPRECATED_INIT_FRAME_PC_FIRST_P ()
|
||||
|| INIT_EXTRA_FRAME_INFO_P ()
|
||||
|| DEPRECATED_INIT_EXTRA_FRAME_INFO_P ()
|
||||
|| FRAME_CHAIN_P ())
|
||||
&& next_frame->level >= 0)
|
||||
{
|
||||
@ -1315,7 +1316,8 @@ get_prev_frame (struct frame_info *next_frame)
|
||||
frame chain. This is ok since, for old targets, both
|
||||
frame_pc_unwind (nee, FRAME_SAVED_PC) and FRAME_CHAIN()) assume
|
||||
NEXT_FRAME's data structures have already been initialized (using
|
||||
INIT_EXTRA_FRAME_INFO) and hence the call order doesn't matter.
|
||||
DEPRECATED_INIT_EXTRA_FRAME_INFO) and hence the call order
|
||||
doesn't matter.
|
||||
|
||||
By unwinding the PC first, it becomes possible to, in the case of
|
||||
a dummy frame, avoid also unwinding the frame ID. This is
|
||||
@ -1381,12 +1383,13 @@ get_prev_frame (struct frame_info *next_frame)
|
||||
(passed to the unwind functions) to store additional frame info.
|
||||
Unfortunatly legacy targets can't use legacy_get_prev_frame() to
|
||||
unwind the sentinel frame and, consequently, are forced to take
|
||||
this code path and rely on the below call to INIT_EXTR_FRAME_INFO
|
||||
to initialize the inner-most frame. */
|
||||
if (INIT_EXTRA_FRAME_INFO_P ())
|
||||
this code path and rely on the below call to
|
||||
DEPRECATED_INIT_EXTRA_FRAME_INFO to initialize the inner-most
|
||||
frame. */
|
||||
if (DEPRECATED_INIT_EXTRA_FRAME_INFO_P ())
|
||||
{
|
||||
gdb_assert (prev_frame->level == 0);
|
||||
INIT_EXTRA_FRAME_INFO (0, prev_frame);
|
||||
DEPRECATED_INIT_EXTRA_FRAME_INFO (0, prev_frame);
|
||||
}
|
||||
|
||||
return prev_frame;
|
||||
|
@ -243,7 +243,7 @@ extern enum frame_type get_frame_type (struct frame_info *);
|
||||
PC_IN_SIGTRAMP() indicates a SIGTRAMP_FRAME and
|
||||
DEPRECATED_PC_IN_CALL_DUMMY() indicates a DUMMY_FRAME. I suspect
|
||||
the real problem here is that get_prev_frame() only sets
|
||||
initialized after INIT_EXTRA_FRAME_INFO as been called.
|
||||
initialized after DEPRECATED_INIT_EXTRA_FRAME_INFO as been called.
|
||||
Consequently, some targets found that the frame's type was wrong
|
||||
and tried to fix it. The correct fix is to modify get_prev_frame()
|
||||
so that it initializes the frame's type before calling any other
|
||||
@ -394,7 +394,7 @@ struct frame_info
|
||||
/* Anything extra for this structure that may have been defined
|
||||
in the machine dependent files. */
|
||||
/* Allocated by frame_extra_info_zalloc () which is called /
|
||||
initialized by INIT_EXTRA_FRAME_INFO */
|
||||
initialized by DEPRECATED_INIT_EXTRA_FRAME_INFO */
|
||||
struct frame_extra_info *extra_info;
|
||||
|
||||
/* If dwarf2 unwind frame informations is used, this structure holds all
|
||||
|
@ -1103,7 +1103,7 @@ frv_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
set_gdbarch_call_dummy_words (gdbarch, frv_call_dummy_words);
|
||||
set_gdbarch_sizeof_call_dummy_words (gdbarch, sizeof (frv_call_dummy_words));
|
||||
set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, frv_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, frv_init_extra_frame_info);
|
||||
|
||||
/* Settings that should be unnecessary. */
|
||||
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
|
||||
|
@ -226,7 +226,7 @@ struct gdbarch
|
||||
gdbarch_deprecated_extract_struct_value_address_ftype *deprecated_extract_struct_value_address;
|
||||
gdbarch_use_struct_convention_ftype *use_struct_convention;
|
||||
gdbarch_frame_init_saved_regs_ftype *frame_init_saved_regs;
|
||||
gdbarch_init_extra_frame_info_ftype *init_extra_frame_info;
|
||||
gdbarch_deprecated_init_extra_frame_info_ftype *deprecated_init_extra_frame_info;
|
||||
gdbarch_skip_prologue_ftype *skip_prologue;
|
||||
gdbarch_prologue_frameless_p_ftype *prologue_frameless_p;
|
||||
gdbarch_inner_than_ftype *inner_than;
|
||||
@ -737,7 +737,7 @@ verify_gdbarch (struct gdbarch *gdbarch)
|
||||
/* Skip verify of deprecated_extract_struct_value_address, has predicate */
|
||||
/* Skip verify of use_struct_convention, invalid_p == 0 */
|
||||
/* Skip verify of frame_init_saved_regs, has predicate */
|
||||
/* Skip verify of init_extra_frame_info, has predicate */
|
||||
/* Skip verify of deprecated_init_extra_frame_info, has predicate */
|
||||
if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL)
|
||||
&& (gdbarch->skip_prologue == 0))
|
||||
fprintf_unfiltered (log, "\n\tskip_prologue");
|
||||
@ -1170,6 +1170,29 @@ gdbarch_dump (struct gdbarch *gdbarch, struct ui_file *file)
|
||||
(long) current_gdbarch->deprecated_extract_struct_value_address
|
||||
/*DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS ()*/);
|
||||
#endif
|
||||
#ifdef DEPRECATED_INIT_EXTRA_FRAME_INFO_P
|
||||
fprintf_unfiltered (file,
|
||||
"gdbarch_dump: %s # %s\n",
|
||||
"DEPRECATED_INIT_EXTRA_FRAME_INFO_P()",
|
||||
XSTRING (DEPRECATED_INIT_EXTRA_FRAME_INFO_P ()));
|
||||
fprintf_unfiltered (file,
|
||||
"gdbarch_dump: DEPRECATED_INIT_EXTRA_FRAME_INFO_P() = %d\n",
|
||||
DEPRECATED_INIT_EXTRA_FRAME_INFO_P ());
|
||||
#endif
|
||||
#ifdef DEPRECATED_INIT_EXTRA_FRAME_INFO
|
||||
#if GDB_MULTI_ARCH
|
||||
/* Macro might contain `[{}]' when not multi-arch */
|
||||
fprintf_unfiltered (file,
|
||||
"gdbarch_dump: %s # %s\n",
|
||||
"DEPRECATED_INIT_EXTRA_FRAME_INFO(fromleaf, frame)",
|
||||
XSTRING (DEPRECATED_INIT_EXTRA_FRAME_INFO (fromleaf, frame)));
|
||||
#endif
|
||||
if (GDB_MULTI_ARCH)
|
||||
fprintf_unfiltered (file,
|
||||
"gdbarch_dump: DEPRECATED_INIT_EXTRA_FRAME_INFO = <0x%08lx>\n",
|
||||
(long) current_gdbarch->deprecated_init_extra_frame_info
|
||||
/*DEPRECATED_INIT_EXTRA_FRAME_INFO ()*/);
|
||||
#endif
|
||||
#ifdef DEPRECATED_INIT_FRAME_PC_P
|
||||
fprintf_unfiltered (file,
|
||||
"gdbarch_dump: %s # %s\n",
|
||||
@ -1611,29 +1634,6 @@ gdbarch_dump (struct gdbarch *gdbarch, struct ui_file *file)
|
||||
"gdbarch_dump: HAVE_NONSTEPPABLE_WATCHPOINT = %d\n",
|
||||
HAVE_NONSTEPPABLE_WATCHPOINT);
|
||||
#endif
|
||||
#ifdef INIT_EXTRA_FRAME_INFO_P
|
||||
fprintf_unfiltered (file,
|
||||
"gdbarch_dump: %s # %s\n",
|
||||
"INIT_EXTRA_FRAME_INFO_P()",
|
||||
XSTRING (INIT_EXTRA_FRAME_INFO_P ()));
|
||||
fprintf_unfiltered (file,
|
||||
"gdbarch_dump: INIT_EXTRA_FRAME_INFO_P() = %d\n",
|
||||
INIT_EXTRA_FRAME_INFO_P ());
|
||||
#endif
|
||||
#ifdef INIT_EXTRA_FRAME_INFO
|
||||
#if GDB_MULTI_ARCH
|
||||
/* Macro might contain `[{}]' when not multi-arch */
|
||||
fprintf_unfiltered (file,
|
||||
"gdbarch_dump: %s # %s\n",
|
||||
"INIT_EXTRA_FRAME_INFO(fromleaf, frame)",
|
||||
XSTRING (INIT_EXTRA_FRAME_INFO (fromleaf, frame)));
|
||||
#endif
|
||||
if (GDB_MULTI_ARCH)
|
||||
fprintf_unfiltered (file,
|
||||
"gdbarch_dump: INIT_EXTRA_FRAME_INFO = <0x%08lx>\n",
|
||||
(long) current_gdbarch->init_extra_frame_info
|
||||
/*INIT_EXTRA_FRAME_INFO ()*/);
|
||||
#endif
|
||||
#ifdef INNER_THAN
|
||||
fprintf_unfiltered (file,
|
||||
"gdbarch_dump: %s # %s\n",
|
||||
@ -4483,29 +4483,29 @@ set_gdbarch_frame_init_saved_regs (struct gdbarch *gdbarch,
|
||||
}
|
||||
|
||||
int
|
||||
gdbarch_init_extra_frame_info_p (struct gdbarch *gdbarch)
|
||||
gdbarch_deprecated_init_extra_frame_info_p (struct gdbarch *gdbarch)
|
||||
{
|
||||
gdb_assert (gdbarch != NULL);
|
||||
return gdbarch->init_extra_frame_info != 0;
|
||||
return gdbarch->deprecated_init_extra_frame_info != 0;
|
||||
}
|
||||
|
||||
void
|
||||
gdbarch_init_extra_frame_info (struct gdbarch *gdbarch, int fromleaf, struct frame_info *frame)
|
||||
gdbarch_deprecated_init_extra_frame_info (struct gdbarch *gdbarch, int fromleaf, struct frame_info *frame)
|
||||
{
|
||||
gdb_assert (gdbarch != NULL);
|
||||
if (gdbarch->init_extra_frame_info == 0)
|
||||
if (gdbarch->deprecated_init_extra_frame_info == 0)
|
||||
internal_error (__FILE__, __LINE__,
|
||||
"gdbarch: gdbarch_init_extra_frame_info invalid");
|
||||
"gdbarch: gdbarch_deprecated_init_extra_frame_info invalid");
|
||||
if (gdbarch_debug >= 2)
|
||||
fprintf_unfiltered (gdb_stdlog, "gdbarch_init_extra_frame_info called\n");
|
||||
gdbarch->init_extra_frame_info (fromleaf, frame);
|
||||
fprintf_unfiltered (gdb_stdlog, "gdbarch_deprecated_init_extra_frame_info called\n");
|
||||
gdbarch->deprecated_init_extra_frame_info (fromleaf, frame);
|
||||
}
|
||||
|
||||
void
|
||||
set_gdbarch_init_extra_frame_info (struct gdbarch *gdbarch,
|
||||
gdbarch_init_extra_frame_info_ftype init_extra_frame_info)
|
||||
set_gdbarch_deprecated_init_extra_frame_info (struct gdbarch *gdbarch,
|
||||
gdbarch_deprecated_init_extra_frame_info_ftype deprecated_init_extra_frame_info)
|
||||
{
|
||||
gdbarch->init_extra_frame_info = init_extra_frame_info;
|
||||
gdbarch->deprecated_init_extra_frame_info = deprecated_init_extra_frame_info;
|
||||
}
|
||||
|
||||
CORE_ADDR
|
||||
|
@ -1893,40 +1893,40 @@ extern void set_gdbarch_frame_init_saved_regs (struct gdbarch *gdbarch, gdbarch_
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined (INIT_EXTRA_FRAME_INFO)
|
||||
/* Legacy for systems yet to multi-arch INIT_EXTRA_FRAME_INFO */
|
||||
#if !defined (INIT_EXTRA_FRAME_INFO_P)
|
||||
#define INIT_EXTRA_FRAME_INFO_P() (1)
|
||||
#if defined (DEPRECATED_INIT_EXTRA_FRAME_INFO)
|
||||
/* Legacy for systems yet to multi-arch DEPRECATED_INIT_EXTRA_FRAME_INFO */
|
||||
#if !defined (DEPRECATED_INIT_EXTRA_FRAME_INFO_P)
|
||||
#define DEPRECATED_INIT_EXTRA_FRAME_INFO_P() (1)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* Default predicate for non- multi-arch targets. */
|
||||
#if (!GDB_MULTI_ARCH) && !defined (INIT_EXTRA_FRAME_INFO_P)
|
||||
#define INIT_EXTRA_FRAME_INFO_P() (0)
|
||||
#if (!GDB_MULTI_ARCH) && !defined (DEPRECATED_INIT_EXTRA_FRAME_INFO_P)
|
||||
#define DEPRECATED_INIT_EXTRA_FRAME_INFO_P() (0)
|
||||
#endif
|
||||
|
||||
extern int gdbarch_init_extra_frame_info_p (struct gdbarch *gdbarch);
|
||||
#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (INIT_EXTRA_FRAME_INFO_P)
|
||||
#error "Non multi-arch definition of INIT_EXTRA_FRAME_INFO"
|
||||
extern int gdbarch_deprecated_init_extra_frame_info_p (struct gdbarch *gdbarch);
|
||||
#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (DEPRECATED_INIT_EXTRA_FRAME_INFO_P)
|
||||
#error "Non multi-arch definition of DEPRECATED_INIT_EXTRA_FRAME_INFO"
|
||||
#endif
|
||||
#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) || !defined (INIT_EXTRA_FRAME_INFO_P)
|
||||
#define INIT_EXTRA_FRAME_INFO_P() (gdbarch_init_extra_frame_info_p (current_gdbarch))
|
||||
#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) || !defined (DEPRECATED_INIT_EXTRA_FRAME_INFO_P)
|
||||
#define DEPRECATED_INIT_EXTRA_FRAME_INFO_P() (gdbarch_deprecated_init_extra_frame_info_p (current_gdbarch))
|
||||
#endif
|
||||
|
||||
/* Default (function) for non- multi-arch platforms. */
|
||||
#if (!GDB_MULTI_ARCH) && !defined (INIT_EXTRA_FRAME_INFO)
|
||||
#define INIT_EXTRA_FRAME_INFO(fromleaf, frame) (internal_error (__FILE__, __LINE__, "INIT_EXTRA_FRAME_INFO"), 0)
|
||||
#if (!GDB_MULTI_ARCH) && !defined (DEPRECATED_INIT_EXTRA_FRAME_INFO)
|
||||
#define DEPRECATED_INIT_EXTRA_FRAME_INFO(fromleaf, frame) (internal_error (__FILE__, __LINE__, "DEPRECATED_INIT_EXTRA_FRAME_INFO"), 0)
|
||||
#endif
|
||||
|
||||
typedef void (gdbarch_init_extra_frame_info_ftype) (int fromleaf, struct frame_info *frame);
|
||||
extern void gdbarch_init_extra_frame_info (struct gdbarch *gdbarch, int fromleaf, struct frame_info *frame);
|
||||
extern void set_gdbarch_init_extra_frame_info (struct gdbarch *gdbarch, gdbarch_init_extra_frame_info_ftype *init_extra_frame_info);
|
||||
#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (INIT_EXTRA_FRAME_INFO)
|
||||
#error "Non multi-arch definition of INIT_EXTRA_FRAME_INFO"
|
||||
typedef void (gdbarch_deprecated_init_extra_frame_info_ftype) (int fromleaf, struct frame_info *frame);
|
||||
extern void gdbarch_deprecated_init_extra_frame_info (struct gdbarch *gdbarch, int fromleaf, struct frame_info *frame);
|
||||
extern void set_gdbarch_deprecated_init_extra_frame_info (struct gdbarch *gdbarch, gdbarch_deprecated_init_extra_frame_info_ftype *deprecated_init_extra_frame_info);
|
||||
#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && defined (DEPRECATED_INIT_EXTRA_FRAME_INFO)
|
||||
#error "Non multi-arch definition of DEPRECATED_INIT_EXTRA_FRAME_INFO"
|
||||
#endif
|
||||
#if GDB_MULTI_ARCH
|
||||
#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) || !defined (INIT_EXTRA_FRAME_INFO)
|
||||
#define INIT_EXTRA_FRAME_INFO(fromleaf, frame) (gdbarch_init_extra_frame_info (current_gdbarch, fromleaf, frame))
|
||||
#if (GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) || !defined (DEPRECATED_INIT_EXTRA_FRAME_INFO)
|
||||
#define DEPRECATED_INIT_EXTRA_FRAME_INFO(fromleaf, frame) (gdbarch_deprecated_init_extra_frame_info (current_gdbarch, fromleaf, frame))
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
@ -573,7 +573,7 @@ F:2:DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS:CORE_ADDR:deprecated_extract_struct_
|
||||
f:2:USE_STRUCT_CONVENTION:int:use_struct_convention:int gcc_p, struct type *value_type:gcc_p, value_type:::generic_use_struct_convention::0
|
||||
#
|
||||
F:2:FRAME_INIT_SAVED_REGS:void:frame_init_saved_regs:struct frame_info *frame:frame:::0
|
||||
F:2:INIT_EXTRA_FRAME_INFO:void:init_extra_frame_info:int fromleaf, struct frame_info *frame:fromleaf, frame:::0
|
||||
F:2:DEPRECATED_INIT_EXTRA_FRAME_INFO:void:deprecated_init_extra_frame_info:int fromleaf, struct frame_info *frame:fromleaf, frame:::0
|
||||
#
|
||||
f:2:SKIP_PROLOGUE:CORE_ADDR:skip_prologue:CORE_ADDR ip:ip::0:0
|
||||
f:2:PROLOGUE_FRAMELESS_P:int:prologue_frameless_p:CORE_ADDR ip:ip::0:generic_prologue_frameless_p::0
|
||||
|
@ -485,8 +485,8 @@ h8300_frame_init_saved_regs (struct frame_info *fi)
|
||||
|
||||
/* Given a GDB frame, determine the address of the calling function's
|
||||
frame. This will be used to create a new GDB frame struct, and
|
||||
then INIT_EXTRA_FRAME_INFO and DEPRECATED_INIT_FRAME_PC will be
|
||||
called for the new frame.
|
||||
then DEPRECATED_INIT_EXTRA_FRAME_INFO and DEPRECATED_INIT_FRAME_PC
|
||||
will be called for the new frame.
|
||||
|
||||
For us, the frame address is its stack pointer value, so we look up
|
||||
the function prologue to determine the caller's sp value, and return it. */
|
||||
@ -1118,7 +1118,7 @@ h8300_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
/*
|
||||
* Frame Info
|
||||
*/
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, h8300_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, h8300_init_extra_frame_info);
|
||||
set_gdbarch_frame_init_saved_regs (gdbarch, h8300_frame_init_saved_regs);
|
||||
set_gdbarch_frame_chain (gdbarch, h8300_frame_chain);
|
||||
set_gdbarch_saved_pc_after_call (gdbarch, h8300_saved_pc_after_call);
|
||||
|
@ -1110,8 +1110,8 @@ hppa_init_extra_frame_info (int fromleaf, struct frame_info *frame)
|
||||
|
||||
/* Given a GDB frame, determine the address of the calling function's
|
||||
frame. This will be used to create a new GDB frame struct, and
|
||||
then INIT_EXTRA_FRAME_INFO and DEPRECATED_INIT_FRAME_PC will be
|
||||
called for the new frame.
|
||||
then DEPRECATED_INIT_EXTRA_FRAME_INFO and DEPRECATED_INIT_FRAME_PC
|
||||
will be called for the new frame.
|
||||
|
||||
This may involve searching through prologues for several functions
|
||||
at boundaries where GCC calls HP C code, or where code which has
|
||||
@ -5006,7 +5006,7 @@ hppa_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
set_gdbarch_deprecated_extract_struct_value_address
|
||||
(gdbarch, hppa_extract_struct_value_address);
|
||||
set_gdbarch_cannot_store_register (gdbarch, hppa_cannot_store_register);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, hppa_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, hppa_init_extra_frame_info);
|
||||
set_gdbarch_frame_chain (gdbarch, hppa_frame_chain);
|
||||
set_gdbarch_frame_chain_valid (gdbarch, hppa_frame_chain_valid);
|
||||
set_gdbarch_frameless_function_invocation
|
||||
|
@ -100,7 +100,8 @@ static int
|
||||
i386_interix_pc_in_sigtramp (CORE_ADDR pc, char *name)
|
||||
{
|
||||
/* This is sufficient, where used, but is NOT a complete test; There
|
||||
is more in INIT_EXTRA_FRAME_INFO (a.k.a. interix_back_one_frame). */
|
||||
is more in DEPRECATED_INIT_EXTRA_FRAME_INFO
|
||||
(a.k.a. interix_back_one_frame). */
|
||||
return ((pc >= tramp_start && pc < tramp_end)
|
||||
|| (pc >= null_start && pc < null_end));
|
||||
}
|
||||
@ -330,7 +331,7 @@ i386_interix_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||
i386_interix_in_solib_call_trampoline);
|
||||
set_gdbarch_skip_trampoline_code (gdbarch,
|
||||
i386_interix_skip_trampoline_code);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, i386_interix_back_one_frame);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, i386_interix_back_one_frame);
|
||||
set_gdbarch_deprecated_init_frame_pc (gdbarch, init_frame_pc_noop);
|
||||
set_gdbarch_frame_chain_valid (gdbarch, i386_interix_frame_chain_valid);
|
||||
set_gdbarch_frame_saved_pc (gdbarch, i386_interix_frame_saved_pc);
|
||||
|
@ -100,7 +100,6 @@ static gdbarch_deprecated_extract_return_value_ftype ia64_extract_return_value;
|
||||
static gdbarch_deprecated_extract_struct_value_address_ftype ia64_extract_struct_value_address;
|
||||
static gdbarch_use_struct_convention_ftype ia64_use_struct_convention;
|
||||
static gdbarch_frameless_function_invocation_ftype ia64_frameless_function_invocation;
|
||||
static gdbarch_init_extra_frame_info_ftype ia64_init_extra_frame_info;
|
||||
static gdbarch_store_struct_return_ftype ia64_store_struct_return;
|
||||
static gdbarch_push_arguments_ftype ia64_push_arguments;
|
||||
static gdbarch_push_return_address_ftype ia64_push_return_address;
|
||||
@ -2231,7 +2230,7 @@ ia64_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
set_gdbarch_call_dummy_words (gdbarch, ia64_call_dummy_words);
|
||||
set_gdbarch_sizeof_call_dummy_words (gdbarch, sizeof (ia64_call_dummy_words));
|
||||
set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 1);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, ia64_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, ia64_init_extra_frame_info);
|
||||
set_gdbarch_frame_args_address (gdbarch, ia64_frame_args_address);
|
||||
set_gdbarch_frame_locals_address (gdbarch, ia64_frame_locals_address);
|
||||
|
||||
|
@ -816,8 +816,8 @@ m68hc11_skip_prologue (CORE_ADDR pc)
|
||||
|
||||
/* Given a GDB frame, determine the address of the calling function's
|
||||
frame. This will be used to create a new GDB frame struct, and
|
||||
then INIT_EXTRA_FRAME_INFO and DEPRECATED_INIT_FRAME_PC will be
|
||||
called for the new frame. */
|
||||
then DEPRECATED_INIT_EXTRA_FRAME_INFO and DEPRECATED_INIT_FRAME_PC
|
||||
will be called for the new frame. */
|
||||
|
||||
static CORE_ADDR
|
||||
m68hc11_frame_chain (struct frame_info *frame)
|
||||
@ -1417,7 +1417,7 @@ m68hc11_gdbarch_init (struct gdbarch_info info,
|
||||
set_gdbarch_deprecated_extract_struct_value_address
|
||||
(gdbarch, m68hc11_extract_struct_value_address);
|
||||
set_gdbarch_use_struct_convention (gdbarch, m68hc11_use_struct_convention);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, m68hc11_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, m68hc11_init_extra_frame_info);
|
||||
set_gdbarch_pop_frame (gdbarch, m68hc11_pop_frame);
|
||||
set_gdbarch_skip_prologue (gdbarch, m68hc11_skip_prologue);
|
||||
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
|
||||
|
@ -643,8 +643,8 @@ mcore_analyze_prologue (struct frame_info *fi, CORE_ADDR pc, int skip_prologue)
|
||||
|
||||
/* Given a GDB frame, determine the address of the calling function's
|
||||
frame. This will be used to create a new GDB frame struct, and
|
||||
then INIT_EXTRA_FRAME_INFO and DEPRECATED_INIT_FRAME_PC will be
|
||||
called for the new frame. */
|
||||
then DEPRECATED_INIT_EXTRA_FRAME_INFO and DEPRECATED_INIT_FRAME_PC
|
||||
will be called for the new frame. */
|
||||
|
||||
CORE_ADDR
|
||||
mcore_frame_chain (struct frame_info * fi)
|
||||
@ -1136,7 +1136,7 @@ mcore_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
|
||||
/* Frames: */
|
||||
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, mcore_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, mcore_init_extra_frame_info);
|
||||
set_gdbarch_frame_chain (gdbarch, mcore_frame_chain);
|
||||
set_gdbarch_frame_init_saved_regs (gdbarch, mcore_frame_init_saved_regs);
|
||||
set_gdbarch_frame_saved_pc (gdbarch, mcore_frame_saved_pc);
|
||||
|
@ -5982,7 +5982,7 @@ mips_gdbarch_init (struct gdbarch_info info,
|
||||
set_gdbarch_ecoff_reg_to_regnum (gdbarch, mips_ecoff_reg_to_regnum);
|
||||
|
||||
/* Initialize a frame */
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, mips_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, mips_init_extra_frame_info);
|
||||
set_gdbarch_frame_init_saved_regs (gdbarch, mips_frame_init_saved_regs);
|
||||
|
||||
/* MIPS version of CALL_DUMMY */
|
||||
|
@ -1167,7 +1167,7 @@ mn10300_gdbarch_init (struct gdbarch_info info,
|
||||
/* Stack unwinding. */
|
||||
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
|
||||
set_gdbarch_saved_pc_after_call (gdbarch, mn10300_saved_pc_after_call);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, mn10300_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, mn10300_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_frame_pc (gdbarch, init_frame_pc_noop);
|
||||
set_gdbarch_frame_init_saved_regs (gdbarch, mn10300_frame_init_saved_regs);
|
||||
set_gdbarch_frame_chain (gdbarch, mn10300_frame_chain);
|
||||
|
@ -734,7 +734,7 @@ ppc_linux_init_abi (struct gdbarch_info info,
|
||||
|
||||
set_gdbarch_frame_init_saved_regs (gdbarch,
|
||||
ppc_linux_frame_init_saved_regs);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch,
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch,
|
||||
ppc_linux_init_extra_frame_info);
|
||||
|
||||
set_gdbarch_memory_remove_breakpoint (gdbarch,
|
||||
|
@ -2941,7 +2941,7 @@ rs6000_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
set_gdbarch_frame_saved_pc (gdbarch, rs6000_frame_saved_pc);
|
||||
|
||||
set_gdbarch_frame_init_saved_regs (gdbarch, rs6000_frame_init_saved_regs);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, rs6000_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, rs6000_init_extra_frame_info);
|
||||
|
||||
if (!sysv_abi)
|
||||
{
|
||||
|
@ -1830,7 +1830,7 @@ s390_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
set_gdbarch_max_register_virtual_size (gdbarch, 8);
|
||||
set_gdbarch_breakpoint_from_pc (gdbarch, s390_breakpoint_from_pc);
|
||||
set_gdbarch_skip_prologue (gdbarch, s390_skip_prologue);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, s390_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, s390_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_frame_pc_first (gdbarch, s390_init_frame_pc_first);
|
||||
set_gdbarch_read_fp (gdbarch, s390_read_fp);
|
||||
/* This function that tells us whether the function invocation represented
|
||||
|
@ -943,8 +943,8 @@ gdb_print_insn_sh (bfd_vma memaddr, disassemble_info *info)
|
||||
|
||||
/* Given a GDB frame, determine the address of the calling function's
|
||||
frame. This will be used to create a new GDB frame struct, and
|
||||
then INIT_EXTRA_FRAME_INFO and DEPRECATED_INIT_FRAME_PC will be
|
||||
called for the new frame.
|
||||
then DEPRECATED_INIT_EXTRA_FRAME_INFO and DEPRECATED_INIT_FRAME_PC
|
||||
will be called for the new frame.
|
||||
|
||||
For us, the frame address is its stack pointer value, so we look up
|
||||
the function prologue to determine the caller's sp value, and return it. */
|
||||
@ -4373,7 +4373,7 @@ sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
set_gdbarch_breakpoint_from_pc (gdbarch, sh_breakpoint_from_pc);
|
||||
set_gdbarch_frame_chain (gdbarch, sh_frame_chain);
|
||||
set_gdbarch_get_saved_register (gdbarch, deprecated_generic_get_saved_register);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, sh_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, sh_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_extract_return_value (gdbarch, sh_extract_return_value);
|
||||
set_gdbarch_push_arguments (gdbarch, sh_push_arguments);
|
||||
set_gdbarch_store_struct_return (gdbarch, sh_store_struct_return);
|
||||
@ -4613,7 +4613,7 @@ sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
set_gdbarch_deprecated_do_registers_info (gdbarch, sh64_do_registers_info);
|
||||
set_gdbarch_frame_init_saved_regs (gdbarch, sh64_nofp_frame_init_saved_regs);
|
||||
set_gdbarch_breakpoint_from_pc (gdbarch, sh_sh64_breakpoint_from_pc);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, sh64_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, sh64_init_extra_frame_info);
|
||||
set_gdbarch_frame_chain (gdbarch, sh64_frame_chain);
|
||||
set_gdbarch_get_saved_register (gdbarch, sh64_get_saved_register);
|
||||
set_gdbarch_deprecated_extract_return_value (gdbarch, sh64_extract_return_value);
|
||||
|
@ -3151,7 +3151,7 @@ sparc_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
set_gdbarch_frameless_function_invocation (gdbarch,
|
||||
frameless_look_for_prologue);
|
||||
set_gdbarch_get_saved_register (gdbarch, sparc_get_saved_register);
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, sparc_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, sparc_init_extra_frame_info);
|
||||
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
|
||||
set_gdbarch_int_bit (gdbarch, 4 * TARGET_CHAR_BIT);
|
||||
set_gdbarch_long_double_bit (gdbarch, 16 * TARGET_CHAR_BIT);
|
||||
|
@ -1242,7 +1242,7 @@ v850_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
/*
|
||||
* Frame Info
|
||||
*/
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, v850_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, v850_init_extra_frame_info);
|
||||
set_gdbarch_frame_init_saved_regs (gdbarch, v850_frame_init_saved_regs);
|
||||
set_gdbarch_frame_chain (gdbarch, v850_frame_chain);
|
||||
set_gdbarch_saved_pc_after_call (gdbarch, v850_saved_pc_after_call);
|
||||
|
@ -1011,7 +1011,7 @@ x86_64_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
|
||||
set_gdbarch_dwarf2_build_frame_info (gdbarch, dwarf2_build_frame_info);
|
||||
|
||||
/* Initialization of per-frame CFI. */
|
||||
set_gdbarch_init_extra_frame_info (gdbarch, cfi_init_extra_frame_info);
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch, cfi_init_extra_frame_info);
|
||||
|
||||
/* Frame PC initialization is handled by using CFI. */
|
||||
set_gdbarch_deprecated_init_frame_pc (gdbarch, x86_64_init_frame_pc);
|
||||
|
@ -1053,7 +1053,7 @@ xstormy16_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
|
||||
/*
|
||||
* Frame Info
|
||||
*/
|
||||
set_gdbarch_init_extra_frame_info (gdbarch,
|
||||
set_gdbarch_deprecated_init_extra_frame_info (gdbarch,
|
||||
xstormy16_init_extra_frame_info);
|
||||
set_gdbarch_frame_init_saved_regs (gdbarch,
|
||||
xstormy16_frame_init_saved_regs);
|
||||
|
Loading…
x
Reference in New Issue
Block a user