diff --git a/gcc/ChangeLog b/gcc/ChangeLog index eb1ad100fb0..d19e3b3d454 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-03-03 Kazu Hirata + + * tree-cfg.c (stmt_starts_bb_p): Clean up by replacing code + with LABEL_EXPR. + 2005-03-03 Roger Sayle Andrew Pinski diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index 2ebc595624e..6ba0a02b8d0 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -2650,8 +2650,6 @@ simple_goto_p (tree expr) static inline bool stmt_starts_bb_p (tree t, tree prev_t) { - enum tree_code code; - if (t == NULL_TREE) return false; @@ -2659,16 +2657,14 @@ stmt_starts_bb_p (tree t, tree prev_t) statement wasn't a label of the same type. This prevents the creation of consecutive blocks that have nothing but a single label. */ - code = TREE_CODE (t); - if (code == LABEL_EXPR) + if (TREE_CODE (t) == LABEL_EXPR) { /* Nonlocal and computed GOTO targets always start a new block. */ - if (code == LABEL_EXPR - && (DECL_NONLOCAL (LABEL_EXPR_LABEL (t)) - || FORCED_LABEL (LABEL_EXPR_LABEL (t)))) + if (DECL_NONLOCAL (LABEL_EXPR_LABEL (t)) + || FORCED_LABEL (LABEL_EXPR_LABEL (t))) return true; - if (prev_t && TREE_CODE (prev_t) == code) + if (prev_t && TREE_CODE (prev_t) == LABEL_EXPR) { if (DECL_NONLOCAL (LABEL_EXPR_LABEL (prev_t))) return true;