X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbessadestr.c;h=ec293c838d400bda2f7fc80051b64f751b63965f;hb=366a46e4479da65e90385be36b77b185eb95bda7;hp=45a01499457a0990a75d4bb646e0b11c405fd314;hpb=e73e99f2c41199cea3de3d4d38e2fa3b120523e6;p=libfirm diff --git a/ir/be/bessadestr.c b/ir/be/bessadestr.c index 45a014994..ec293c838 100644 --- a/ir/be/bessadestr.c +++ b/ir/be/bessadestr.c @@ -29,7 +29,7 @@ #include "benode_t.h" #include "besched_t.h" -static firm_dbg_module_t *dbg = NULL; +DEBUG_ONLY(static firm_dbg_module_t *dbg = NULL;) #define DUMP_GRAPHS #define get_chordal_arch(ce) ((ce)->birg->main_env->arch_env) @@ -222,8 +222,13 @@ static void set_regs_or_place_dupls_walker(ir_node *bl, void *data) { * insert it into schedule, * pin it */ - ir_node *dupl = be_new_Copy(cls, chordal_env->irg, arg_block, arg); - assert(get_irn_mode(phi) == get_irn_mode(dupl)); + ir_node *dupl = be_new_Copy(cls, chordal_env->irg, arg_block, arg); + ir_mode *m_phi = get_irn_mode(phi), *m_dupl = get_irn_mode(dupl); + + assert(((mode_is_int(m_phi) && mode_is_int(m_dupl)) || + (mode_is_float(m_phi) && mode_is_float(m_dupl))) && + (get_mode_size_bits(m_phi) == get_mode_size_bits(m_dupl))); + set_irn_n(phi, i, dupl); set_reg(dupl, phi_reg); sched_add_after(sched_skip(sched_last(arg_block), 0, sched_skip_cf_predicator, chordal_env->birg->main_env->arch_env), dupl); @@ -296,7 +301,7 @@ void be_ssa_destruction(be_chordal_env_t *chordal_env) { pmap *perm_map = pmap_create(); ir_graph *irg = chordal_env->irg; - dbg = firm_dbg_register("ir.be.ssadestr"); + FIRM_DBG_REGISTER(dbg, "ir.be.ssadestr"); /* create a map for fast lookup of perms: block --> perm */ chordal_env->data = perm_map;