blob: 333438d8dcb9784081de68fc7fb34ae29f89053f [file] [log] [blame]
commit 9a228f68817f79bbd1d295b8e6fcaed25c47ee8f
Author: ramana <ramana@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Wed Oct 30 10:54:04 2013 +0000
Fix PR target/58854
2013-10-30 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/58854
* config/arm/arm.c (arm_expand_epilogue_apcs_frame): Emit blockage.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204203 138bc75d-0d04-0410-961f-82ee72b054a4
[yann.morin.1998@free.fr: removed the patch to the Changelog, it does not
apply and we don't really need it; re-diff to avoid offsets]
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 212a4bc..23dfc0e 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -23555,6 +23555,7 @@ arm_expand_epilogue_apcs_frame (bool really_return)
num_regs = bit_count (saved_regs_mask);
if ((offsets->outgoing_args != (1 + num_regs)) || cfun->calls_alloca)
{
+ emit_insn (gen_blockage ());
/* Unwind the stack to just below the saved registers. */
emit_insn (gen_addsi3 (stack_pointer_rtx,
hard_frame_pointer_rtx,