The branch test after a pattern compare instruction was backwards.

2012-01-27  Michael Eager  <ea...@eagercon.com>

        * config/microblaze.c (microblaze_emit_compare): Correct
        test after pcmp instruction.

Index: config/microblaze/microblaze.c
===================================================================
--- config/microblaze/microblaze.c      (revision 183633)
+++ config/microblaze/microblaze.c      (working copy)
@@ -2811,11 +2811,13 @@ microblaze_emit_compare (enum machine_mode mode, r
       if (TARGET_PATTERN_COMPARE && GET_CODE(cmp_op1) == REG)
         {
           if (code == EQ)
-           emit_insn (gen_seq_internal_pat (comp_reg, cmp_op0, cmp_op1));
+           {
+             emit_insn (gen_seq_internal_pat (comp_reg, cmp_op0, cmp_op1));
+             *cmp_code = NE;
+           }
          else
            {
              emit_insn (gen_sne_internal_pat (comp_reg, cmp_op0, cmp_op1));
-             *cmp_code = EQ;
            }
         }
       else


Committed revision 183635.

--
Michael Eager    ea...@eagercon.com
1960 Park Blvd., Palo Alto, CA 94306  650-325-8077

Reply via email to