unless -fschedule-insns is specified.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147454
138bc75d-0d04-0410-961f-
82ee72b054a4
2009-05-12 Kaz Kojima <kkojima@gcc.gnu.org>
2009-05-12 Kaz Kojima <kkojima@gcc.gnu.org>
+ * config/sh/sh.h (OVERRIDE_OPTIONS): Clear flag_schedule_insns
+ unless -fschedule-insns is specified.
+
+2009-05-12 Kaz Kojima <kkojima@gcc.gnu.org>
+
PR target/39561
* config/sh/sh.h (OPTIMIZATION_OPTIONS): Don't set
TARGET_EXPAND_CBRANCHDI4.
PR target/39561
* config/sh/sh.h (OPTIMIZATION_OPTIONS): Don't set
TARGET_EXPAND_CBRANCHDI4.
/* Never run scheduling before reload, since that can \
break global alloc, and generates slower code anyway due \
to the pressure on R0. */ \
/* Never run scheduling before reload, since that can \
break global alloc, and generates slower code anyway due \
to the pressure on R0. */ \
- /* Enable sched1 for SH4; ready queue will be reordered by \
- the target hooks when pressure is high. We can not do this for \
+ /* Enable sched1 for SH4 if the user explicitly requests. \
+ When sched1 is enabled, the ready queue will be reordered by \
+ the target hooks if pressure is high. We can not do this for \
PIC, SH3 and lower as they give spill failures for R0. */ \
if (!TARGET_HARD_SH4 || flag_pic) \
flag_schedule_insns = 0; \
PIC, SH3 and lower as they give spill failures for R0. */ \
if (!TARGET_HARD_SH4 || flag_pic) \
flag_schedule_insns = 0; \
warning (0, "ignoring -fschedule-insns because of exception handling bug"); \
flag_schedule_insns = 0; \
} \
warning (0, "ignoring -fschedule-insns because of exception handling bug"); \
flag_schedule_insns = 0; \
} \
+ else if (flag_schedule_insns == 2) \
+ flag_schedule_insns = 0; \
} \
\
if (align_loops == 0) \
} \
\
if (align_loops == 0) \