Fix fallout from: [ARM] PR target/70830: Avoid POP-{reglist}^ when returning from interrupt handlers
PR target/70830 * config/arm/arm.c (arm_output_multireg_pop): Guard "pop" on update. From-SVN: r237027
This commit is contained in:
parent
521466e5cc
commit
114e816e3f
@ -1,3 +1,8 @@
|
||||
2016-06-02 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
|
||||
|
||||
PR target/70830
|
||||
* config/arm/arm.c (arm_output_multireg_pop): Guard "pop" on update.
|
||||
|
||||
2016-06-02 Segher Boessenkool <segher@kernel.crashing.org>
|
||||
|
||||
* config/rs6000/dfp.md (trunctddd2): Correct the "length" attribute.
|
||||
|
@ -17781,10 +17781,8 @@ arm_output_multireg_pop (rtx *operands, bool return_pc, rtx cond, bool reverse,
|
||||
|
||||
conditional = reverse ? "%?%D0" : "%?%d0";
|
||||
/* Can't use POP if returning from an interrupt. */
|
||||
if ((regno_base == SP_REGNUM) && !(interrupt_p && return_pc))
|
||||
{
|
||||
sprintf (pattern, "pop%s\t{", conditional);
|
||||
}
|
||||
if ((regno_base == SP_REGNUM) && update && !(interrupt_p && return_pc))
|
||||
sprintf (pattern, "pop%s\t{", conditional);
|
||||
else
|
||||
{
|
||||
/* Output ldmfd when the base register is SP, otherwise output ldmia.
|
||||
|
Loading…
Reference in New Issue
Block a user