assert(get_irn_mode(irn) == mode_T && "Mode of node must be tuple");
+ if(is_Bad(irn))
+ return;
+
foreach_out_edge(irn, edge) {
ir_node *out = edge->src;
if (is_Block(succ))
continue;
+ /* Phi nodes are always in "another block */
+ if (is_Phi(succ))
+ continue;
if (get_nodes_block(succ) == block)
return 0;
}
const list_sched_selector_t *reg_pressure_selector = ®_pressure_selector_struct;
/* List schedule a graph. */
-void list_sched(const be_irg_t *birg, int disable_mris)
+void list_sched(const be_irg_t *birg, int enable_mris)
{
const arch_env_t *arch_env = birg->main_env->arch_env;
ir_graph *irg = birg->irg;
/* Assure, that the out edges are computed */
edges_assure(irg);
- if(!disable_mris)
+ if(enable_mris)
mris = be_sched_mris_preprocess(birg);
num_nodes = get_irg_last_idx(irg);
if (env.selector->finish_graph)
env.selector->finish_graph(env.selector_env);
- if(!disable_mris)
+ if(enable_mris)
be_sched_mris_free(mris);
DEL_ARR_F(env.sched_info);