aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbarch.h
diff options
context:
space:
mode:
authorJim Blandy <jimb@codesourcery.com>2000-04-19 23:22:14 +0000
committerJim Blandy <jimb@codesourcery.com>2000-04-19 23:22:14 +0000
commit71a9f22e4fbaa70f4a21337781899bab7ba39199 (patch)
tree5f92fb043b6dfb151d93730634e891ce669bb55a /gdb/gdbarch.h
parentceef0e305434894e6bc68cd55b48658a85df5d37 (diff)
downloadgdb-71a9f22e4fbaa70f4a21337781899bab7ba39199.zip
gdb-71a9f22e4fbaa70f4a21337781899bab7ba39199.tar.gz
gdb-71a9f22e4fbaa70f4a21337781899bab7ba39199.tar.bz2
Bring RETURN_VALUE_ON_STACK under gdbarch's control.
* gdbarch.sh (RETURN_VALUE_ON_STACK): New entry. * gdbarch.c, gdbarch.h: Regenerated. * arch-utils.c (default_return_value_on_stack): New function. * arch-utils.h (default_return_value_on_stack): New declaration. * values.c (RETURN_VALUE_ON_STACK): Delete default definition.
Diffstat (limited to 'gdb/gdbarch.h')
-rw-r--r--gdb/gdbarch.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/gdb/gdbarch.h b/gdb/gdbarch.h
index cc01e75..5c74e75 100644
--- a/gdb/gdbarch.h
+++ b/gdb/gdbarch.h
@@ -510,6 +510,13 @@ extern void set_gdbarch_address_to_pointer (struct gdbarch *gdbarch, gdbarch_add
#define ADDRESS_TO_POINTER(type, buf, addr) (gdbarch_address_to_pointer (current_gdbarch, type, buf, addr))
#endif
+typedef int (gdbarch_return_value_on_stack_ftype) (struct type *type);
+extern int gdbarch_return_value_on_stack (struct gdbarch *gdbarch, struct type *type);
+extern void set_gdbarch_return_value_on_stack (struct gdbarch *gdbarch, gdbarch_return_value_on_stack_ftype *return_value_on_stack);
+#if (GDB_MULTI_ARCH > 1) || !defined (RETURN_VALUE_ON_STACK)
+#define RETURN_VALUE_ON_STACK(type) (gdbarch_return_value_on_stack (current_gdbarch, type))
+#endif
+
typedef void (gdbarch_extract_return_value_ftype) (struct type *type, char *regbuf, char *valbuf);
extern void gdbarch_extract_return_value (struct gdbarch *gdbarch, struct type *type, char *regbuf, char *valbuf);
extern void set_gdbarch_extract_return_value (struct gdbarch *gdbarch, gdbarch_extract_return_value_ftype *extract_return_value);