X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Flower%2Flower_builtins.c;h=381ea97ad4a52de9083629867710fa620de2d9cc;hb=b59e22a229aa1227ef992c184c79fdafe34908cf;hp=c9c7a72ed4c61a9184ceada0e383c38e6f975c53;hpb=23231a9b768f81230631b011647efe54c6be8de2;p=libfirm diff --git a/ir/lower/lower_builtins.c b/ir/lower/lower_builtins.c index c9c7a72ed..381ea97ad 100644 --- a/ir/lower/lower_builtins.c +++ b/ir/lower/lower_builtins.c @@ -32,6 +32,7 @@ #include "ircons_t.h" #include "irgmod.h" #include "irgwalk.h" +#include "iroptimize.h" #include "error.h" static pmap *entities; @@ -98,11 +99,9 @@ static void replace_with_call(ir_node *node) snprintf(buf, sizeof(buf), "__%s%s2", name, gcc_machmode); id = new_id_from_str(buf); - entity = pmap_get(entities, id); + entity = pmap_get(ir_entity, entities, id); if (entity == NULL) { - ir_type *glob = get_glob_type(); - entity = new_entity(glob, id, mtp); - set_entity_visibility(entity, ir_visibility_external); + entity = create_compilerlib_entity(id, mtp); pmap_insert(entities, id, entity); } @@ -115,7 +114,7 @@ static void replace_with_call(ir_node *node) turn_into_tuple(node, 2); set_irn_n(node, pn_Builtin_M, call_mem); - set_irn_n(node, pn_Builtin_1_result, call_res); + set_irn_n(node, pn_Builtin_max+1, call_res); } static void lower_builtin(ir_node *node, void *env)