diff options
author | Mark Kettenis <kettenis@gnu.org> | 2001-04-01 12:39:52 +0000 |
---|---|---|
committer | Mark Kettenis <kettenis@gnu.org> | 2001-04-01 12:39:52 +0000 |
commit | a18d59268cc7d0cd1a7aaf26568673e1c9d75cbb (patch) | |
tree | 25d1ee2f0a8594fabb4cfb94246b343aafe8637e /gdb/i386-tdep.c | |
parent | 6f6db046bc0d22ab21ab4c0a387eaf2817243220 (diff) | |
download | gdb-a18d59268cc7d0cd1a7aaf26568673e1c9d75cbb.tar.gz |
* i386-tdep.c (i386_extract_struct_value_address): New function.
* config/i386/tm-i386.h (EXTRACT_STRUCT_VALUE_ADDRESS): Redefine
in terms of i386_extract_struct_value_address.
(i386_extract_struct_value_address): New prototype.
Diffstat (limited to 'gdb/i386-tdep.c')
-rw-r--r-- | gdb/i386-tdep.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c index db001dafab7..1090cbef79c 100644 --- a/gdb/i386-tdep.c +++ b/gdb/i386-tdep.c @@ -850,6 +850,17 @@ i386_store_return_value (struct type *type, char *valbuf) "Cannot store return value of %d bytes long.", len); } } + +/* 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. */ + +CORE_ADDR +i386_extract_struct_value_address (char *regbuf) +{ + return extract_address (®buf[REGISTER_BYTE (LOW_RETURN_REGNUM)], + REGISTER_RAW_SIZE (LOW_RETURN_REGNUM)); +} /* Convert data from raw format for register REGNUM in buffer FROM to |