diff options
-rw-r--r-- | gdb/ChangeLog | 7 | ||||
-rw-r--r-- | gdb/i386-cygwin-tdep.c | 16 |
2 files changed, 23 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index db5cd44..5581b39 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,10 @@ +2004-06-29 Joel Brobecker <brobecker@gnat.com> + + * i386-cygwin-tdep.c (i386-cygwin-tdep.c): New function. + (i386_cygwin_in_solib_call_trampoline): New function. + (i386_cygwin_init_abi): Initialize the in_solib_call_trampoline + and skip_trampoline_code gdbarch methods. + 2004-06-29 Jim Blandy <jimb@redhat.com> * Makefile.in (gdb_callback_h): Renamed from callback_h to the diff --git a/gdb/i386-cygwin-tdep.c b/gdb/i386-cygwin-tdep.c index 443f8f7..9dc5b39 100644 --- a/gdb/i386-cygwin-tdep.c +++ b/gdb/i386-cygwin-tdep.c @@ -26,11 +26,27 @@ #include "i386-tdep.h" +static CORE_ADDR +i386_cygwin_skip_trampoline_code (CORE_ADDR pc) +{ + return i386_pe_skip_trampoline_code (pc, NULL); +} + +static int +i386_cygwin_in_solib_call_trampoline (CORE_ADDR pc, char *name) +{ + return (i386_pe_skip_trampoline_code (pc, name) != 0); +} + static void i386_cygwin_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) { struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); + set_gdbarch_in_solib_call_trampoline (gdbarch, + i386_cygwin_in_solib_call_trampoline); + set_gdbarch_skip_trampoline_code (gdbarch, i386_cygwin_skip_trampoline_code); + tdep->struct_return = reg_struct_return; } |