[PATCH][AARCH64] Support tail indirect function call
Jiong Wang
jiong.wang@arm.com
Tue Apr 22 17:08:00 GMT 2014
^Ping...
ok for stage 1?
Regards,
Jiong
On 02/04/14 12:04, Jiong Wang wrote:
> ^Ping...
>
> Regards,
> Jiong
>
> On 18/03/14 14:13, Jiong Wang wrote:
>> Current, indirect function call prevents tail-call optimization on
>> AArch64.
>>
>> This patch adapt the fix for PR arm/19599 to AArch64.
>>
>> Is it ok for next stage 1?
>>
>> Thanks.
>>
>> -- Jiong
>>
>> gcc/
>>
>> * config/aarch64/predicates.md (aarch64_call_insn_operand): New
>> predicate.
>> * config/aarch64/constraints.md ("Ucs", "Usf"): New constraints.
>> * config/aarch64/aarch64.md (*sibcall_insn, *sibcall_value_insn):
>> Adjust for
>> tailcalling through registers.
>> * config/aarch64/aarch64.h (enum reg_class): New caller save
>> register class.
>> (REG_CLASS_NAMES): Likewise.
>> (REG_CLASS_CONTENTS): Likewise.
>> * config/aarch64/aarch64.c (aarch64_function_ok_for_sibcall):
>> Allow
>> tailcalling
>> without decls.
>>
>> gcc/testsuite
>>
>> *gcc.target/aarch64/tail-indirect-call.c: New test.
>
--
Jiong
More information about the Gcc-patches
mailing list