aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNeil Roberts <neil@linux.intel.com>2010-07-07 15:59:30 +0000
committerAndrew Haley <aph@gcc.gnu.org>2010-07-07 15:59:30 +0000
commit4138b429ca3f557e7125e746ce1a75b0ac689d61 (patch)
tree5e6bb20be1facd801ad7fae4172ad62a677fc612
parent71df5a7ee7f86ce0954a86e375e523906ea4203a (diff)
downloadgcc-4138b429ca3f557e7125e746ce1a75b0ac689d61.zip
gcc-4138b429ca3f557e7125e746ce1a75b0ac689d61.tar.gz
gcc-4138b429ca3f557e7125e746ce1a75b0ac689d61.tar.bz2
sysv.S (ffi_call_SYSV): Align the stack pointer to 16-bytes.
2010-07-07 Neil Roberts <neil@linux.intel.com> * src/x86/sysv.S (ffi_call_SYSV): Align the stack pointer to 16-bytes. From-SVN: r161922
-rw-r--r--libffi/ChangeLog5
-rw-r--r--libffi/src/x86/sysv.S3
2 files changed, 8 insertions, 0 deletions
diff --git a/libffi/ChangeLog b/libffi/ChangeLog
index bdd86bf..bccfef3 100644
--- a/libffi/ChangeLog
+++ b/libffi/ChangeLog
@@ -1,3 +1,8 @@
+2010-07-07 Neil Roberts <neil@linux.intel.com>
+
+ * src/x86/sysv.S (ffi_call_SYSV): Align the stack pointer to
+ 16-bytes.
+
2010-07-02 Jakub Jelinek <jakub@redhat.com>
* Makefile.am (AM_MAKEFLAGS): Pass also mandir to submakes.
diff --git a/libffi/src/x86/sysv.S b/libffi/src/x86/sysv.S
index 2e5e3da..f3b0bd5 100644
--- a/libffi/src/x86/sysv.S
+++ b/libffi/src/x86/sysv.S
@@ -48,6 +48,9 @@ ffi_call_SYSV:
movl 16(%ebp),%ecx
subl %ecx,%esp
+ /* Align the stack pointer to 16-bytes */
+ andl $0xfffffff0, %esp
+
movl %esp,%eax
/* Place all of the ffi_prep_args in position */