This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
[commit] Don't call deprecated_inside_entry_file from ...id_unwind()
- From: Andrew Cagney <ac131313 at redhat dot com>
- To: gdb-patches at sources dot redhat dot com
- Date: Fri, 31 Oct 2003 19:00:09 -0500
- Subject: [commit] Don't call deprecated_inside_entry_file from ...id_unwind()
Hello,
Sometime ago, while developing the frame unwind code using the d10v, I
added an innocent looking hack that stopped the d10v falling off the end
of its stack:
- /* This is meant to halt the backtrace at "_start". Make sure we
- don't halt it at a generic dummy frame. */
- if (func <= IMEM_START || inside_entry_file (func))
- return;
That logic being lifed from even older frame chain code.
I then later fixed the underlying problem (inside_main_func was broken),
but forgot to remove that hack.
Oops!
That innocent looking code as quitely spread to at least 4 other
architectures (there was no comment saying "hey you don't need this").
Anyway, the attached patch removes all occurance of the hack.
committed,
Andrew
2003-10-31 Andrew Cagney <cagney@redhat.com>
* avr-tdep.c (avr_frame_this_id): Do not call
deprecated_inside_entry_file.
* m68hc11-tdep.c (m68hc11_frame_this_id): Ditto.
* m32r-tdep.c (m32r_frame_this_id): Ditto.
* d10v-tdep.c (d10v_frame_this_id): Ditto.
* arm-tdep.c (arm_prologue_this_id): Ditto.
* alpha-tdep.c (alpha_heuristic_frame_this_id): Ditto.
Index: alpha-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/alpha-tdep.c,v
retrieving revision 1.122
diff -u -r1.122 alpha-tdep.c
--- alpha-tdep.c 14 Sep 2003 16:32:12 -0000 1.122
+++ alpha-tdep.c 31 Oct 2003 23:46:17 -0000
@@ -1136,11 +1136,6 @@
struct alpha_heuristic_unwind_cache *info
= alpha_heuristic_frame_unwind_cache (next_frame, this_prologue_cache, 0);
- /* This is meant to halt the backtrace at "_start". Make sure we
- don't halt it at a generic dummy frame. */
- if (deprecated_inside_entry_file (info->start_pc))
- return;
-
*this_id = frame_id_build (info->vfp, info->start_pc);
}
Index: arm-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/arm-tdep.c,v
retrieving revision 1.153
diff -u -r1.153 arm-tdep.c
--- arm-tdep.c 2 Oct 2003 20:28:28 -0000 1.153
+++ arm-tdep.c 31 Oct 2003 23:46:17 -0000
@@ -994,7 +994,7 @@
/* This is meant to halt the backtrace at "_start". Make sure we
don't halt it at a generic dummy frame. */
- if (func <= LOWEST_PC || deprecated_inside_entry_file (func))
+ if (func <= LOWEST_PC)
return;
/* If we've hit a wall, stop. */
Index: avr-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/avr-tdep.c,v
retrieving revision 1.72
diff -u -r1.72 avr-tdep.c
--- avr-tdep.c 17 Oct 2003 18:24:49 -0000 1.72
+++ avr-tdep.c 31 Oct 2003 23:46:18 -0000
@@ -970,11 +970,6 @@
/* The FUNC is easy. */
func = frame_func_unwind (next_frame);
- /* This is meant to halt the backtrace at "_start". Make sure we
- don't halt it at a generic dummy frame. */
- if (deprecated_inside_entry_file (func))
- return;
-
/* Hopefully the prologue analysis either correctly determined the
frame's base (which is the SP from the previous frame), or set
that base to "NULL". */
Index: d10v-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/d10v-tdep.c,v
retrieving revision 1.135
diff -u -r1.135 d10v-tdep.c
--- d10v-tdep.c 10 Oct 2003 21:59:05 -0000 1.135
+++ d10v-tdep.c 31 Oct 2003 23:46:18 -0000
@@ -1405,11 +1405,6 @@
/* The FUNC is easy. */
func = frame_func_unwind (next_frame);
- /* This is meant to halt the backtrace at "_start". Make sure we
- don't halt it at a generic dummy frame. */
- if (func <= IMEM_START || deprecated_inside_entry_file (func))
- return;
-
/* Hopefully the prologue analysis either correctly determined the
frame's base (which is the SP from the previous frame), or set
that base to "NULL". */
Index: m32r-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/m32r-tdep.c,v
retrieving revision 1.19
diff -u -r1.19 m32r-tdep.c
--- m32r-tdep.c 8 Oct 2003 02:41:49 -0000 1.19
+++ m32r-tdep.c 31 Oct 2003 23:46:18 -0000
@@ -831,11 +831,6 @@
/* The FUNC is easy. */
func = frame_func_unwind (next_frame);
- /* This is meant to halt the backtrace at "_start". Make sure we
- don't halt it at a generic dummy frame. */
- if (deprecated_inside_entry_file (func))
- return;
-
/* Check if the stack is empty. */
msym_stack = lookup_minimal_symbol ("_stack", NULL, NULL);
if (msym_stack && info->base == SYMBOL_VALUE_ADDRESS (msym_stack))
Index: m68hc11-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/m68hc11-tdep.c,v
retrieving revision 1.91
diff -u -r1.91 m68hc11-tdep.c
--- m68hc11-tdep.c 28 Sep 2003 22:32:19 -0000 1.91
+++ m68hc11-tdep.c 31 Oct 2003 23:46:18 -0000
@@ -894,11 +894,6 @@
/* The FUNC is easy. */
func = frame_func_unwind (next_frame);
- /* This is meant to halt the backtrace at "_start". Make sure we
- don't halt it at a generic dummy frame. */
- if (deprecated_inside_entry_file (func))
- return;
-
/* Hopefully the prologue analysis either correctly determined the
frame's base (which is the SP from the previous frame), or set
that base to "NULL". */