convert bitfield initializer tarvals before using them
[libfirm] / ir / be / mips / mips_emitter.c
index 1acf611..8c80ed6 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 1995-2007 University of Karlsruhe.  All right reserved.
+ * Copyright (C) 1995-2008 University of Karlsruhe.  All right reserved.
  *
  * This file is part of libFirm.
  *
@@ -160,7 +160,7 @@ static const char *get_symconst_str(ir_node *node)
                id = get_entity_ident(get_SymConst_entity(node));
                return get_id_str(id);
        default:
-               assert(0);
+               panic("Unsupported SymConst kind");
        }
 
        return NULL;
@@ -311,13 +311,11 @@ void mips_emit_IncSP(const ir_node *node)
        int   offset = be_get_IncSP_offset(node);
 
        if(offset == 0) {
-               be_emit_cstring("\t/* omitted IncSP with 0 */");
-               be_emit_finish_line_gas(node);
                return;
        }
 
        if(offset > 0xffff || offset < -0xffff) {
-               panic("stackframe > 2^16 bytes not supported yet\n");
+               panic("stackframe > 2^16 bytes not supported yet");
        }
 
        if(offset > 0) {
@@ -432,11 +430,11 @@ const char* mips_get_block_label(const ir_node* block)
 static void mips_emit_block_label(const ir_node *block)
 {
        if (has_Block_label(block)) {
-               be_emit_string(be_gas_label_prefix());
+               be_emit_string(be_gas_block_label_prefix());
                be_emit_irprintf("%lu", get_Block_label(block));
        } else {
                be_emit_cstring(BLOCK_PREFIX);
-               be_emit_irprintf("%d", get_irn_node_nr(block));
+               be_emit_irprintf("%ld", get_irn_node_nr(block));
 
        }
 }
@@ -807,7 +805,7 @@ void mips_gen_routine(mips_code_gen_t *mips_cg, ir_graph *irg)
        int i, n;
 
        cg       = mips_cg;
-       isa      = (const mips_isa_t*) cg->arch_env->isa;
+       isa      = (const mips_isa_t*) cg->arch_env;
        arch_env = cg->arch_env;
 
        mips_register_emitters();
@@ -816,10 +814,9 @@ void mips_gen_routine(mips_code_gen_t *mips_cg, ir_graph *irg)
 
        mips_emit_func_prolog(irg);
 
-       dump_ir_block_graph_sched(irg, "-kaputtelist");
-
-       for (i = 0, n = mips_get_sched_n_blocks(cg); i < n; ++i) {
-               ir_node *block = mips_get_sched_block(cg, i);
+       n = ARR_LEN(cg->block_schedule);
+       for (i = 0; i < n; ++i) {
+               ir_node *block = cg->block_schedule[i];
                mips_gen_block(block);
        }