From fad850b2584f6964096dd4078c1208ce7c5d9604 Mon Sep 17 00:00:00 2001 From: Andrew Cagney Date: Sun, 22 Feb 2004 17:58:10 +0000 Subject: [PATCH] 2004-02-22 Andrew Cagney * hppa-tdep.c (hppa_gdbarch_init): Re-order separating struct-return and inferior function call methods. --- gdb/ChangeLog | 3 +++ gdb/hppa-tdep.c | 27 +++++++++++++++++++++------ 2 files changed, 24 insertions(+), 6 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 15e1089..6d6e1c8 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,8 @@ 2004-02-22 Andrew Cagney + * hppa-tdep.c (hppa_gdbarch_init): Re-order separating + struct-return and inferior function call methods. + * hppa-tdep.c: Include "trad-frame.h", "frame-unwind.h", and "frame-base.h". (struct hppa_frame_cache): Define. diff --git a/gdb/hppa-tdep.c b/gdb/hppa-tdep.c index 340bc47..21f86d5 100644 --- a/gdb/hppa-tdep.c +++ b/gdb/hppa-tdep.c @@ -5491,23 +5491,38 @@ hppa_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) set_gdbarch_deprecated_call_dummy_length (gdbarch, hppa32_call_dummy_length); set_gdbarch_deprecated_stack_align (gdbarch, hppa32_stack_align); set_gdbarch_deprecated_reg_struct_has_addr (gdbarch, hppa_reg_struct_has_addr); - set_gdbarch_deprecated_extract_return_value (gdbarch, hppa32_extract_return_value); - set_gdbarch_use_struct_convention (gdbarch, hppa32_use_struct_convention); - set_gdbarch_deprecated_store_return_value (gdbarch, hppa32_store_return_value); break; case 8: set_gdbarch_deprecated_call_dummy_breakpoint_offset (gdbarch, hppa64_call_dummy_breakpoint_offset); set_gdbarch_deprecated_call_dummy_length (gdbarch, hppa64_call_dummy_length); set_gdbarch_deprecated_stack_align (gdbarch, hppa64_stack_align); + break; + } + set_gdbarch_deprecated_push_dummy_frame (gdbarch, hppa_push_dummy_frame); + /* set_gdbarch_deprecated_fix_call_dummy (gdbarch, hppa_fix_call_dummy); */ + set_gdbarch_deprecated_push_arguments (gdbarch, hppa_push_arguments); + } + + /* Struct return methods. */ + if (0) + { + } + else + { + switch (tdep->bytes_per_address) + { + case 4: + set_gdbarch_deprecated_extract_return_value (gdbarch, hppa32_extract_return_value); + set_gdbarch_use_struct_convention (gdbarch, hppa32_use_struct_convention); + set_gdbarch_deprecated_store_return_value (gdbarch, hppa32_store_return_value); + break; + case 8: set_gdbarch_deprecated_extract_return_value (gdbarch, hppa64_extract_return_value); set_gdbarch_use_struct_convention (gdbarch, hppa64_use_struct_convention); set_gdbarch_deprecated_store_return_value (gdbarch, hppa64_store_return_value); break; } set_gdbarch_deprecated_store_struct_return (gdbarch, hppa_store_struct_return); - set_gdbarch_deprecated_push_dummy_frame (gdbarch, hppa_push_dummy_frame); - /* set_gdbarch_deprecated_fix_call_dummy (gdbarch, hppa_fix_call_dummy); */ - set_gdbarch_deprecated_push_arguments (gdbarch, hppa_push_arguments); } /* Frame unwind methods. */ -- 2.7.4