diff options
Diffstat (limited to 'gdb/gdbarch.c')
-rw-r--r-- | gdb/gdbarch.c | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/gdb/gdbarch.c b/gdb/gdbarch.c index 069e566..bd19793 100644 --- a/gdb/gdbarch.c +++ b/gdb/gdbarch.c @@ -728,9 +728,7 @@ verify_gdbarch (struct gdbarch *gdbarch) && (gdbarch->push_dummy_frame == 0)) fprintf_unfiltered (log, "\n\tpush_dummy_frame"); /* Skip verify of push_return_address, has predicate */ - if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) - && (gdbarch->pop_frame == 0)) - fprintf_unfiltered (log, "\n\tpop_frame"); + /* Skip verify of pop_frame, has predicate */ if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL) && (gdbarch->store_struct_return == 0)) fprintf_unfiltered (log, "\n\tstore_struct_return"); @@ -1761,6 +1759,15 @@ gdbarch_dump (struct gdbarch *gdbarch, struct ui_file *file) (long) current_gdbarch->pointer_to_address /*POINTER_TO_ADDRESS ()*/); #endif +#ifdef POP_FRAME_P + fprintf_unfiltered (file, + "gdbarch_dump: %s # %s\n", + "POP_FRAME_P()", + XSTRING (POP_FRAME_P ())); + fprintf_unfiltered (file, + "gdbarch_dump: POP_FRAME_P() = %d\n", + POP_FRAME_P ()); +#endif #ifdef POP_FRAME #if GDB_MULTI_ARCH /* Macro might contain `[{}]' when not multi-arch */ @@ -4178,6 +4185,13 @@ set_gdbarch_push_return_address (struct gdbarch *gdbarch, gdbarch->push_return_address = push_return_address; } +int +gdbarch_pop_frame_p (struct gdbarch *gdbarch) +{ + gdb_assert (gdbarch != NULL); + return gdbarch->pop_frame != 0; +} + void gdbarch_pop_frame (struct gdbarch *gdbarch) { |