aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Burgess <andrew.burgess@embecosm.com>2019-01-10 18:46:27 +0000
committerAndrew Burgess <andrew.burgess@embecosm.com>2019-04-23 22:50:23 +0100
commitaee6c3cd1fea463422f19394f95c311f239b6067 (patch)
tree5daaf560e93f9c6524e2801d945d985ae1c2ed22
parent8e2b5aea9d3f16961f7fac15caec00e955c1dc81 (diff)
downloadbinutils-aee6c3cd1fea463422f19394f95c311f239b6067.zip
binutils-aee6c3cd1fea463422f19394f95c311f239b6067.tar.gz
binutils-aee6c3cd1fea463422f19394f95c311f239b6067.tar.bz2
gdb/mn10300: Use default gdbarch methods where possible
Make use of the default gdbarch methods for gdbarch_dummy_id, gdbarch_unwind_pc, and gdbarch_unwind_sp where possible. I have not tested this change but, by inspecting the code, I believe the default methods are equivalent to the code being deleted. gdb/ChangeLog: * mn10300-tdep.c (mn10300_dummy_id): Delete. (mn10300_unwind_pc): Delete. (mn10300_unwind_sp): Delete. (mn10300_push_dummy_call): Use gdbarch_unwind_sp not mn10300_unwind_sp. (mn10300_frame_unwind_init): Don't register deleted functions with gdbarch.
-rw-r--r--gdb/ChangeLog10
-rw-r--r--gdb/mn10300-tdep.c32
2 files changed, 11 insertions, 31 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index f819b1b..c2539c5 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,15 @@
2019-04-23 Andrew Burgess <andrew.burgess@embecosm.com>
+ * mn10300-tdep.c (mn10300_dummy_id): Delete.
+ (mn10300_unwind_pc): Delete.
+ (mn10300_unwind_sp): Delete.
+ (mn10300_push_dummy_call): Use gdbarch_unwind_sp not
+ mn10300_unwind_sp.
+ (mn10300_frame_unwind_init): Don't register deleted functions with
+ gdbarch.
+
+2019-04-23 Andrew Burgess <andrew.burgess@embecosm.com>
+
* mep-tdep.c (mep_unwind_pc): Delete.
(mep_unwind_sp): Delete.
(mep_dummy_id): Delete.
diff --git a/gdb/mn10300-tdep.c b/gdb/mn10300-tdep.c
index 583827e..1a08ea0 100644
--- a/gdb/mn10300-tdep.c
+++ b/gdb/mn10300-tdep.c
@@ -1098,15 +1098,6 @@ mn10300_frame_base (struct frame_info *this_frame, void **this_prologue_cache)
}
}
-/* Here is a dummy implementation. */
-static struct frame_id
-mn10300_dummy_id (struct gdbarch *gdbarch, struct frame_info *this_frame)
-{
- CORE_ADDR sp = get_frame_register_unsigned (this_frame, E_SP_REGNUM);
- CORE_ADDR pc = get_frame_register_unsigned (this_frame, E_PC_REGNUM);
- return frame_id_build (sp, pc);
-}
-
static void
mn10300_frame_this_id (struct frame_info *this_frame,
void **this_prologue_cache,
@@ -1149,32 +1140,11 @@ static const struct frame_unwind mn10300_frame_unwind = {
default_frame_sniffer
};
-static CORE_ADDR
-mn10300_unwind_pc (struct gdbarch *gdbarch, struct frame_info *this_frame)
-{
- ULONGEST pc;
-
- pc = frame_unwind_register_unsigned (this_frame, E_PC_REGNUM);
- return pc;
-}
-
-static CORE_ADDR
-mn10300_unwind_sp (struct gdbarch *gdbarch, struct frame_info *this_frame)
-{
- ULONGEST sp;
-
- sp = frame_unwind_register_unsigned (this_frame, E_SP_REGNUM);
- return sp;
-}
-
static void
mn10300_frame_unwind_init (struct gdbarch *gdbarch)
{
dwarf2_append_unwinders (gdbarch);
frame_unwind_append_unwinder (gdbarch, &mn10300_frame_unwind);
- set_gdbarch_dummy_id (gdbarch, mn10300_dummy_id);
- set_gdbarch_unwind_pc (gdbarch, mn10300_unwind_pc);
- set_gdbarch_unwind_sp (gdbarch, mn10300_unwind_sp);
}
/* Function: push_dummy_call
@@ -1308,7 +1278,7 @@ mn10300_push_dummy_call (struct gdbarch *gdbarch,
{
CORE_ADDR func_addr = find_function_addr (target_func, NULL);
CORE_ADDR unwound_sp
- = mn10300_unwind_sp (gdbarch, create_new_frame (sp, func_addr));
+ = gdbarch_unwind_sp (gdbarch, create_new_frame (sp, func_addr));
if (sp != unwound_sp)
regcache_cooked_write_unsigned (regcache, E_SP_REGNUM,
sp - (unwound_sp - sp));