X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fmips%2Fmips_new_nodes.c;h=029f6b2366b996dfa93b1ae8186cb9cd522e6112;hb=e7ba741cdd9599ce05d7989bff60a1c6137ee0b5;hp=126aea2c7023d8b121d1aa39fbc4cbd71f61eed1;hpb=21d6dc90da67b8ef549565754b353e700e901cac;p=libfirm diff --git a/ir/be/mips/mips_new_nodes.c b/ir/be/mips/mips_new_nodes.c index 126aea2c7..029f6b236 100644 --- a/ir/be/mips/mips_new_nodes.c +++ b/ir/be/mips/mips_new_nodes.c @@ -138,9 +138,29 @@ static int mips_dump_node(ir_node *n, FILE *F, dump_reason_t reason) { if(is_mips_Immediate(n)) { const mips_immediate_attr_t *attr = get_mips_immediate_attr_const(n); - fprintf(F, " %ld", attr->val); + switch(attr->imm_type) { + case MIPS_IMM_CONST: + fprintf(F, " %ld ", attr->val); + break; + case MIPS_IMM_SYMCONST_LO: + fprintf(F, " lo(%s", get_entity_ld_name(attr->entity)); + if(attr->val != 0) { + fprintf(F, "%+ld", attr->val); + } + fprintf(F, ") "); + break; + case MIPS_IMM_SYMCONST_HI: + fprintf(F, " hi(%s", get_entity_ld_name(attr->entity)); + if(attr->val != 0) { + fprintf(F, "%+ld", attr->val); + } + fprintf(F, ") "); + break; + default: + fprintf(F, " INVALID "); + break; + } } - break; case dump_node_info_txt: