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: [s390] increase stack alignment


On Wed, Oct 8, 2008 at 1:59 PM, Andrew Pinski <pinskia@gmail.com> wrote:
> On Wed, Oct 8, 2008 at 1:55 PM, DJ Delorie <dj@redhat.com> wrote:
>>
>>> So could you please elaborate why you think this is necessary.
>>
>> The CDSG opcode needs 16 byte alignment when accessing stack
>> variables, currently it doesn't get it, I'm not really picky about how
>> it gets fixed ;-)
>>
>> In the test case I have (from a customer), the cdsg opcode is in an
>> inline asm, so gcc can't know that that stack is "special".  However,
>> the variables on stack are tagged for 32-byte alignment, and only get
>> 8-byte alignment.  Perhaps something in gcc could note when stack
>> variables need greater alignment than the stack normally provides, and
>> adjust the stack at runtime accordingly?
>
> See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16660.  I had posted a
> patch which realigned the stack variables if needed but it was not
> commented on except by HJL.  Intel implemented something different for
> x86 where they realign the whole stack.

Andrew, maybe you can update your patch with SUPPORTS_STACK_ALIGNMENT.
If SUPPORTS_STACK_ALIGNMENT is true, stack variables can be
aligned properly.

-- 
H.J.


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