+ 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;
+ }