summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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 365cd54814a..29cc5e4b130 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 4cada0c10eb..af59d8328b1 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)
OpenPOWER on IntegriCloud