2002-08-08 Michael Snyder <msnyder@redhat.com>
authorMichael Snyder <msnyder@vmware.com>
Fri, 9 Aug 2002 21:58:14 +0000 (21:58 +0000)
committerMichael Snyder <msnyder@vmware.com>
Fri, 9 Aug 2002 21:58:14 +0000 (21:58 +0000)
* mips-tdep.c (mips_n32n64_use_struct_convention): N32 only
returns structs by ref if they're too big to fit in two registers.

gdb/ChangeLog
gdb/mips-tdep.c

index 962b68e05dad124e67b2ffa95856da2a0e3bb643..146cd3a520e24e098a6109e279027e76a0f5ab89 100644 (file)
@@ -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
index 01637feb7a6483a29fff42a40bf67289229052a7..1faf071ab5cb652f80c9bd66fc32d03afdd103eb 100644 (file)
@@ -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