https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85669

--- Comment #17 from Wilco <wilco at gcc dot gnu.org> ---
(In reply to Douglas Mencken from comment #16)
> Like this?
> 
> --- a/gcc/config/rs6000/darwin.h
> +++ b/gcc/config/rs6000/darwin.h
> @@ -150,13 +150,12 @@
>  
>  #undef RS6000_STARTING_FRAME_OFFSET
>  #define RS6000_STARTING_FRAME_OFFSET                                 \
> -  (RS6000_ALIGN (crtl->outgoing_args_size, 16)                               
> \
> -   + RS6000_SAVE_AREA)
> +  RS6000_ALIGN (crtl->outgoing_args_size + RS6000_SAVE_AREA, 16)
>  
>  #undef STACK_DYNAMIC_OFFSET
>  #define STACK_DYNAMIC_OFFSET(FUNDECL)                                        
> \
> -  (RS6000_ALIGN (crtl->outgoing_args_size.to_constant (), 16)                
> \
> -   + (STACK_POINTER_OFFSET))
> +  RS6000_ALIGN (crtl->outgoing_args_size.to_constant()                       
> \
> +                 + STACK_POINTER_OFFSET, 16)
>  
>  /* Darwin uses a function call if everything needs to be saved/restored.  */

Yes that should work.

Reply via email to