This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [rfa] Add some flags to tramp frame unwinder


Randolph Chung wrote:
Instead of this, delete the test and in its place add a comment explaining what was there. I just hit another similar case - signal trampolines on altstacks - where there's either/or a valid symbol or segment.


ok, checked in the following



2004-12-12 Randolph Chung <tausq@debian.org>

* tramp-frame.c (tramp_frame_sniffer): Allow frames with names or sections to be trampolines too.

Thanks.


Andrew

Index: tramp-frame.c
===================================================================
RCS file: /cvs/src/src/gdb/tramp-frame.c,v
retrieving revision 1.7
diff -u -p -r1.7 tramp-frame.c
--- tramp-frame.c 7 Nov 2004 12:54:58 -0000 1.7
+++ tramp-frame.c 13 Dec 2004 01:35:42 -0000
@@ -122,19 +122,12 @@ tramp_frame_sniffer (const struct frame_
const struct tramp_frame *tramp = self->unwind_data->tramp_frame;
CORE_ADDR pc = frame_pc_unwind (next_frame);
CORE_ADDR func;
- char *name;
struct tramp_frame_cache *tramp_cache;
- /* If the function has a valid symbol name, it isn't a
- trampoline. */
- find_pc_partial_function (pc, &name, NULL, NULL);
- if (name != NULL)
- return 0;
- /* If the function lives in a valid section (even without a starting
- point) it isn't a trampoline. */
- if (find_pc_section (pc) != NULL)
- return 0;
- /* Finally, check that the trampoline matches at PC. */
+ /* tausq/2004-12-12: We used to assume if pc has a name or is in a valid + section, then this is not a trampoline. However, this assumption is
+ false on HPUX which has a signal trampoline that has a name; it can
+ also be false when using an alternative signal stack. */
func = tramp_frame_start (tramp, next_frame, pc);
if (func == 0)
return 0;


randolph


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]