aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/h8300/h8300.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/config/h8300/h8300.c')
-rw-r--r--gcc/config/h8300/h8300.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/config/h8300/h8300.c b/gcc/config/h8300/h8300.c
index 1400782..551e354 100644
--- a/gcc/config/h8300/h8300.c
+++ b/gcc/config/h8300/h8300.c
@@ -303,6 +303,18 @@ enum h8_cpu
H8_S
};
+/* Implement TARGET_OPTION_OPTIMIZATION. */
+
+static void
+h8300_option_optimization (int level ATTRIBUTE_UNUSED,
+ int size ATTRIBUTE_UNUSED)
+{
+ /* Basic block reordering is only beneficial on targets with cache
+ and/or variable-cycle branches where (cycle count taken != cycle
+ count not taken). */
+ flag_reorder_blocks = 0;
+}
+
/* Initialize various cpu specific globals at start up. */
static void
@@ -5925,4 +5937,7 @@ h8300_trampoline_init (rtx m_tramp, tree fndecl, rtx cxt)
#undef TARGET_OPTION_OVERRIDE
#define TARGET_OPTION_OVERRIDE h8300_option_override
+#undef TARGET_OPTION_OPTIMIZATION
+#define TARGET_OPTION_OPTIMIZATION h8300_option_optimization
+
struct gcc_target targetm = TARGET_INITIALIZER;