From: Brian Mastenbrook Date: Sun, 23 Oct 2005 19:28:59 +0000 (+0000) Subject: 0.9.5.84: fix PPC stack alignment problems in call_into_c on Darwin X-Git-Url: http://repo.macrolet.net/gitweb/?a=commitdiff_plain;h=c2dd4d67fb33ed0b486e9cc64029bec5f9c892b5;p=sbcl.git 0.9.5.84: fix PPC stack alignment problems in call_into_c on Darwin * Fix from Cyrus Harmon, 2005-10-19, "PPC alignment redux" * When calling into C, OS X expects the stack to be 16-byte aligned or else C functions which use AltiVec see strange corruption --- diff --git a/src/runtime/ppc-assem.S b/src/runtime/ppc-assem.S index 53e8cad..28fe473 100644 --- a/src/runtime/ppc-assem.S +++ b/src/runtime/ppc-assem.S @@ -72,7 +72,7 @@ x: (NFPR_SAVE_BYTES(first_f)+ NGPR_SAVE_BYTES(first_g)+ FRAME_ARG_BYTES(out_arg_words)) #define SAVE_FPR(n) stfd f##n,-8*(32- n)(r11) #define SAVE_GPR(n) stw r##n,-4*(32- n)(r11) -#define FULL_FRAME_SIZE FRAME_SIZE(FIRST_SAVE_GPR,FIRST_SAVE_FPR,8,1) +#define FULL_FRAME_SIZE (FRAME_SIZE(FIRST_SAVE_GPR,FIRST_SAVE_FPR,8,1)+15&~15) #define RESTORE_FPR(n) lfd f##n,-8*(32- n)(r11) #define RESTORE_GPR(n) lwz r##n,-4*(32- n)(r11) #else diff --git a/version.lisp-expr b/version.lisp-expr index d8e6565..fbeae3f 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.9.5.83" +"0.9.5.84"