Hi Ramana,
Please find attached revised LDRD generation patch for A15 ARM mode.
Because of the major rework in ARM RTL epilogue patch, this patch has
undergone some changes.
The patch is tested with check-gcc, bootstrap and check-gdb without
regression.
Ok for trunk?
-- diff --git a/gcc/config
On Fri, 2011-10-21 at 13:45 +0100, Ramana Radhakrishnan wrote:
> change that. Other than that this patch looks OK and please watch out
> for stylistic issues from the previous patch.
Ramana, please find attached reworked patch. The patch is tested with
check-gcc, check-gdb and bootstrap with no r
> 2011-10-11 Sameera Deshpande
>
>
> * config/arm/arm.c (arm_emit_ldrd_pop): New static function.
> (arm_expand_epilogue): Update.
> * config/arm/ldmstm.md (arm_ldrd_base): New pattern.
> (arm_ldr_with_update): Likewise.
rth's comment about REG_CFA_RESTORE applies
Hi!
This patch generates LDRD instead of POP in epilogue for A15 ARM mode.
For optimize_size, original epilogue is generated for A15.
The work involves defining new functions, predicates and patterns.
In this patch we keep on accumulating non-consecutive registers till
register-pair to be popped