OSDN Git Service

* simplify-rtx.c (simplify_ternary_operation): Use
[pf3gnuchains/gcc-fork.git] / gcc / tree-if-conv.c
index 53a20b6..489613c 100644 (file)
@@ -277,7 +277,7 @@ tree_if_convert_cond_expr (struct loop *loop, tree stmt, tree cond,
 
   gcc_assert (TREE_CODE (stmt) == COND_EXPR);
 
-  c = TREE_OPERAND (stmt, 0);
+  c = COND_EXPR_COND (stmt);
 
   /* Create temp. for condition.  */
   if (!is_gimple_condexpr (c))
@@ -657,10 +657,11 @@ add_to_dst_predicate_list (struct loop * loop, basic_block bb,
 static void
 clean_predicate_lists (struct loop *loop)
 {
-  unsigned int i;
-
-  for (i = 0; i < loop->num_nodes; i++)
-    ifc_bbs[i]->aux = NULL;
+#ifdef ENABLE_CHECKING
+  gcc_assert (loop->num_nodes == 2 || loop->num_nodes == 1);
+#endif
+  loop->header->aux = NULL;
+  loop->latch->aux = NULL;
 }
 
 /* Basic block BB has two predecessors. Using predecessor's aux field, set
@@ -823,7 +824,7 @@ process_phi_nodes (struct loop *loop)
 
       while (phi)
        {
-         tree next = TREE_CHAIN (phi);
+         tree next = PHI_CHAIN (phi);
          replace_phi_with_cond_modify_expr (phi, cond, true_bb, &bsi);
          release_phi_node (phi);
          phi = next;