aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Thorpe <thorpej@netbsd.org>2002-01-20 00:23:10 +0000
committerJason Thorpe <thorpej@netbsd.org>2002-01-20 00:23:10 +0000
commitee1f65f0e30d3346efaf28c81ba491e5403ec708 (patch)
tree2849ef6022ab90d9ca5bce5853b746eceb83bd4c
parent98081e55d97de9b28768be80794d3f117ac4dd1e (diff)
downloadfsf-binutils-gdb-ee1f65f0e30d3346efaf28c81ba491e5403ec708.zip
fsf-binutils-gdb-ee1f65f0e30d3346efaf28c81ba491e5403ec708.tar.gz
fsf-binutils-gdb-ee1f65f0e30d3346efaf28c81ba491e5403ec708.tar.bz2
* alpha-tdep.c (alpha_call_dummy_words): New.
* config/alpha/tm-alpha.h (CALL_DUMMY): Remove. (CALL_DUMMY_P): Define. (CALL_DUMMY_WORDS): Define. (SIZEOF_CALL_DUMMY_WORDS): Define.
-rw-r--r--gdb/ChangeLog8
-rw-r--r--gdb/alpha-tdep.c5
-rw-r--r--gdb/config/alpha/tm-alpha.h9
3 files changed, 20 insertions, 2 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index da3c084..8ef59a1 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,11 @@
+2002-01-19 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * alpha-tdep.c (alpha_call_dummy_words): New.
+ * config/alpha/tm-alpha.h (CALL_DUMMY): Remove.
+ (CALL_DUMMY_P): Define.
+ (CALL_DUMMY_WORDS): Define.
+ (SIZEOF_CALL_DUMMY_WORDS): Define.
+
2002-01-19 Per Bothner <per@bothner.com>
* gnu-v3-abi.c (gnuv3_rtti_type): Guard that vtable_symbol_name
diff --git a/gdb/alpha-tdep.c b/gdb/alpha-tdep.c
index a717e10..b894fbd 100644
--- a/gdb/alpha-tdep.c
+++ b/gdb/alpha-tdep.c
@@ -1505,6 +1505,11 @@ alpha_fix_call_dummy (char *dummy, CORE_ADDR pc, CORE_ADDR fun, int nargs,
write_register (T12_REGNUM, fun);
}
+/* On the Alpha, the call dummy code is nevery copied to user space
+ (see alpha_fix_call_dummy() above). The contents of this do not
+ matter. */
+LONGEST alpha_call_dummy_words[] = { 0 };
+
int
alpha_use_struct_convention (int gcc_p, struct type *type)
{
diff --git a/gdb/config/alpha/tm-alpha.h b/gdb/config/alpha/tm-alpha.h
index 84ba3b4..b869768 100644
--- a/gdb/config/alpha/tm-alpha.h
+++ b/gdb/config/alpha/tm-alpha.h
@@ -333,14 +333,19 @@ extern void alpha_pop_frame (void);
call_function_by_hand and to avoid zero length array warnings
in valops.c */
-#define CALL_DUMMY { 0 } /* Content doesn't matter. */
+#define CALL_DUMMY_P (1)
+
+#define CALL_DUMMY_WORDS alpha_call_dummy_words
+extern LONGEST alpha_call_dummy_words[];
+
+#define SIZEOF_CALL_DUMMY_WORDS 0
#define CALL_DUMMY_START_OFFSET (0)
#define CALL_DUMMY_BREAKPOINT_OFFSET (0)
-extern CORE_ADDR alpha_call_dummy_address (void);
#define CALL_DUMMY_ADDRESS() alpha_call_dummy_address()
+extern CORE_ADDR alpha_call_dummy_address (void);
/* Insert the specified number of args and function address
into a call sequence of the above form stored at DUMMYNAME.