summaryrefslogtreecommitdiff
path: root/gdb/gdbarch.c
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2003-03-31 23:52:38 +0000
committerAndrew Cagney <cagney@redhat.com>2003-03-31 23:52:38 +0000
commit032cb1b0c1f394669dc42cd7b3a3bafd0eaeb87a (patch)
tree1cfaea1a73a1412299a0ee023450109bc0d50391 /gdb/gdbarch.c
parentae8be91e7c03f2cc6d5a8290a2975d97090e971f (diff)
downloadgdb-032cb1b0c1f394669dc42cd7b3a3bafd0eaeb87a.tar.gz
2003-03-31 Andrew Cagney <cagney@redhat.com>
* gdbarch.sh (FIX_CALL_DUMMY): Change to function with predicate. * gdbarch.h, gdbarch.c: Regenerate. * inferior.h (FIX_CALL_DUMMY): Delete macro. * valops.c (hand_function_call): Only call FIX_CALL_DUMMY when available. * frame.h (generic_fix_call_dummy): Delete declaration. * dummy-frame.h: Update comment. * dummy-frame.c (generic_fix_call_dummy): Delete function. * xstormy16-tdep.c (xstormy16_gdbarch_init): Do not set fix_call_dummy. * sh-tdep.c (sh_gdbarch_init): Ditto. * s390-tdep.c (s390_gdbarch_init): Ditto. * mn10300-tdep.c (mn10300_gdbarch_init): Ditto. * mcore-tdep.c (mcore_gdbarch_init): Ditto. * m68hc11-tdep.c (m68hc11_gdbarch_init): Ditto. * ia64-tdep.c (ia64_gdbarch_init): Ditto. * i386-tdep.c (i386_gdbarch_init): Ditto. * h8300-tdep.c (h8300_gdbarch_init): Ditto. * frv-tdep.c (frv_gdbarch_init): Ditto. * d10v-tdep.c (d10v_gdbarch_init): Ditto. * cris-tdep.c (cris_gdbarch_init): Ditto. * avr-tdep.c (avr_gdbarch_init): Ditto. * arm-tdep.c (arm_gdbarch_init): Ditto.
Diffstat (limited to 'gdb/gdbarch.c')
-rw-r--r--gdb/gdbarch.c20
1 files changed, 17 insertions, 3 deletions
diff --git a/gdb/gdbarch.c b/gdb/gdbarch.c
index c12b9c7639d..e753331df64 100644
--- a/gdb/gdbarch.c
+++ b/gdb/gdbarch.c
@@ -691,9 +691,7 @@ verify_gdbarch (struct gdbarch *gdbarch)
/* Skip verify of call_dummy_words, invalid_p == 0 */
/* Skip verify of sizeof_call_dummy_words, invalid_p == 0 */
/* Skip verify of deprecated_call_dummy_stack_adjust, has predicate */
- if ((GDB_MULTI_ARCH > GDB_MULTI_ARCH_PARTIAL)
- && (gdbarch->fix_call_dummy == 0))
- fprintf_unfiltered (log, "\n\tfix_call_dummy");
+ /* Skip verify of fix_call_dummy, has predicate */
/* Skip verify of deprecated_init_frame_pc_first, has predicate */
/* Skip verify of deprecated_init_frame_pc, has predicate */
/* Skip verify of deprecated_get_saved_register, has predicate */
@@ -1635,6 +1633,15 @@ gdbarch_dump (struct gdbarch *gdbarch, struct ui_file *file)
(long) current_gdbarch->extract_struct_value_address
/*EXTRACT_STRUCT_VALUE_ADDRESS ()*/);
#endif
+#ifdef FIX_CALL_DUMMY_P
+ fprintf_unfiltered (file,
+ "gdbarch_dump: %s # %s\n",
+ "FIX_CALL_DUMMY_P()",
+ XSTRING (FIX_CALL_DUMMY_P ()));
+ fprintf_unfiltered (file,
+ "gdbarch_dump: FIX_CALL_DUMMY_P() = %d\n",
+ FIX_CALL_DUMMY_P ());
+#endif
#ifdef FIX_CALL_DUMMY
#if GDB_MULTI_ARCH
/* Macro might contain `[{}]' when not multi-arch */
@@ -3893,6 +3900,13 @@ set_gdbarch_deprecated_call_dummy_stack_adjust (struct gdbarch *gdbarch,
gdbarch->deprecated_call_dummy_stack_adjust = deprecated_call_dummy_stack_adjust;
}
+int
+gdbarch_fix_call_dummy_p (struct gdbarch *gdbarch)
+{
+ gdb_assert (gdbarch != NULL);
+ return gdbarch->fix_call_dummy != 0;
+}
+
void
gdbarch_fix_call_dummy (struct gdbarch *gdbarch, char *dummy, CORE_ADDR pc, CORE_ADDR fun, int nargs, struct value **args, struct type *type, int gcc_p)
{