Use backtracking in find_original_value() for the flags emitter.
[libfirm] / ir / be / mips / mips_emitter.c
index 1acf611..018db91 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.
  *
@@ -317,7 +317,7 @@ void mips_emit_IncSP(const ir_node *node)
        }
 
        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 +432,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 +807,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();