diff options
author | David S. Miller <davem@redhat.com> | 2013-02-06 19:40:04 +0000 |
---|---|---|
committer | David S. Miller <davem@redhat.com> | 2013-02-06 19:40:04 +0000 |
commit | bbfdfe1c572ca7710cf08607db4935e8c8db174c (patch) | |
tree | 9b17fe788ec840a339b176b8fd82ebe353cef5fe /gdb/value.h | |
parent | bc9abe4a9122ac5984bb05ecd895ddeec6c8a67c (diff) | |
download | gdb-bbfdfe1c572ca7710cf08607db4935e8c8db174c.zip gdb-bbfdfe1c572ca7710cf08607db4935e8c8db174c.tar.gz gdb-bbfdfe1c572ca7710cf08607db4935e8c8db174c.tar.bz2 |
Allow struct 'return' on 32-bit sparc.
gdb/
* sparc-tdep.c (sparc32_return_value): Handle writing return value when
using RETURN_VALUE_ABI_PRESERVES_ADDRESS.
* value.c (struct_return_convention): New function.
(using_struct_return): Implement in terms of struct_return_convention.
* value.h (struct_return_convention): Declare.
* stack.c (return_command): Allow successful overriding of the return
value when RETURN_VALUE_ABI_PRESERVES_ADDRESS.
Diffstat (limited to 'gdb/value.h')
-rw-r--r-- | gdb/value.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gdb/value.h b/gdb/value.h index b9013fd..c10c3ec 100644 --- a/gdb/value.h +++ b/gdb/value.h @@ -696,6 +696,10 @@ extern int value_in (struct value *element, struct value *set); extern int value_bit_index (struct type *type, const gdb_byte *addr, int index); +extern enum return_value_convention +struct_return_convention (struct gdbarch *gdbarch, struct value *function, + struct type *value_type); + extern int using_struct_return (struct gdbarch *gdbarch, struct value *function, struct type *value_type); |