mcount = new_entity(get_glob_type(), ID("mcount"), tp);
/* FIXME: enter the right ld_ident here */
set_entity_ld_ident(mcount, get_entity_ident(mcount));
- set_entity_linkage(mcount, IR_LINKAGE_EXTERN);
+ set_entity_visibility(mcount, ir_visibility_external);
}
instrument_initcall(cg->irg, mcount);
}
be_emit_cstring(".Ltext0:\n");
be_emit_write_line();
- /* we mark referenced global entities, so we can only emit those which
- * are actually referenced. (Note: you mustn't use the type visited flag
- * elsewhere in the backend)
- */
- inc_master_type_visited();
-
return &isa->arch_env;
}
&& mode != mode_b)
return false;
- if (is_Const(mux_true) && is_Const_one(mux_true)
- && is_Const(mux_false) && is_Const_null(mux_false)) {
- return true;
- }
- if (is_Const(mux_true) && is_Const_null(mux_true)
- && is_Const(mux_false) && is_Const_one(mux_false)) {
+ if (is_Const(mux_true) && is_Const(mux_false)) {
+ /* we can create a set plus up two 3 instructions for any combination of constants */
return true;
}
mode = get_irn_mode(mux_true);
if (get_mode_size_bits(mode) > 32)
return false;
+ /* we can't handle MuxF yet */
+ if (mode_is_float(mode))
+ return false;
if (mux_is_doz(sel, mux_true, mux_false))
return true;