Blob Blame History Raw
diff -up gdb-6.8/gdb/sparc-tdep.c.BAD gdb-6.8/gdb/sparc-tdep.c
--- gdb-6.8/gdb/sparc-tdep.c.BAD	2008-05-15 16:12:58.000000000 -0500
+++ gdb-6.8/gdb/sparc-tdep.c	2008-05-15 16:13:41.000000000 -0500
@@ -1122,6 +1122,7 @@ sparc32_store_return_value (struct type 
   if (sparc_floating_p (type))
     {
       /* Floating return values.  */
+      len = (len <= 8) ? len : 8;
       memcpy (buf, valbuf, len);
       regcache_cooked_write (regcache, SPARC_F0_REGNUM, buf);
       if (len > 4)