aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbarch.c
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2004-06-20 18:10:14 +0000
committerAndrew Cagney <cagney@redhat.com>2004-06-20 18:10:14 +0000
commit750eb019f10b80dfed775e0062e33326f5a79adb (patch)
tree428eaa7d99873e8068d8c213ad6cbcfd725b0642 /gdb/gdbarch.c
parentb5622e8d3cc3ba6ed60cbfee39a9c094074e27a1 (diff)
downloadgdb-750eb019f10b80dfed775e0062e33326f5a79adb.zip
gdb-750eb019f10b80dfed775e0062e33326f5a79adb.tar.gz
gdb-750eb019f10b80dfed775e0062e33326f5a79adb.tar.bz2
2004-06-20 Andrew Cagney <cagney@gnu.org>
* gdbarch.sh (RETURN_VALUE): Default to legacy_return_value. * gdbarch.h, gdbarch.c: Re-generate. * Makefile.in (arch-utils.o): Update dependencies. * values.c (using_struct_return): Move code calling USE_STRUCT_CONVENTION to legacy_return_value, simplify. * stack.c (return_command): Move code calling STORE_RETURN_VALUE to legacy_return_value, simplify. * infcmd.c (print_return_value): Move code calling DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS and EXTRACT_RETURN_VALUE to legacy_return_value, simplify. * infcall.c (call_function_by_hand): Move code calling EXTRACT_RETURN_VALUE to legacy_return_value, simplify. * arch-utils.c: Update copyright. Include "gdbcore.h". (legacy_return_value): New function. * arch-utils.h: Update copyright. (legacy_return_value): Declare.
Diffstat (limited to 'gdb/gdbarch.c')
-rw-r--r--gdb/gdbarch.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gdb/gdbarch.c b/gdb/gdbarch.c
index edb6bd7..20173af 100644
--- a/gdb/gdbarch.c
+++ b/gdb/gdbarch.c
@@ -457,6 +457,7 @@ gdbarch_alloc (const struct gdbarch_info *info,
current_gdbarch->convert_register_p = generic_convert_register_p;
current_gdbarch->pointer_to_address = unsigned_pointer_to_address;
current_gdbarch->address_to_pointer = unsigned_address_to_pointer;
+ current_gdbarch->return_value = legacy_return_value;
current_gdbarch->extract_return_value = legacy_extract_return_value;
current_gdbarch->store_return_value = legacy_store_return_value;
current_gdbarch->deprecated_use_struct_convention = generic_use_struct_convention;
@@ -3456,7 +3457,7 @@ int
gdbarch_return_value_p (struct gdbarch *gdbarch)
{
gdb_assert (gdbarch != NULL);
- return gdbarch->return_value != NULL;
+ return gdbarch->return_value != legacy_return_value;
}
enum return_value_convention
@@ -3464,6 +3465,7 @@ gdbarch_return_value (struct gdbarch *gdbarch, struct type *valtype, struct regc
{
gdb_assert (gdbarch != NULL);
gdb_assert (gdbarch->return_value != NULL);
+ /* Do not check predicate: gdbarch->return_value != legacy_return_value, allow call. */
if (gdbarch_debug >= 2)
fprintf_unfiltered (gdb_stdlog, "gdbarch_return_value called\n");
return gdbarch->return_value (gdbarch, valtype, regcache, readbuf, writebuf);