On 31/05/12 14:58, Greta Yorsh wrote: > Helper function for epilogue expansion. Emit RTL for APCS frame epilogue > (when -mapcs-frame command line option is specified). > This function is used by a later patch. > > For APCS frame epilogue, the compiler currently generates LDM with SP as > both the base register > and one of the destination registers. For example: > > @ APCS_FRAME epilogue > ldmfd sp, {r4, fp, sp, pc} > > @ non-APCS_FRAME epilogue > ldmfd sp!, {r4, fp, pc} > > The use of SP in LDM register list is deprecated, but this patch does not > address the problem. > > To generate the epilogue for APCS frame in RTL, this patch adds a new > alternative to arm_addsi2 insn in ARM mode only to generate "sub sp, fp, > #imm". Previously, there was no pattern to generate sub with SP as the > destination register and not SP as the operand register. > > > ChangeLog: > > gcc > > 2012-05-31 Ian Bolton <ian.bol...@arm.com> > Sameera Deshpande <sameera.deshpa...@arm.com> > Greta Yorsh <greta.yo...@arm.com> > > * config/arm/arm.c (arm_expand_epilogue_apcs_frame): New function. > * config/arm/arm.md (arm_addsi3) Add an alternative. >
The FPA support is now obsolete. Please remove that. OK with that change. R.