Added strict_flag to new_r/rd_Conv(). Fixed strict Convs for irio.
[libfirm] / ir / opt / code_placement.c
index edeacc1..577ad98 100644 (file)
@@ -25,9 +25,7 @@
  *           Michael Beck
  * @version  $Id$
  */
-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
+#include "config.h"
 
 #include "adt/pdeq.h"
 #include "irnode_t.h"
@@ -68,7 +66,7 @@ place_floats_early(ir_node *n, waitq *worklist) {
        int i, irn_arity;
 
        /* we must not run into an infinite loop */
-       assert(irn_not_visited(n));
+       assert(!irn_visited(n));
        mark_irn_visited(n);
 
        /* Place floating nodes. */
@@ -92,7 +90,7 @@ place_floats_early(ir_node *n, waitq *worklist) {
                        ir_node *pred = get_irn_n(n, i);
                        ir_node *pred_block;
 
-                       if ((irn_not_visited(pred))
+                       if (!irn_visited(pred)
                            && (get_irn_pinned(pred) == op_pin_state_floats)) {
 
                                /*
@@ -154,7 +152,7 @@ place_floats_early(ir_node *n, waitq *worklist) {
                 */
                for (i = -1; i < irn_arity; ++i) {
                        ir_node *pred = get_irn_n(n, i);
-                       if (irn_not_visited(pred))
+                       if (!irn_visited(pred))
                                waitq_put(worklist, pred);
                }
        } else if (is_Block(n)) {
@@ -164,7 +162,7 @@ place_floats_early(ir_node *n, waitq *worklist) {
                 */
                for (i = irn_arity - 1; i >= 0; --i) {
                        ir_node *pred = get_irn_n(n, i);
-                       if (irn_not_visited(pred))
+                       if (!irn_visited(pred))
                                waitq_put(worklist, pred);
                }
        } else if (is_Phi(n)) {
@@ -177,13 +175,13 @@ place_floats_early(ir_node *n, waitq *worklist) {
                 * of the Phi-input if the Phi is not in a bad block.
                 */
                pred = get_nodes_block(n);
-               if (irn_not_visited(pred))
+               if (!irn_visited(pred))
                        waitq_put(worklist, pred);
 
                for (i = irn_arity - 1; i >= 0; --i) {
                        ir_node *pred = get_irn_n(n, i);
 
-                       if (irn_not_visited(pred)) {
+                       if (!irn_visited(pred)) {
                                if (! in_dead_block &&
                                        get_irn_pinned(pred) == op_pin_state_floats &&
                                        is_Block_unreachable(get_nodes_block(pred))) {
@@ -201,13 +199,13 @@ place_floats_early(ir_node *n, waitq *worklist) {
                 * All other nodes: move nodes from dead blocks into the same block.
                 */
                pred = get_nodes_block(n);
-               if (irn_not_visited(pred))
+               if (!irn_visited(pred))
                        waitq_put(worklist, pred);
 
                for (i = irn_arity - 1; i >= 0; --i) {
                        ir_node *pred = get_irn_n(n, i);
 
-                       if (irn_not_visited(pred)) {
+                       if (!irn_visited(pred)) {
                                if (! in_dead_block &&
                                        get_irn_pinned(pred) == op_pin_state_floats &&
                                        is_Block_unreachable(get_nodes_block(pred))) {
@@ -237,7 +235,7 @@ static void place_early(waitq *worklist) {
        /* Work the content of the worklist. */
        while (!waitq_empty(worklist)) {
                ir_node *n = waitq_get(worklist);
-               if (irn_not_visited(n))
+               if (!irn_visited(n))
                        place_floats_early(n, worklist);
        }
        set_irg_pinned(current_ir_graph, op_pin_state_pinned);
@@ -306,10 +304,8 @@ static ir_node *consumer_dom_dca(ir_node *dca, ir_node *consumer, ir_node *produ
        return dca;
 }
 
-/* FIXME: the name clashes here with the function from ana/field_temperature.c
- * please rename. */
-static INLINE int get_irn_loop_depth(ir_node *n) {
-       return get_loop_depth(get_irn_loop(n));
+static inline int get_block_loop_depth(ir_node *block) {
+       return get_loop_depth(get_irn_loop(block));
 }
 
 /**
@@ -333,7 +329,7 @@ static void move_out_of_loops(ir_node *n, ir_node *early) {
        while (dca != early) {
                dca = get_Block_idom(dca);
                if (!dca || is_Bad(dca)) break; /* may be Bad if not reachable from Start */
-               if (get_irn_loop_depth(dca) < get_irn_loop_depth(best)) {
+               if (get_block_loop_depth(dca) < get_block_loop_depth(best)) {
                        best = dca;
                }
        }
@@ -417,7 +413,7 @@ static void place_floats_late(ir_node *n, pdeq *worklist) {
        int i, n_outs;
        ir_node *early_blk;
 
-       assert(irn_not_visited(n)); /* no multiple placement */
+       assert(!irn_visited(n)); /* no multiple placement */
 
        mark_irn_visited(n);
 
@@ -445,7 +441,7 @@ static void place_floats_late(ir_node *n, pdeq *worklist) {
                    producer of one of their inputs in the same block anyway. */
                for (i = get_irn_n_outs(n) - 1; i >= 0; --i) {
                        ir_node *succ = get_irn_out(n, i);
-                       if (irn_not_visited(succ) && !is_Phi(succ))
+                       if (!irn_visited(succ) && !is_Phi(succ))
                                place_floats_late(succ, worklist);
                }
 
@@ -480,7 +476,7 @@ static void place_floats_late(ir_node *n, pdeq *worklist) {
        n_outs = get_irn_n_outs(n);
        for (i = 0; i < n_outs; i++) {
                ir_node *succ = get_irn_out(n, i);
-               if (irn_not_visited(succ)) {
+               if (!irn_visited(succ)) {
                        pdeq_putr(worklist, succ);
                }
        }
@@ -502,7 +498,7 @@ static void place_late(waitq *worklist) {
        /* And now empty the worklist again... */
        while (!waitq_empty(worklist)) {
                ir_node *n = waitq_get(worklist);
-               if (irn_not_visited(n))
+               if (!irn_visited(n))
                        place_floats_late(n, worklist);
        }
 }