int i, n_preds = get_Block_n_cfgpreds(block);
ir_graph *irg = get_Block_irg(block);
ir_node **ins = ALLOCAN(ir_node*, n_preds);
+ ir_node *dummy;
ir_node *phi;
assert(n_preds > 1);
+ dummy = new_r_Dummy(irg, env->mode);
for (i = 0; i < n_preds; ++i) {
- ins[i] = new_r_Unknown(irg, env->mode);
+ ins[i] = dummy;
}
phi = be_new_Phi(block, n_preds, ins, env->mode, env->phi_cls);
if (env->new_phis != NULL) {
}
}
-void be_ssa_construction_init(be_ssa_construction_env_t *env, be_irg_t *birg)
+void be_ssa_construction_init(be_ssa_construction_env_t *env, ir_graph *irg)
{
- ir_graph *irg = be_get_birg_irg(birg);
ir_node *sb = get_irg_start_block(irg);
int n_blocks = get_Block_dom_max_subtree_pre_num(sb);
int pos = get_edge_src_pos(edge);
ir_node *def;
- if (env->ignore_uses != NULL &&
+ if (env->ignore_uses != NULL &&
ir_nodeset_contains(env->ignore_uses, use))
continue;
if (is_Anchor(use) || is_End(use))