This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
[RFA] Remove calls to inside_entry_file
- From: Corinna Vinschen <vinschen at redhat dot com>
- To: gdb-patches at sources dot redhat dot com
- Date: Thu, 27 Mar 2003 12:33:30 +0100
- Subject: [RFA] Remove calls to inside_entry_file
- Reply-to: gdb-patches at sources dot redhat dot com
Hi,
according to my RFC on the gdb mailing list
http://sources.redhat.com/ml/gdb/2003-03/msg00358.html
I'm now proposing to remove calls to inside_entry_func entirely from
the generic code. Additionally I've removed the call from
i386_frame_chain with no regressions on Linux and 7 new PASSes instead
of FAILs on Cygwin.
Corinna
2003-03-26 Corinna Vinschen <vinschen at redhat dot com>
* blockframe.c (frame_chain_valid): Remove call to inside_entry_file().
* frame.c (get_prev_frame): Ditto.
* i386-tdep.c (i386_frame_chain): Ditto.
Index: blockframe.c
===================================================================
RCS file: /cvs/src/src/gdb/blockframe.c,v
retrieving revision 1.65
diff -u -p -r1.65 blockframe.c
--- blockframe.c 24 Mar 2003 03:54:47 -0000 1.65
+++ blockframe.c 27 Mar 2003 11:25:19 -0000
@@ -580,13 +580,6 @@ frame_chain_valid (CORE_ADDR fp, struct
if (inside_entry_func (get_frame_pc (fi)))
return 0;
- /* If we're inside the entry file, it isn't valid. */
- /* NOTE/drow 2002-12-25: should there be a way to disable this check? It
- assumes a single small entry file, and the way some debug readers (e.g.
- dbxread) figure out which object is the entry file is somewhat hokey. */
- if (inside_entry_file (frame_pc_unwind (fi)))
- return 0;
-
/* If the architecture has a custom DEPRECATED_FRAME_CHAIN_VALID,
call it now. */
if (DEPRECATED_FRAME_CHAIN_VALID_P ())
Index: frame.c
===================================================================
RCS file: /cvs/src/src/gdb/frame.c,v
retrieving revision 1.89
diff -u -p -r1.89 frame.c
--- frame.c 26 Mar 2003 00:00:07 -0000 1.89
+++ frame.c 27 Mar 2003 11:25:20 -0000
@@ -1419,26 +1419,6 @@ get_prev_frame (struct frame_info *this_
return this_frame->prev;
this_frame->prev_p = 1;
- /* If we're inside the entry file, it isn't valid. Don't apply this
- test to a dummy frame - dummy frame PC's typically land in the
- entry file. Don't apply this test to the sentinel frame.
- Sentinel frames should always be allowed to unwind. */
- /* NOTE: drow/2002-12-25: should there be a way to disable this
- check? It assumes a single small entry file, and the way some
- debug readers (e.g. dbxread) figure out which object is the
- entry file is somewhat hokey. */
- /* NOTE: cagney/2003-01-10: If there is a way of disabling this test
- then it should probably be moved to before the ->prev_p test,
- above. */
- if (this_frame->type != DUMMY_FRAME && this_frame->level >= 0
- && inside_entry_file (get_frame_pc (this_frame)))
- {
- if (frame_debug)
- fprintf_unfiltered (gdb_stdlog,
- "Outermost frame - inside entry file\n");
- return NULL;
- }
-
/* If we're already inside the entry function for the main objfile,
then it isn't valid. Don't apply this test to a dummy frame -
dummy frame PC's typically land in the entry func. Don't apply
Index: i386-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/i386-tdep.c,v
retrieving revision 1.123
diff -u -p -r1.123 i386-tdep.c
--- i386-tdep.c 26 Mar 2003 22:39:52 -0000 1.123
+++ i386-tdep.c 27 Mar 2003 11:25:21 -0000
@@ -519,10 +519,7 @@ i386_frame_chain (struct frame_info *fra
|| i386_frameless_signal_p (frame))
return get_frame_base (frame);
- if (! inside_entry_file (get_frame_pc (frame)))
- return read_memory_unsigned_integer (get_frame_base (frame), 4);
-
- return 0;
+ return read_memory_unsigned_integer (get_frame_base (frame), 4);
}
/* Determine whether the function invocation represented by FRAME does
--
Corinna Vinschen
Cygwin Developer
Red Hat, Inc.
mailto:vinschen at redhat dot com