#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)
* 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);
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;