Use be_emit_irprintf("%T", x) instead of be_emit_tarval().
[libfirm] / ir / lower / lower_softfloat.c
index b49a2be..036dde8 100644 (file)
@@ -37,6 +37,7 @@
 #include "irgwalk.h"
 #include "irmode.h"
 #include "iropt_dbg.h"
+#include "iroptimize.h"
 #include "irprog_t.h"
 #include "lower_softfloat.h"
 #include "lowering.h"
@@ -317,10 +318,8 @@ static ir_node *create_softfloat_symconst(const ir_node *n, const char *name)
        else
                snprintf(buf, sizeof(buf), "__%s%s%s%s", name, first_param, second_param, result);
 
-       id  = new_id_from_str(buf);
-       ent = new_entity(get_glob_type(), id, method);
-
-       set_entity_ld_ident(ent, get_entity_ident(ent));
+       id           = new_id_from_str(buf);
+       ent          = create_compilerlib_entity(id, method);
        sym.entity_p = ent;
 
        return new_r_SymConst(irg, mode_P_code, sym, symconst_addr_ent);
@@ -1062,7 +1061,7 @@ void lower_floating_point(void)
 
        ir_prepare_softfloat_lowering();
 
-       clear_irp_opcodes_generic_func();
+       ir_clear_opcodes_generic_func();
        ir_register_softloat_lower_function(op_Add,   lower_Add);
        ir_register_softloat_lower_function(op_Cmp,   lower_Cmp);
        ir_register_softloat_lower_function(op_Conv,  lower_Conv);
@@ -1086,7 +1085,7 @@ void lower_floating_point(void)
                ir_nodeset_destroy(&created_mux_nodes);
        }
 
-       clear_irp_opcodes_generic_func();
+       ir_clear_opcodes_generic_func();
        ir_register_softloat_lower_function(op_Call,  lower_Call);
        ir_register_softloat_lower_function(op_Const, lower_Const);
        ir_register_softloat_lower_function(op_Div,   lower_Div_mode);