+/**
+ * specialized version of irg_walk_2, called if only post callback exists
+ */
+static void
+irg_walk_2_post(ir_node *node, irg_walk_func *post, void * env) {
+ int i;
+ set_irn_visited(node, current_ir_graph->visited);
+
+ if (node->op != op_Block) {
+ ir_node *pred = get_irn_n(node, -1);
+ if (pred->visited < current_ir_graph->visited)
+ irg_walk_2_post(pred, post, env);
+ }
+ for (i = get_irn_arity(node) - 1; i >= 0; --i) {
+ ir_node *pred = get_irn_n(node, i);
+ if (pred->visited < current_ir_graph->visited)
+ irg_walk_2_post(pred, post, env);