From 6a9235cbe89a90553e01f9d5ed4c86e3a99cc1df Mon Sep 17 00:00:00 2001 From: brobecke Date: Wed, 7 Mar 2007 21:32:47 +0000 Subject: [PATCH] * mips-tdep.c (mips_insn16_frame_cache, mips_insn32_frame_sniffer): Revert the previous change that had some unexpected side-effects on mips32. (mips_insn16_frame_cache, mips_insn32_frame_cache): Use the proper function to get the address of the calling instruction. --- gdb/ChangeLog | 8 ++++++++ gdb/mips-tdep.c | 10 ++++++---- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 9ec6c705a2..b175619788 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,11 @@ +2007-03-07 Joel Brobecker + + * mips-tdep.c (mips_insn16_frame_cache, mips_insn32_frame_sniffer): + Revert the previous change that had some unexpected side-effects + on mips32. + (mips_insn16_frame_cache, mips_insn32_frame_cache): Use the proper + function to get the address of the calling instruction. + 2007-03-07 Denis Pilat * tui/tui-hooks.c (tui_selected_frame_level_changed_hook): Replace diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c index c8e958a58c..3a5e49b37c 100644 --- a/gdb/mips-tdep.c +++ b/gdb/mips-tdep.c @@ -1640,7 +1640,8 @@ mips_insn16_frame_cache (struct frame_info *next_frame, void **this_cache) /* Analyze the function prologue. */ { - const CORE_ADDR pc = frame_pc_unwind (next_frame); + const CORE_ADDR pc = + frame_unwind_address_in_block (next_frame, NORMAL_FRAME); CORE_ADDR start_addr; find_pc_partial_function (pc, NULL, &start_addr, NULL); @@ -1693,7 +1694,7 @@ static const struct frame_unwind mips_insn16_frame_unwind = static const struct frame_unwind * mips_insn16_frame_sniffer (struct frame_info *next_frame) { - CORE_ADDR pc = frame_unwind_address_in_block (next_frame, NORMAL_FRAME); + CORE_ADDR pc = frame_pc_unwind (next_frame); if (mips_pc_is_mips16 (pc)) return &mips_insn16_frame_unwind; return NULL; @@ -1961,7 +1962,8 @@ mips_insn32_frame_cache (struct frame_info *next_frame, void **this_cache) /* Analyze the function prologue. */ { - const CORE_ADDR pc = frame_pc_unwind (next_frame); + const CORE_ADDR pc = + frame_unwind_address_in_block (next_frame, NORMAL_FRAME); CORE_ADDR start_addr; find_pc_partial_function (pc, NULL, &start_addr, NULL); @@ -2014,7 +2016,7 @@ static const struct frame_unwind mips_insn32_frame_unwind = static const struct frame_unwind * mips_insn32_frame_sniffer (struct frame_info *next_frame) { - CORE_ADDR pc = frame_unwind_address_in_block (next_frame, NORMAL_FRAME); + CORE_ADDR pc = frame_pc_unwind (next_frame); if (! mips_pc_is_mips16 (pc)) return &mips_insn32_frame_unwind; return NULL; -- 2.11.0