summaryrefslogtreecommitdiff
path: root/gcc/bb-reorder.c
diff options
context:
space:
mode:
authorsteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2010-01-10 23:31:30 +0000
committersteven <steven@138bc75d-0d04-0410-961f-82ee72b054a4>2010-01-10 23:31:30 +0000
commit065ffc72378a1f7e72912f7972645cbdc3f862e3 (patch)
tree99d562cb10527a7d867cdb389c6aa26088cd6fc8 /gcc/bb-reorder.c
parenta77f6f84fb10b86b4071473127716db1a636386b (diff)
downloadgcc-065ffc72378a1f7e72912f7972645cbdc3f862e3.tar.gz
PR rtl-optimization/42621
* bb-reorder.c (gate_duplicated_computed_gotos): Only run if not optimizing for size. (duplicate_computed_gotos): Remove now-redundant check. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@155796 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/bb-reorder.c')
-rw-r--r--gcc/bb-reorder.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/gcc/bb-reorder.c b/gcc/bb-reorder.c
index 561d7d00444..ebbd517dabd 100644
--- a/gcc/bb-reorder.c
+++ b/gcc/bb-reorder.c
@@ -1981,7 +1981,9 @@ gate_duplicate_computed_gotos (void)
{
if (targetm.cannot_modify_jumps_p ())
return false;
- return (optimize > 0 && flag_expensive_optimizations);
+ return (optimize > 0
+ && flag_expensive_optimizations
+ && ! optimize_function_for_size_p (cfun));
}
@@ -2072,9 +2074,6 @@ duplicate_computed_gotos (void)
|| single_pred_p (single_succ (bb)))
continue;
- if (!optimize_bb_for_size_p (bb))
- continue;
-
/* The successor block has to be a duplication candidate. */
if (!bitmap_bit_p (candidates, single_succ (bb)->index))
continue;