aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/sh/sh.c24
-rw-r--r--gcc/toplev.c21
3 files changed, 15 insertions, 36 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 958880d..a7c688a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2000-11-20 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * toplev.c (rest_of_compilation): Run optimize_mode_switching even
+ if not optimizing.
+ * sh.c (emit_sf_insn, emit_df_insn): Just call emit_insn.
+
2000-11-19 Richard Henderson <rth@redhat.com>
* crtstuff.c (force_to_data): Use array size 1 not 0.
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index 4a03dd8..675920f 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -5014,38 +5014,14 @@ void
emit_sf_insn (pat)
rtx pat;
{
- rtx addr;
- /* When generating reload insns, we must not create new registers. FPSCR
- should already have the correct value, so do nothing to change it. */
- if (! TARGET_FPU_SINGLE && ! reload_in_progress && optimize < 1)
- {
- addr = gen_reg_rtx (SImode);
- emit_insn (gen_fpu_switch0 (addr));
- }
emit_insn (pat);
- if (! TARGET_FPU_SINGLE && ! reload_in_progress && optimize < 1)
- {
- addr = gen_reg_rtx (SImode);
- emit_insn (gen_fpu_switch1 (addr));
- }
}
void
emit_df_insn (pat)
rtx pat;
{
- rtx addr;
- if (TARGET_FPU_SINGLE && ! reload_in_progress && optimize < 1)
- {
- addr = gen_reg_rtx (SImode);
- emit_insn (gen_fpu_switch0 (addr));
- }
emit_insn (pat);
- if (TARGET_FPU_SINGLE && ! reload_in_progress && optimize < 1)
- {
- addr = gen_reg_rtx (SImode);
- emit_insn (gen_fpu_switch1 (addr));
- }
}
void
diff --git a/gcc/toplev.c b/gcc/toplev.c
index de74f28..536e496 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -3345,20 +3345,17 @@ rest_of_compilation (decl)
register_life_up_to_date = 0;
#ifdef OPTIMIZE_MODE_SWITCHING
- if (optimize)
- {
- timevar_push (TV_GCSE);
-
- if (optimize_mode_switching (NULL_PTR))
- {
- /* We did work, and so had to regenerate global life information.
- Take advantage of this and don't re-recompute register life
- information below. */
- register_life_up_to_date = 1;
- }
+ timevar_push (TV_GCSE);
- timevar_pop (TV_GCSE);
+ if (optimize_mode_switching (NULL_PTR))
+ {
+ /* We did work, and so had to regenerate global life information.
+ Take advantage of this and don't re-recompute register life
+ information below. */
+ register_life_up_to_date = 1;
}
+
+ timevar_pop (TV_GCSE);
#endif
#ifdef INSN_SCHEDULING