aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Snyder <msnyder@vmware.com>2002-08-09 21:58:14 +0000
committerMichael Snyder <msnyder@vmware.com>2002-08-09 21:58:14 +0000
commitb78bcb188cfe6d08922c37efeaa4f95e39b9b74f (patch)
treefe4bb3ac0c7fb4340450b5dec69aa922f15be193
parentc4ac3e633c4d0eb169e9fc85d74c54693e6f82b5 (diff)
downloadgdb-b78bcb188cfe6d08922c37efeaa4f95e39b9b74f.zip
gdb-b78bcb188cfe6d08922c37efeaa4f95e39b9b74f.tar.gz
gdb-b78bcb188cfe6d08922c37efeaa4f95e39b9b74f.tar.bz2
2002-08-08 Michael Snyder <msnyder@redhat.com>
* mips-tdep.c (mips_n32n64_use_struct_convention): N32 only returns structs by ref if they're too big to fit in two registers.
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/mips-tdep.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 962b68e..146cd3a 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2002-08-08 Michael Snyder <msnyder@redhat.com>
+
+ * mips-tdep.c (mips_n32n64_use_struct_convention): N32 only
+ returns structs by ref if they're too big to fit in two registers.
+
2002-08-09 Kevin Buettner <kevinb@redhat.com>
* mips-tdep.c (mips_init_extra_frame_info): Initialize SP_REGNUM's
diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
index 01637fe..1faf071 100644
--- a/gdb/mips-tdep.c
+++ b/gdb/mips-tdep.c
@@ -574,7 +574,7 @@ mips_eabi_use_struct_convention (int gcc_p, struct type *type)
int
mips_n32n64_use_struct_convention (int gcc_p, struct type *type)
{
- return 1; /* Structures are returned by ref in extra arg0. */
+ return (TYPE_LENGTH (type) > 2 * MIPS_SAVED_REGSIZE);
}
int