* config/tc-mips.c (append_insn): Remove cop_interlocks test from
authorRichard Sandiford <rdsandiford@googlemail.com>
Wed, 9 Mar 2005 09:50:16 +0000 (09:50 +0000)
committerRichard Sandiford <rdsandiford@googlemail.com>
Wed, 9 Mar 2005 09:50:16 +0000 (09:50 +0000)
branch delay code.

gas/ChangeLog
gas/config/tc-mips.c
gas/testsuite/ChangeLog

index 160fb72..d020a8f 100644 (file)
@@ -1,5 +1,10 @@
 2005-03-09  Richard Sandiford  <rsandifo@redhat.com>
 
+       * config/tc-mips.c (append_insn): Remove cop_interlocks test from
+       branch delay code.
+
+2005-03-09  Richard Sandiford  <rsandifo@redhat.com>
+
        * config/tc-mips.h (mips_flush_pending_output): Delete.
        (mips_emit_delays): Declare.
        (md_flush_pending_output): Use mips_emit_delays.
index 8e464f6..021dd40 100644 (file)
@@ -2513,17 +2513,6 @@ append_insn (struct mips_cl_insn *ip, expressionS *address_expr,
                 frags for different purposes.  */
              || (! mips_opts.mips16
                  && prev_insn_frag_type == rs_machine_dependent)
-             /* If the branch reads the condition codes, we don't
-                even try to swap, because in the sequence
-                  ctc1 $X,$31
-                  INSN
-                  INSN
-                  bc1t LABEL
-                we can not swap, and I don't feel like handling that
-                case.  */
-             || (! mips_opts.mips16
-                 && (pinfo & INSN_READ_COND_CODE)
-                 && ! cop_interlocks)
              /* Check for conflicts between the branch and the instructions
                 before the candidate delay slot.  */
              || nops_for_insn (history + 1, ip) > 0
index 6ce90b0..793640d 100644 (file)
@@ -1,3 +1,10 @@
+2005-03-09  Richard Sandiford  <rsandifo@redhat.com>
+
+       * gas/mips/relax-swap1-mips[12].d: Expect the delay slots of
+       bc1f and bc1t to be filled.
+       * gas/mips/branch-misc-3.[sd]: New test.
+       * gas/mips/mips.exp: Run it.
+
 2005-03-08  Jan Beulich  <jbeulich@novell.com>
 
        * gas/ia64/no-fit.[ls]: New.