On 12/13/2017 04:17 PM, Eric Botcazou wrote:
>> No clue, but ISTM that it should.  Eric, can you try that and see if it
>> addresses these problems?  I'd really like to get this wrapped up, but I
>> don't have access to any sparc systems to test it myself.
> 
> Yes, the INIT_EXPANDERS trick works for SPARC (but this has nothing to do 
> with 
> SPARC_STACK_BIAS) and avoid hardcoding the bogus alignment assumption in the 
> get_dynamic_stack_size function.  As a matter of fact, this was the approach 
> originally used by Dominik Vogt last year.
> 
> Of course this doesn't address the same potential issue on other targets but 
> you don't seem to care much about that, so who am I to do it after all? ;-)
> 
> Tested on x86_64-suse-linux and SPARC/Solaris, applied on the mainline.
> 
> 
> 2017-12-13  Eric Botcazou  <ebotca...@adacore.com>
>             Dominik Vogt  <v...@linux.vnet.ibm.com>
> 
>       PR middle-end/78468
>       * emit-rtl.c (init_emit): Remove ??? comment.
>       * explow.c (get_dynamic_stack_size): Take known alignment of stack
>       pointer + STACK_DYNAMIC_OFFSET into account in lieu of STACK_BOUNDARY
>       * config/sparc/sparc.h (INIT_EXPANDERS): In 32-bit mode, lower the
>       alignment of 3 virtual registers to BITS_PER_WORD.
> 
>       * config/sparc/sparc.c (sparc_compute_frame_size): Simplify.
> 
Thanks for taking care of this.

jeff

Reply via email to