aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorDoug Evans <dje@google.com>1998-12-10 04:19:50 +0000
committerDoug Evans <dje@google.com>1998-12-10 04:19:50 +0000
commitd734c861b45c6b73dcf4c58bbc4d76fd03c1a2d9 (patch)
treee870c192a29352f1c4a909cae7b48199ce6a920a /gas
parent84177a47f551503304c3d35c29385cf25530734c (diff)
downloadfsf-binutils-gdb-d734c861b45c6b73dcf4c58bbc4d76fd03c1a2d9.zip
fsf-binutils-gdb-d734c861b45c6b73dcf4c58bbc4d76fd03c1a2d9.tar.gz
fsf-binutils-gdb-d734c861b45c6b73dcf4c58bbc4d76fd03c1a2d9.tar.bz2
* config/tc-mips.c (append_insn): Don't move INSN_SYNC
instructions into delay slot. Bring over from sky-980617-branch.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/config/tc-mips.c5
2 files changed, 9 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 4e15706..66dcf6a 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,6 +1,11 @@
start-sanitize-sky
Wed Dec 9 17:06:48 1998 Doug Evans <devans@canuck.cygnus.com>
+ Thu Nov 19 16:57:01 EST 1998 Frank Ch. Eigler <fche@cygnus.com>
+
+ * config/tc-mips.c (append_insn): Don't move INSN_SYNC
+ instructions into delay slot.
+
Tue Oct 13 14:06:18 1998 Doug Evans <devans@canuck.cygnus.com>
* config/tc-dvp.h (md_end): Define.
diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c
index bfb58df..ea96c84 100644
--- a/gas/config/tc-mips.c
+++ b/gas/config/tc-mips.c
@@ -2224,7 +2224,10 @@ append_insn (place, ip, address_expr, reloc_type, unmatched_hi)
/* If the previous instruction had a fixup in mips16
mode, we can not swap. This normally means that the
previous instruction was a 4 byte branch anyhow. */
- || (mips_opts.mips16 && prev_insn_fixp))
+ || (mips_opts.mips16 && prev_insn_fixp)
+ /* If the previous instruction is a sync, sync.l, or
+ sync.p, we can not swap. */
+ || (prev_pinfo && INSN_SYNC))
{
/* We could do even better for unconditional branches to
portions of this object file; we could pick up the