From f7dfa0917a2f0469129bbf9b4c0884d37810abcd Mon Sep 17 00:00:00 2001 From: Matthias Braun Date: Thu, 28 Jun 2007 22:27:45 +0000 Subject: [PATCH] fix mips immediate dumper [r14833] --- ir/be/mips/mips_new_nodes.c | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) 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: -- 2.20.1