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][AARCH64]Add ACLE 2.0 predefined macros: __ARM_ALIGN_MAX_PWR and __ARM_ALIGN_MAX_STACK_PWR


On 29 April 2015 at 01:24, Andrew Pinski <pinskia@gmail.com> wrote:
> On Tue, Dec 16, 2014 at 2:19 AM, Renlin Li <renlin.li@arm.com> wrote:
>> Hi all,
>>
>> This is a simple patch to add another two ACLE 2.0 predefined macros into
>> aarch64 backend.
>> They are __ARM_ALIGN_MAX_PWR and __ARM_ALIGN_MAX_STACK_PWR. Currently, those
>> two values are hard-wired to 16.
>>
>> The following clauses from ACLE 2.0 documentation indicate the meaning of
>> those two macros:
>>
>> The macro __ARM_ALIGN_MAX_STACK_PWR indicates (as the exponent of a power of
>> 2) the maximum available stack alignment.
>> The macro __ARM_ALIGN_MAX_PWR indicates (as the exponent of a power of 2)
>> the maximum available alignment of static data.
>>
>> aarch64-none-elf target is tested on on the model. No new regression.
>>
>> Is it Okay for trunk?
>
> Have you tested these alignments?  That is have we tested 65536
> alignment for both stack and static data?
> I suspect the stack alignment that is support is not 64k but much
> smaller.  And the supported static data alignment is much larger,
> maybe 20 or more.

Looks to me  __ARM_ALIGN_MAX_STACK_PWR can be lifted to 2^16 without
issue.  GCC won't gripe about the static data alignment until 2^29.
Aside from the latter being rather conservative I think we should add
a test case to the testsuite for each. RenLin can you prep a testcase?

/Marcus


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