2002-09-05 Michael Snyder <msnyder@redhat.com>
authorMichael Snyder <msnyder@vmware.com>
Thu, 5 Sep 2002 19:05:59 +0000 (19:05 +0000)
committerMichael Snyder <msnyder@vmware.com>
Thu, 5 Sep 2002 19:05:59 +0000 (19:05 +0000)
* arm-tdep.c (arm_extract_return_value): Use new regcache method.

gdb/ChangeLog
gdb/arm-tdep.c

index ed0551d056738b77750d5418eed31d69ff14fbc6..59b2c24466e87b746b1058d01eefa7846230103d 100644 (file)
@@ -3,6 +3,7 @@
        * arm-tdep.c (arm_init_extra_frame_info): Distinguish between
        generic_dummy_frame method and old method.  Also distinguish
        between ARM_FP_REGNUM and THUMB_FP_REGNUM.
+       (arm_extract_return_value): Use new regcache method.
 
        * mips-tdep.c (mips_n32n64_push_arguments): Remove alignment
        adjustment that doesn't conform to the ABI.
index c84c3c6575625d6b4aef85b4355abcfcdd1f4519..e61c5938ef72822a56dffaa5696bc9a8b7531084 100644 (file)
@@ -2283,9 +2283,12 @@ arm_extract_return_value (struct type *type,
    the address in which a function should return its structure value.  */
 
 static CORE_ADDR
-arm_extract_struct_value_address (char *regbuf)
+arm_extract_struct_value_address (struct regcache *regcache)
 {
-  return extract_address (regbuf, REGISTER_RAW_SIZE(ARM_A1_REGNUM));
+  ULONGEST ret;
+
+  regcache_cooked_read_unsigned (regcache, ARM_A1_REGNUM, &ret);
+  return ret;
 }
 
 /* Will a function return an aggregate type in memory or in a
@@ -2933,7 +2936,7 @@ arm_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   set_gdbarch_deprecated_store_return_value (gdbarch, arm_store_return_value);
   set_gdbarch_store_struct_return (gdbarch, arm_store_struct_return);
   set_gdbarch_use_struct_convention (gdbarch, arm_use_struct_convention);
-  set_gdbarch_deprecated_extract_struct_value_address (gdbarch,
+  set_gdbarch_extract_struct_value_address (gdbarch,
                                            arm_extract_struct_value_address);
 
   /* Single stepping.  */