* tree-ssa-dce.c (mark_stmt_necessary): Don't check for it.
* tree-ssa-operands.c (get_expr_operands): Likewise.
(get_expr_operands): Likewise for ERROR_MARK.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96351
138bc75d-0d04-0410-961f-
82ee72b054a4
+2005-03-12 Steven Bosscher <stevenb@suse.de>
+
+ * tree-cfg.c (make_goto_expr_edges): Don't use error_mark_node.
+ * tree-ssa-dce.c (mark_stmt_necessary): Don't check for it.
+ * tree-ssa-operands.c (get_expr_operands): Likewise.
+ (get_expr_operands): Likewise for ERROR_MARK.
+
2005-03-12 Kazu Hirata <kazu@cs.umass.edu>
* tree-ssa.c (kill_redundant_phi_nodes): Remove local variable
2005-03-11 James A. Morrison <phython@gcc.gnu.org>
- PR tree-optimization/15784
- * fold-const.c (fold): Fold ~A + 1 to -A. Fold -A - 1
- and -1 - A to ~A.
+ PR tree-optimization/15784
+ * fold-const.c (fold): Fold ~A + 1 to -A. Fold -A - 1
+ and -1 - A to ~A.
- * stmt.c (expand_case): Don't change index_type. Convert minval
- to the proper type.
+ * stmt.c (expand_case): Don't change index_type. Convert minval
+ to the proper type.
PR tree-optimization/20130
* fold-const.c (fold): Fold x * -1 into -x.
static void
make_goto_expr_edges (basic_block bb)
{
- tree goto_t, dest;
+ tree goto_t;
basic_block target_bb;
int for_call;
block_stmt_iterator last = bsi_last (bb);
CALL_EXPR or MODIFY_EXPR), then the edge is an abnormal edge resulting
from a nonlocal goto. */
if (TREE_CODE (goto_t) != GOTO_EXPR)
- {
- dest = error_mark_node;
- for_call = 1;
- }
+ for_call = 1;
else
{
- dest = GOTO_DESTINATION (goto_t);
+ tree dest = GOTO_DESTINATION (goto_t);
for_call = 0;
/* A GOTO to a local label creates normal edges. */
mark_stmt_necessary (tree stmt, bool add_to_worklist)
{
gcc_assert (stmt);
- gcc_assert (stmt != error_mark_node);
gcc_assert (!DECL_P (stmt));
if (NECESSARY (stmt))
_DECL. This indicates a bug in the gimplifier. */
gcc_assert (!SSA_VAR_P (stmt));
- /* Ignore error statements. */
- if (TREE_CODE (stmt) == ERROR_MARK)
- return;
-
ann = get_stmt_ann (stmt);
/* If the statement has not been modified, the operands are still valid. */
tree expr = *expr_p;
stmt_ann_t s_ann = stmt_ann (stmt);
- if (expr == NULL || expr == error_mark_node)
+ if (expr == NULL)
return;
code = TREE_CODE (expr);