aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2004-02-22 17:58:10 +0000
committerAndrew Cagney <cagney@redhat.com>2004-02-22 17:58:10 +0000
commitfad850b2584f6964096dd4078c1208ce7c5d9604 (patch)
tree8da702189173ea789e007f60897b0add565ddf97
parent26d08f0884e1d222fc7a14d3b0582cfe44157b66 (diff)
downloadfsf-binutils-gdb-fad850b2584f6964096dd4078c1208ce7c5d9604.zip
fsf-binutils-gdb-fad850b2584f6964096dd4078c1208ce7c5d9604.tar.gz
fsf-binutils-gdb-fad850b2584f6964096dd4078c1208ce7c5d9604.tar.bz2
2004-02-22 Andrew Cagney <cagney@redhat.com>
* hppa-tdep.c (hppa_gdbarch_init): Re-order separating struct-return and inferior function call methods.
-rw-r--r--gdb/ChangeLog3
-rw-r--r--gdb/hppa-tdep.c27
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 <cagney@redhat.com>
+ * 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. */