X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fir%2Firargs.c;h=9bf7b3c8a41bfe2a96c44206953d99f868b82dd5;hb=ad7dcd5e09ab2e082a395b7b26de2074b9be9320;hp=80d9404b68cea3469b16e2433eeb28d832578c1d;hpb=73219f8b406fa5b52ae13747f78b34e3b9e0335b;p=libfirm diff --git a/ir/ir/irargs.c b/ir/ir/irargs.c index 80d9404b6..9bf7b3c8a 100644 --- a/ir/ir/irargs.c +++ b/ir/ir/irargs.c @@ -14,6 +14,8 @@ # include "config.h" #endif +#ifdef WITH_LIBCORE + #include "bitset.h" #include @@ -84,6 +86,15 @@ static int firm_emit_dbg(lc_appendable_t *app, return lc_arg_append(app, occ, buf, strlen(buf)); } +/** + * Beware: do not set the entity ld_name + */ +static const char *get_entity_ld_name_ex(entity *ent) { + if (ent->ld_name) + return get_entity_ld_name(ent); + return get_entity_name(ent); +} + /** * emit a Firm object */ @@ -114,7 +125,7 @@ static int firm_emit(lc_appendable_t *app, break; case k_entity: snprintf(buf, sizeof(buf), "%s%s", A("ent"), - isupper(occ->conversion) ? get_entity_ld_name(X): get_entity_name(X)); + isupper(occ->conversion) ? get_entity_ld_name_ex(X): get_entity_name(X)); snprintf(add, sizeof(add), "[%ld]", get_entity_nr(X)); break; case k_type: @@ -280,3 +291,5 @@ lc_arg_env_t *firm_get_arg_env(void) return env; } + +#endif /* WITH_LIBCORE */