diff --git a/lisp/ppc-assem.S b/lisp/ppc-assem.S index e531a1a0c1e6f6f0d1b8b6f7c23971ddc472bae4..f5cb68bd915817e443e72cd9669e759b72a9a983 100644 --- a/lisp/ppc-assem.S +++ b/lisp/ppc-assem.S @@ -58,7 +58,8 @@ 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) +/* Make sure FULL_FRAME_SIZE is on a 16-byte boundary */ +#define FULL_FRAME_SIZE ((FRAME_SIZE(FIRST_SAVE_GPR,FIRST_SAVE_FPR,8,1) + 15) & ~15) #else #define FRAME_SIZE(first_g,first_f,out_arg_words,savecr) \ (NFPR_SAVE_BYTES(first_f)+ NGPR_SAVE_BYTES(first_g)+ FRAME_ARG_BYTES(out_arg_words+savecr))