* sparc64-tdep.c (sparc64_store_arguments): Fix handling of
authorMark Kettenis <kettenis@gnu.org>
Sun, 4 Jan 2004 12:18:25 +0000 (12:18 +0000)
committerMark Kettenis <kettenis@gnu.org>
Sun, 4 Jan 2004 12:18:25 +0000 (12:18 +0000)
`float' arguments.

gdb/ChangeLog
gdb/sparc64-tdep.c

index a2bbed57a7e65d9f26cb51728e48b6dc8ea5c0b5..016e7cce088423e80eff1974a721c036494772ea 100644 (file)
@@ -1,3 +1,8 @@
+2004-01-04  Mark Kettenis  <kettenis@gnu.org>
+
+       * sparc64-tdep.c (sparc64_store_arguments): Fix handling of
+       `float' arguments.
+
 2004-01-04  Mark Kettenis  <kettenis@gnu.org>
 
        * sparc64-tdep.c (sparc64_store_floating_fields): Update comment
index 7e7079181741eee67a347940abb25eddde7f3aed..2e56ec972a172e91619e3b3d7ebed6aa74170e4c 100644 (file)
@@ -911,10 +911,11 @@ sparc64_store_arguments (struct regcache *regcache, int nargs,
                  undefined."  Even though the psABI says that "the
                  left half is undefined", set it to zero here.  */
              memset (buf, 0, 4);
-             valbuf = memcpy (buf + 4, valbuf, 4);
+             memcpy (buf + 4, valbuf, 4);
+             valbuf = buf;
              len = 8;
              if (element < 16)
-               regnum = SPARC64_D0_REGNUM;
+               regnum = SPARC64_D0_REGNUM + element;
            }
        }
       else