X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fana%2Frta.c;h=ed9d8eb23b8da73269b7353b2f9875f78dcd6334;hb=3da5ed2598245b896255bc444aaa1768f6098cfe;hp=48f54affaadc421224fa6f75adb50a9a2fafd9ae;hpb=2bc2dd4bd4f64982e9c5d2f1ea70d63d0eb10044;p=libfirm diff --git a/ir/ana/rta.c b/ir/ana/rta.c index 48f54affa..ed9d8eb23 100644 --- a/ir/ana/rta.c +++ b/ir/ana/rta.c @@ -157,11 +157,6 @@ static void rta_act(ir_node *node, void *env) } else { /* it's an external allocated thing. */ } - } else if (get_SymConst_kind(ptr) == symconst_addr_name) { - /* Entities of kind addr_name may not be allocated in this compilation unit. - If so, the frontend built faulty Firm. So just ignore. */ - /* if (get_SymConst_name(ptr) != new_id_from_str("iro_Catch")) - assert(ent && "couldn't determine entity of call to SymConst of kind addr_name."); */ } else { /* other symconst. */ panic("This SymConst can not be an address for a method call."); @@ -212,7 +207,7 @@ static int rta_fill_incremental(void) ir_entity *ent = get_irg_entity(graph); ir_linkage linkage = get_entity_linkage(ent); - if (!(linkage & IR_LINKAGE_LOCAL) + if (entity_is_externally_visible(ent) || (linkage & IR_LINKAGE_HIDDEN_USER)) { eset_insert(_live_graphs, graph); }