summaryrefslogtreecommitdiff
path: root/gdb/value.h
diff options
context:
space:
mode:
authorDavid S. Miller <davem@redhat.com>2013-02-06 19:39:59 +0000
committerDavid S. Miller <davem@redhat.com>2013-02-06 19:39:59 +0000
commit60c59b87b263dd7886d7d93db983c88b7a14666f (patch)
treef6220d8d4ead9342154f9d8231c7fb7490d331b2 /gdb/value.h
parentff5886c0480b1220132345e99aed7b222b46e80e (diff)
downloadgdb-60c59b87b263dd7886d7d93db983c88b7a14666f.tar.gz
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.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/gdb/value.h b/gdb/value.h
index b9013fdf1e8..c10c3ecf163 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);