From 44b7b84e5137ca6ce740af768707d2354546ca5e Mon Sep 17 00:00:00 2001 From: Mark Kettenis Date: Sun, 25 May 2003 11:58:08 +0000 Subject: * sparc-tdep.c (SPARC_F0_REGNUM, SPARC_F1_REGNUM, SPARC_O0_REGNUM, SPARC_O1_REGNUM): New defines. (sparc32_extract_return_value): Rewrite to operate on a regcache. (sparc32_store_return_value): New function. (sparc_extract_struct_value_address): Rewrite to operate on a regcache. (sparc_gdbarch_init): Don't set deprecated_extract_struct_value_address. Set extract_struct_value_address instead. Don't set deprecated_extract_return_value and deprecated_store_return_value for 32-bit targets. Set extract_return_value and store_return_value instead. * config/sparc/tm-sparc.h (DEPRECATED_STORE_RETURN_VALUE, DEPRECTAED_EXTRACT_RETURN_VALUE, DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS): Don't define these. (STORE_RETURN_VALUE, EXTRACT_RETURN_VALUE, EXTRACT_STRUCT_VALUE_ADDRESS): Define these instead. (sparc_store_return_value): Remove prototype. (sparc32_store_return_value): New prototype. (sparc32_extract_return_value, sparc_extract_struct_value_address): Adjust prototypes. --- gdb/config/sparc/tm-sparc.h | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'gdb/config/sparc') diff --git a/gdb/config/sparc/tm-sparc.h b/gdb/config/sparc/tm-sparc.h index ab18477..e51eb63 100644 --- a/gdb/config/sparc/tm-sparc.h +++ b/gdb/config/sparc/tm-sparc.h @@ -267,17 +267,16 @@ extern CORE_ADDR sparc_skip_prologue (CORE_ADDR); /* Write into appropriate registers a function return value of type TYPE, given in virtual format. */ -#define DEPRECATED_STORE_RETURN_VALUE(TYPE, VALBUF) \ - sparc_store_return_value (TYPE, VALBUF) -extern void sparc_store_return_value (struct type *, char *); +#define STORE_RETURN_VALUE(TYPE, REGCACHE, VALBUF) \ + sparc32_store_return_value (TYPE, REGCACHE, VALBUF) +extern void sparc32_store_return_value (struct type *, struct regcache *, + const void *); -/* Extract from an array REGBUF containing the (raw) register state - the address in which a function should return its structure value, - as a CORE_ADDR (or an expression that can be used as one). */ - -#define DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS(REGBUF) \ - sparc_extract_struct_value_address (REGBUF) +/* Extract from REGCACHE the address in which a function should return + its structure value. */ +#define EXTRACT_STRUCT_VALUE_ADDRESS(REGCACHE) \ + sparc_extract_struct_value_address (REGCACHE) extern CORE_ADDR sparc_extract_struct_value_address (char *); /* Stack must be aligned on 64-bit boundaries when synthesizing @@ -668,9 +667,10 @@ extern CORE_ADDR sparc32_push_arguments (int, struct value **, CORE_ADDR, int, function return value of type TYPE, and copy that, in virtual format, into VALBUF. */ -#define DEPRECATED_EXTRACT_RETURN_VALUE(TYPE, REGBUF, VALBUF) \ - sparc32_extract_return_value (TYPE, REGBUF, VALBUF) -extern void sparc32_extract_return_value (struct type *, char[], char *); +#define EXTRACT_RETURN_VALUE(TYPE, REGCACHE, VALBUF) \ + sparc32_extract_return_value (TYPE, REGCACHE, VALBUF) +extern void sparc32_extract_return_value (struct type *, struct regcache *, + void *valbuf); #endif /* GDB_MULTI_ARCH */ -- cgit v1.1