- /* we can only clone calls to existing entities */
- if (get_entity_irg(callee) == NULL)
+ /* we don't know which function gets finally bound to a weak symbol */
+ if (get_entity_linkage(callee) & IR_LINKAGE_WEAK)
- /* we cannot clone calls to weak functions */
- if (get_entity_additional_properties(callee) & mtp_property_weak)
+ /* we can only clone calls to existing entities */
+ if (get_entity_irg(callee) == NULL)
new_entity = copy_entity_name(q->ent, clone_ident);
/* a cloned entity is always local */
new_entity = copy_entity_name(q->ent, clone_ident);
/* a cloned entity is always local */
/* set a ld name here: Should we mangle this ? */
set_entity_ld_ident(new_entity, get_entity_ident(new_entity));
/* set a ld name here: Should we mangle this ? */
set_entity_ld_ident(new_entity, get_entity_ident(new_entity));