aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Brook <paul@codesourcery.com>2004-03-15 15:30:58 +0000
committerPaul Brook <pbrook@gcc.gnu.org>2004-03-15 15:30:58 +0000
commit983e64842fe8236e78dc11f6d0f569a224f0767f (patch)
tree4f5fd5f0cc6b355f9e78d3b0c98e0cfad6858205
parente6f69614254b9df2875c93ed4d7ce5eed1a54c62 (diff)
downloadgcc-983e64842fe8236e78dc11f6d0f569a224f0767f.zip
gcc-983e64842fe8236e78dc11f6d0f569a224f0767f.tar.gz
gcc-983e64842fe8236e78dc11f6d0f569a224f0767f.tar.bz2
* config/arm/arm.c (thumb_expand_prologue): Tie prologue insns to fp.
From-SVN: r79496
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/arm/arm.c6
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 365cd54..29cc5e4 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2004-03-15 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (thumb_expand_prologue): Tie prologue insns to fp.
+
2004-03-15 Gabriel Dos Reis <gdr@integrable-solutions.net>
* c-pretty-print.c (pp_c_semicolon): Fix formatting.
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 4cada0c..af59d83 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -13110,6 +13110,12 @@ thumb_expand_prologue (void)
REG_NOTES (insn));
}
}
+ /* If the frame pointer is needed, emit a special barrier that
+ will prevent the scheduler from moving stores to the frame
+ before the stack adjustment. */
+ if (frame_pointer_needed)
+ emit_insn (gen_stack_tie (stack_pointer_rtx,
+ hard_frame_pointer_rtx));
}
if (current_function_profile || TARGET_NO_SCHED_PRO)