OSDN Git Service

2004-08-10 Andrew Haley <aph@redhat.com>
authoraph <aph@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 10 Aug 2004 14:24:00 +0000 (14:24 +0000)
committeraph <aph@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 10 Aug 2004 14:24:00 +0000 (14:24 +0000)
* src/x86/ffi64.c (ffi_prep_args ): 8-align all stack arguments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85753 138bc75d-0d04-0410-961f-82ee72b054a4

libffi/ChangeLog
libffi/src/x86/ffi64.c

index d01a4dd..61b0b4f 100644 (file)
@@ -1,3 +1,7 @@
+2004-08-10  Andrew Haley  <aph@redhat.com>
+
+       * src/x86/ffi64.c (ffi_prep_args ): 8-align all stack arguments.
+
 2004-08-01  Robert Millan  <robertmh@gnu.org>
 
        * configure.ac: Detect knetbsd-gnu and kfreebsd-gnu.
index 343ee92..653d45c 100644 (file)
@@ -341,6 +341,8 @@ ffi_prep_args (stackLayout *stack, extended_cif *ecif)
        {
          /* Pass this argument in memory.  */
          argp = (void *)ALIGN(argp, (*p_arg)->alignment);
+         /* Stack arguments are *always* at least 8 byte aligned.  */
+         argp = (void *)ALIGN(argp, 8);
          memcpy (argp, *p_argv, (*p_arg)->size);
          argp += (*p_arg)->size;
        }