aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-if-conv.c
diff options
context:
space:
mode:
authorKazu Hirata <kazu@cs.umass.edu>2005-05-11 18:27:33 +0000
committerKazu Hirata <kazu@gcc.gnu.org>2005-05-11 18:27:33 +0000
commitf8535b4dcb7aa881dda1ba0d360a1eb95b464702 (patch)
tree6675cbf3325b0fdcb07426fd3ca3210da5da1c34 /gcc/tree-if-conv.c
parent3da7937d888cba8020d7a0411831b2d9fe3792da (diff)
downloadgcc-f8535b4dcb7aa881dda1ba0d360a1eb95b464702.zip
gcc-f8535b4dcb7aa881dda1ba0d360a1eb95b464702.tar.gz
gcc-f8535b4dcb7aa881dda1ba0d360a1eb95b464702.tar.bz2
re PR tree-optimization/18472 (TREE_OPERAND (t, 1) is referenced for t being GOTO_EXPR)
PR tree-optimizer/18472 * tree-if-conv.c (tree_if_convert_stmt, if_convertible_modify_expr_p): Don't handle GOTO_EXPR. From-SVN: r99588
Diffstat (limited to 'gcc/tree-if-conv.c')
-rw-r--r--gcc/tree-if-conv.c10
1 files changed, 1 insertions, 9 deletions
diff --git a/gcc/tree-if-conv.c b/gcc/tree-if-conv.c
index 2d72eea..decd9cd 100644
--- a/gcc/tree-if-conv.c
+++ b/gcc/tree-if-conv.c
@@ -241,13 +241,6 @@ tree_if_convert_stmt (struct loop * loop, tree t, tree cond,
program. */
break;
- case GOTO_EXPR:
- /* Unconditional goto */
- add_to_predicate_list (bb_for_stmt (TREE_OPERAND (t, 1)), cond);
- bsi_remove (bsi);
- cond = NULL_TREE;
- break;
-
case COND_EXPR:
/* Update destination blocks' predicate list and remove this
condition expression. */
@@ -401,7 +394,7 @@ if_convertible_modify_expr_p (struct loop *loop, basic_block bb, tree m_expr)
/* Return true, iff STMT is if-convertible.
Statement is if-convertible if,
- It is if-convertible MODIFY_EXPR
- - IT is LABEL_EXPR, GOTO_EXPR or COND_EXPR.
+ - IT is LABEL_EXPR or COND_EXPR.
STMT is inside block BB, which is inside loop LOOP. */
static bool
@@ -418,7 +411,6 @@ if_convertible_stmt_p (struct loop *loop, basic_block bb, tree stmt)
return false;
break;
- case GOTO_EXPR:
case COND_EXPR:
break;