From d734c861b45c6b73dcf4c58bbc4d76fd03c1a2d9 Mon Sep 17 00:00:00 2001 From: Doug Evans Date: Thu, 10 Dec 1998 04:19:50 +0000 Subject: [PATCH] * config/tc-mips.c (append_insn): Don't move INSN_SYNC instructions into delay slot. Bring over from sky-980617-branch. --- gas/ChangeLog | 5 +++++ gas/config/tc-mips.c | 5 ++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 4e1570688a4..66dcf6a6aaa 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,6 +1,11 @@ start-sanitize-sky Wed Dec 9 17:06:48 1998 Doug Evans + Thu Nov 19 16:57:01 EST 1998 Frank Ch. Eigler + + * config/tc-mips.c (append_insn): Don't move INSN_SYNC + instructions into delay slot. + Tue Oct 13 14:06:18 1998 Doug Evans * config/tc-dvp.h (md_end): Define. diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index bfb58df0af1..ea96c845c00 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 -- 2.30.2