This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH][PR84877]Dynamically align the address for local parameter copy on the stack when required alignment is larger than MAX_SUPPORTED_STACK_ALIGNMENT


> 2018-03-22  Renlin Li  <renlin.li@arm.com>
> 
> 	PR middle-end/84877
> 	* explow.h (get_dynamic_stack_size): Declare it as external.
> 	* explow.c (record_new_stack_level): Remove function static attribute.
> 	* function.c (assign_stack_local_1): Dynamically align the stack slot
> 	addr for parameter copy on the stack.
> 
> gcc/testsuite/
> 
> 2018-03-22  Renlin Li  <renlin.li@arm.com>
> 
> 	PR middle-end/84877
> 	* gcc.dg/pr84877.c: New.

As reported by Rainer, the test doesn't pass on several targets.  And the 
patch breaks 64-bit Windows, see PR bootstrap/88450.

More generally, the patch totally disregards the SUPPORTS_STACK_ALIGNMENT 
machinery of the middle-end, which is quite surprising given that this 
machinery was precisely designed for this purpose.  Why is it so?

-- 
Eric Botcazou


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]