From 0010a75e8dc9232a4fe93911222ca02303a3bcfd Mon Sep 17 00:00:00 2001 From: Guillaume Emont Date: Fri, 26 Oct 2012 11:31:24 +0200 Subject: [PATCH] mips: fix counters for loop_shift==0 --- orc/orcprogram-mips.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/orc/orcprogram-mips.c b/orc/orcprogram-mips.c index 6731c87..76910ae 100644 --- a/orc/orcprogram-mips.c +++ b/orc/orcprogram-mips.c @@ -349,8 +349,10 @@ orc_compiler_orc_mips_assemble (OrcCompiler *compiler) orc_mips_emit_andi (compiler, ORC_MIPS_T2, ORC_MIPS_T2, (1 << compiler->loop_shift) - 1); else - orc_mips_emit_nop (compiler); /* fill the branch delay slot */ + /* loop_shift==0: $t2 should be 0 because we can handle all our data in region 1*/ + orc_mips_emit_move (compiler, ORC_MIPS_T2, ORC_MIPS_ZERO); + /* FIXME: when loop_shift == 0, we only need to emit region1 */ orc_mips_emit_label (compiler, LABEL_REGION0_LOOP); saved_loop_shift = compiler->loop_shift; -- 2.7.4