This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: patch r5900/micromips handling
- From: "Jürgen Urban" <JuergenUrban at gmx dot de>
- To: Richard Sandiford <rdsandiford at googlemail dot com>
- Cc: binutils at sourceware dot org
- Date: Thu, 07 Feb 2013 21:58:10 +0100
- Subject: Re: patch r5900/micromips handling
Hello,
> Looks good, thanks. Just a couple of minor things:
>
> "JÃrgen Urban" <JuergenUrban@gmx.de> writes:
> > +/* True, if CPU has support for ldc1 and sdc1. */
> > +#define CPU_HAS_LDC1_SDC1(CPU) ((mips_opts.isa != ISA_MIPS1) && ((CPU)
> != CPU_R5900))
> > +
>
> Formatting, should be:
>
> #define CPU_HAS_LDC1_SDC1(CPU) \
> (mips_opts.isa != ISA_MIPS1 && (CPU) != CPU_R5900)
>
>
> > /* True if mflo and mfhi can be immediately followed by instructions
> > which write to the HI and LO registers.
> >
> > @@ -9027,8 +9030,7 @@ macro (struct mips_cl_insn *ip)
> > s = segment_name (S_GET_SEGMENT (offset_expr.X_add_symbol));
> > if (strcmp (s, ".lit8") == 0)
> > {
> > - if ((mips_opts.isa != ISA_MIPS1 || mips_opts.micromips)
> > - && (mips_opts.arch != CPU_R5900))
> > + if (CPU_HAS_LDC1_SDC1(mips_opts.arch) || mips_opts.micromips)
>
> Missing space before "(". A few other cases.
>
> > diff -Nurp
> binutils-cvs-20130104/gas/testsuite/gas/mips/24k-triple-stores-2.s
> binutils-cvs-20130104-mips64el-linux-patched/gas/testsuite/gas/mips/24k-triple-stores-2.s
> > ---
> binutils-cvs-20130104/gas/testsuite/gas/mips/24k-triple-stores-2.s 2013-01-26 18:28:08.503235967 +0100
> > +++
> binutils-cvs-20130104-mips64el-linux-patched/gas/testsuite/gas/mips/24k-triple-stores-2.s 2013-01-26 21:08:44.343223485 +0100
> > @@ -28,12 +28,6 @@ foo:
> > swl $6,0($sp)
> > break
> >
> > - sc $2,32($sp)
> > - sc $3,8($sp)
> > - sc $4,-8($sp)
> > - sc $5,0($sp)
> > - sc $6,32($sp)
> > -
>
> Please remove the last "break" too, since it was there to separate
> groups of stores.
It is now fixed. The attached patch can be applied without the previous VU0 patch. ragnarok2040 will need more time fix the VU0 patch.
Best regards
JÃrgen
diff -Nurp ../binutils-cvs-20130202.orig/gas/config/tc-mips.c binutils-cvs-20130202-mips64el-linux-patched/gas/config/tc-mips.c
--- ../binutils-cvs-20130202.orig/gas/config/tc-mips.c 2013-01-09 19:31:21.000000000 +0100
+++ binutils-cvs-20130202-mips64el-linux-patched/gas/config/tc-mips.c 2013-02-07 21:29:46.146812447 +0100
@@ -504,6 +504,10 @@ static int mips_32bitmode = 0;
/* True if CPU has seq/sne and seqi/snei instructions. */
#define CPU_HAS_SEQ(CPU) (CPU_IS_OCTEON (CPU))
+/* True, if CPU has support for ldc1 and sdc1. */
+#define CPU_HAS_LDC1_SDC1(CPU) \
+ ((mips_opts.isa != ISA_MIPS1) && ((CPU) != CPU_R5900))
+
/* True if mflo and mfhi can be immediately followed by instructions
which write to the HI and LO registers.
@@ -8927,8 +8931,7 @@ macro (struct mips_cl_insn *ip)
s = segment_name (S_GET_SEGMENT (offset_expr.X_add_symbol));
if (strcmp (s, ".lit8") == 0)
{
- if ((mips_opts.isa != ISA_MIPS1 || mips_opts.micromips)
- && (mips_opts.arch != CPU_R5900))
+ if (CPU_HAS_LDC1_SDC1 (mips_opts.arch) || mips_opts.micromips)
{
macro_build (&offset_expr, "ldc1", "T,o(b)", treg,
BFD_RELOC_MIPS_LITERAL, mips_gp_register);
@@ -8951,8 +8954,7 @@ macro (struct mips_cl_insn *ip)
macro_build_lui (&offset_expr, AT);
}
- if ((mips_opts.isa != ISA_MIPS1 || mips_opts.micromips)
- && (mips_opts.arch != CPU_R5900))
+ if (CPU_HAS_LDC1_SDC1 (mips_opts.arch) || mips_opts.micromips)
{
macro_build (&offset_expr, "ldc1", "T,o(b)",
treg, BFD_RELOC_LO16, AT);
@@ -8969,8 +8971,7 @@ macro (struct mips_cl_insn *ip)
r = BFD_RELOC_LO16;
dob:
gas_assert (!mips_opts.micromips);
- gas_assert ((mips_opts.isa == ISA_MIPS1)
- || (mips_opts.arch == CPU_R5900));
+ gas_assert (!CPU_HAS_LDC1_SDC1 (mips_opts.arch));
macro_build (&offset_expr, "lwc1", "T,o(b)",
target_big_endian ? treg + 1 : treg, r, breg);
/* FIXME: A possible overflow which I don't know how to deal
@@ -8982,7 +8983,7 @@ macro (struct mips_cl_insn *ip)
case M_S_DOB:
gas_assert (!mips_opts.micromips);
- gas_assert (mips_opts.isa == ISA_MIPS1);
+ gas_assert (!CPU_HAS_LDC1_SDC1 (mips_opts.arch));
/* Even on a big endian machine $fn comes before $fn+1. We have
to adjust when storing to memory. */
macro_build (&offset_expr, "swc1", "T,o(b)",
@@ -9008,7 +9009,7 @@ macro (struct mips_cl_insn *ip)
/* Itbl support may require additional care here. */
coproc = 1;
fmt = "T,o(b)";
- if ((mips_opts.isa != ISA_MIPS1) && (mips_opts.arch != CPU_R5900))
+ if (CPU_HAS_LDC1_SDC1 (mips_opts.arch))
{
s = "ldc1";
goto ld_st;
@@ -9021,7 +9022,7 @@ macro (struct mips_cl_insn *ip)
/* Itbl support may require additional care here. */
coproc = 1;
fmt = "T,o(b)";
- if ((mips_opts.isa != ISA_MIPS1) && (mips_opts.arch != CPU_R5900))
+ if (CPU_HAS_LDC1_SDC1 (mips_opts.arch))
{
s = "sdc1";
goto ld_st;
@@ -9922,7 +9923,7 @@ macro (struct mips_cl_insn *ip)
case M_TRUNCWS:
case M_TRUNCWD:
gas_assert (!mips_opts.micromips);
- gas_assert ((mips_opts.isa == ISA_MIPS1) || (mips_opts.arch == CPU_R5900));
+ gas_assert (mips_opts.isa == ISA_MIPS1);
used_at = 1;
sreg = (ip->insn_opcode >> 11) & 0x1f; /* floating reg */
dreg = (ip->insn_opcode >> 06) & 0x1f; /* floating reg */
diff -Nurp ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/24k-triple-stores-2.d binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/24k-triple-stores-2.d
--- ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/24k-triple-stores-2.d 2011-06-26 10:32:50.000000000 +0200
+++ binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/24k-triple-stores-2.d 2013-02-07 21:29:46.146812447 +0100
@@ -31,11 +31,4 @@ Disassembly of section .text:
58: aba50018 swl a1,24\(sp\)
5c: 00000000 nop
60: aba60000 swl a2,0\(sp\)
- 64: 0000000d break
- 68: e3a20020 sc v0,32\(sp\)
- 6c: e3a30008 sc v1,8\(sp\)
- 70: e3a4fff8 sc a0,-8\(sp\)
- 74: 00000000 nop
- 78: e3a50000 sc a1,0\(sp\)
- 7c: e3a60020 sc a2,32\(sp\)
\.\.\.
diff -Nurp ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/24k-triple-stores-2-llsc.d binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/24k-triple-stores-2-llsc.d
--- ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/24k-triple-stores-2-llsc.d 1970-01-01 01:00:00.000000000 +0100
+++ binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/24k-triple-stores-2-llsc.d 2013-02-07 21:29:46.146812447 +0100
@@ -0,0 +1,15 @@
+#objdump: -dr
+#as: -mfix-24k -32
+#name: 24K: Triple Store (Range Check, sc)
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+0+ <.*>:
+ 0: e3a20020 sc v0,32\(sp\)
+ 4: e3a30008 sc v1,8\(sp\)
+ 8: e3a4fff8 sc a0,-8\(sp\)
+ c: 00000000 nop
+ 10: e3a50000 sc a1,0\(sp\)
+ 14: e3a60020 sc a2,32\(sp\)
+ \.\.\.
diff -Nurp ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/24k-triple-stores-2-llsc.s binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/24k-triple-stores-2-llsc.s
--- ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/24k-triple-stores-2-llsc.s 1970-01-01 01:00:00.000000000 +0100
+++ binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/24k-triple-stores-2-llsc.s 2013-02-07 21:29:46.146812447 +0100
@@ -0,0 +1,12 @@
+# Check for range (sc)
+
+foo:
+ sc $2,32($sp)
+ sc $3,8($sp)
+ sc $4,-8($sp)
+ sc $5,0($sp)
+ sc $6,32($sp)
+
+# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
+ .align 2
+ .space 8
diff -Nurp ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/24k-triple-stores-2.s binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/24k-triple-stores-2.s
--- ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/24k-triple-stores-2.s 2011-11-21 12:18:28.000000000 +0100
+++ binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/24k-triple-stores-2.s 2013-02-07 21:29:46.590812434 +0100
@@ -26,13 +26,6 @@ foo:
swl $4,16($sp)
swl $5,24($sp)
swl $6,0($sp)
- break
-
- sc $2,32($sp)
- sc $3,8($sp)
- sc $4,-8($sp)
- sc $5,0($sp)
- sc $6,32($sp)
# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
.align 2
diff -Nurp ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/l_d-single.d binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/l_d-single.d
--- ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/l_d-single.d 1970-01-01 01:00:00.000000000 +0100
+++ binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/l_d-single.d 2013-02-07 21:29:46.590812434 +0100
@@ -0,0 +1,566 @@
+#objdump: -dr --prefix-addresses
+#as: -32 --defsym tl_d=1
+#name: MIPS l.d singlefloat
+#source: ld.s
+
+# Test the l.d macro on system without ldc1 and sdc1:
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(zero\)
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(zero\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(zero\)
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(zero\)
+[0-9a-f]+ <[^>]*> lui at,0x1
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(zero\)
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(zero\)
+[0-9a-f]+ <[^>]*> lui at,0x1
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+[0-9a-f]+ <[^>]*> lui at,0x2
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(a1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(a1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(a1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(a1\)
+[0-9a-f]+ <[^>]*> lui at,0x1
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(a1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(a1\)
+[0-9a-f]+ <[^>]*> lui at,0x1
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+[0-9a-f]+ <[^>]*> lui at,0x2
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,gp
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,gp
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,gp
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,gp
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,gp
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,gp
+[0-9a-f]+ <[^>]*> lwc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+ \.\.\.
diff -Nurp ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/micromips@24k-triple-stores-2.d binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/micromips@24k-triple-stores-2.d
--- ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/micromips@24k-triple-stores-2.d 2011-11-21 12:18:28.000000000 +0100
+++ binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/micromips@24k-triple-stores-2.d 2013-02-07 21:29:46.722812434 +0100
@@ -29,11 +29,4 @@ Disassembly of section \.text:
*[0-9a-f]+: 609d 8010 swl a0,16\(sp\)
*[0-9a-f]+: 60bd 8018 swl a1,24\(sp\)
*[0-9a-f]+: 60dd 8000 swl a2,0\(sp\)
- *[0-9a-f]+: 4680 break
- *[0-9a-f]+: 605d b020 sc v0,32\(sp\)
- *[0-9a-f]+: 607d b008 sc v1,8\(sp\)
- *[0-9a-f]+: 609d bff8 sc a0,-8\(sp\)
- *[0-9a-f]+: 60bd b000 sc a1,0\(sp\)
- *[0-9a-f]+: 60dd b020 sc a2,32\(sp\)
- *[0-9a-f]+: 0c00 nop
\.\.\.
diff -Nurp ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/micromips@24k-triple-stores-2-llsc.d binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/micromips@24k-triple-stores-2-llsc.d
--- ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/micromips@24k-triple-stores-2-llsc.d 1970-01-01 01:00:00.000000000 +0100
+++ binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/micromips@24k-triple-stores-2-llsc.d 2013-02-07 21:29:46.722812434 +0100
@@ -0,0 +1,16 @@
+#objdump: -dr
+#as: -mfix-24k -32
+#name: 24K: Triple Store (Range Check, sc)
+#source: 24k-triple-stores-2-llsc.s
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+
+[0-9a-f]+ <.*>:
+ *[0-9a-f]+: 605d b020 sc v0,32\(sp\)
+ *[0-9a-f]+: 607d b008 sc v1,8\(sp\)
+ *[0-9a-f]+: 609d bff8 sc a0,-8\(sp\)
+ *[0-9a-f]+: 60bd b000 sc a1,0\(sp\)
+ *[0-9a-f]+: 60dd b020 sc a2,32\(sp\)
+ \.\.\.
diff -Nurp ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/mips.exp binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/mips.exp
--- ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/mips.exp 2013-01-04 18:22:49.000000000 +0100
+++ binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/mips.exp 2013-02-07 21:30:25.714811892 +0100
@@ -91,6 +91,9 @@
# singlefloat
# The CPU is 64 bit, but only supports 32 bit FPU.
#
+# nollsc
+# The CPU doesn't support ll, sc, lld and scd instructions.
+#
# as_flags: The assembler flags used when assembling tests for this
# architecture.
#
@@ -463,7 +466,7 @@ mips_arch_create octeon2 64 octeonp {} \
{ }
mips_arch_create xlr 64 mips64 {} \
{ -march=xlr -mtune=xlr } { -mmips:xlr }
-mips_arch_create r5900 64 mips3 { gpr_ilocks singlefloat } \
+mips_arch_create r5900 64 mips3 { gpr_ilocks singlefloat nollsc } \
{ -march=r5900 -mtune=r5900 } { -mmips:5900 } \
{ mipsr5900el-*-* mips64r5900el-*-* }
@@ -566,6 +569,8 @@ if { [istarget mips*-*-vxworks*] } {
[mips_arch_list_matching fpisa5 !octeon]
run_dump_test_arches "24k-triple-stores-2" \
[mips_arch_list_matching mips2]
+ run_dump_test_arches "24k-triple-stores-2-llsc" \
+ [mips_arch_list_matching mips2 !nollsc]
run_dump_test_arches "24k-triple-stores-3" \
[mips_arch_list_matching mips2]
run_dump_test_arches "24k-triple-stores-4" \
@@ -625,9 +630,11 @@ if { [istarget mips*-*-vxworks*] } {
run_dump_test_arches "sd-forward" \
[mips_arch_list_matching mips1]
run_dump_test_arches "l_d" [mips_arch_list_matching mips1 !singlefloat]
+ run_dump_test_arches "l_d-single" [mips_arch_list_matching mips1 singlefloat]
run_dump_test_arches "l_d-forward" \
[mips_arch_list_matching mips1 !singlefloat]
run_dump_test_arches "s_d" [mips_arch_list_matching mips1 !singlefloat]
+ run_dump_test_arches "s_d-single" [mips_arch_list_matching mips1 singlefloat]
run_dump_test_arches "s_d-forward" \
[mips_arch_list_matching mips1 !singlefloat]
run_dump_test_arches "ldc1" [mips_arch_list_matching mips2 !singlefloat]
@@ -1157,4 +1164,5 @@ if { [istarget mips*-*-vxworks*] } {
run_dump_test "r5900"
run_dump_test "r5900-full"
+ run_list_test "r5900-nollsc" "-mabi=n32 -march=r5900 -mtune=r5900"
}
diff -Nurp ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/r5900-full.d binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/r5900-full.d
--- ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/r5900-full.d 2013-01-04 18:22:49.000000000 +0100
+++ binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/r5900-full.d 2013-02-07 21:29:46.722812434 +0100
@@ -346,4 +346,8 @@ Disassembly of section \.text:
[0-9a-f]+ <[^>]*> 701f0001 maddu \$0,\$31
[0-9a-f]+ <[^>]*> 73e00001 maddu \$31,\$0
[0-9a-f]+ <[^>]*> 0000000f sync
+[0-9a-f]+ <[^>]*> c0c50000 .*
+[0-9a-f]+ <[^>]*> e0c50000 .*
+[0-9a-f]+ <[^>]*> d0c50000 .*
+[0-9a-f]+ <[^>]*> f0c50000 .*
\.\.\.
diff -Nurp ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/r5900-full.s binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/r5900-full.s
--- ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/r5900-full.s 2013-01-04 18:22:49.000000000 +0100
+++ binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/r5900-full.s 2013-02-07 21:29:46.722812434 +0100
@@ -417,5 +417,19 @@ stuff:
maddu $31, $0
sync
+ # Enable sc/ll instructions by changing ISA level:
+ .set push
+ .set mips2
+ ll $5, 0($6)
+ sc $5, 0($6)
+ .set pop
+
+ # Enable scd/lld instructions by changing ISA level:
+ .set push
+ .set mips3
+ lld $5, 0($6)
+ scd $5, 0($6)
+ .set pop
+
.space 8
.end stuff
diff -Nurp ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/r5900-nollsc.l binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/r5900-nollsc.l
--- ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/r5900-nollsc.l 1970-01-01 01:00:00.000000000 +0100
+++ binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/r5900-nollsc.l 2013-02-07 21:29:46.722812434 +0100
@@ -0,0 +1,5 @@
+.*: Assembler messages:
+.*: Error: Opcode not supported on this processor: r5900 \(mips3\) `ll \$5,0\(\$6\)'
+.*: Error: Opcode not supported on this processor: r5900 \(mips3\) `sc \$5,0\(\$6\)'
+.*: Error: Opcode not supported on this processor: r5900 \(mips3\) `lld \$5,0\(\$6\)'
+.*: Error: Opcode not supported on this processor: r5900 \(mips3\) `scd \$5,0\(\$6\)'
diff -Nurp ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/r5900-nollsc.s binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/r5900-nollsc.s
--- ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/r5900-nollsc.s 1970-01-01 01:00:00.000000000 +0100
+++ binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/r5900-nollsc.s 2013-02-07 21:29:46.722812434 +0100
@@ -0,0 +1,18 @@
+ .text
+
+stuff:
+ .ent stuff
+ .set push
+ .set noreorder
+ .set noat
+
+ # sc/ll instructions are not supported on r5900:
+ ll $5, 0($6)
+ sc $5, 0($6)
+
+ # scd/lld instructions are not supported on r5900:
+ lld $5, 0($6)
+ scd $5, 0($6)
+
+ .space 8
+ .end stuff
diff -Nurp ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/s_d-single.d binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/s_d-single.d
--- ../binutils-cvs-20130202.orig/gas/testsuite/gas/mips/s_d-single.d 1970-01-01 01:00:00.000000000 +0100
+++ binutils-cvs-20130202-mips64el-linux-patched/gas/testsuite/gas/mips/s_d-single.d 2013-02-07 21:29:46.722812434 +0100
@@ -0,0 +1,566 @@
+#objdump: -dr --prefix-addresses
+#as: -32 --defsym ts_d=1
+#name: MIPS s.d singlefloat
+#source: ld.s
+
+# Test the s.d macro.
+
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(zero\)
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(zero\)
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(zero\)
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(zero\)
+[0-9a-f]+ <[^>]*> lui at,0x1
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(zero\)
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(zero\)
+[0-9a-f]+ <[^>]*> lui at,0x1
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+[0-9a-f]+ <[^>]*> lui at,0x2
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(a1\)
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(a1\)
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(a1\)
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(a1\)
+[0-9a-f]+ <[^>]*> lui at,0x1
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(a1\)
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(a1\)
+[0-9a-f]+ <[^>]*> lui at,0x1
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+[0-9a-f]+ <[^>]*> lui at,0x2
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(gp\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,gp
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,gp
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,gp
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,gp
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,gp
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,gp
+[0-9a-f]+ <[^>]*> swc1 \$f4,1\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f5,5\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_GPREL16|GPREL) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x0
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-32768\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f5,-32764\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x1
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,0\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f5,4\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.data
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.data
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_data_label
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_data_label
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) big_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) big_external_common
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) small_external_common
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) small_external_common
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.bss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.bss
+[0-9a-f]+ <[^>]*> lui at,0x2
+ [0-9a-f]+: (R_(MICRO)?MIPS_HI16|REFHI) \.sbss
+[0-9a-f]+ <[^>]*> addu at,a1,at
+[0-9a-f]+ <[^>]*> swc1 \$f4,-23131\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+[0-9a-f]+ <[^>]*> swc1 \$f5,-23127\(at\)
+ [0-9a-f]+: (R_(MICRO)?MIPS_LO16|REFLO) \.sbss
+ \.\.\.
diff -Nurp ../binutils-cvs-20130202.orig/opcodes/mips-opc.c binutils-cvs-20130202-mips64el-linux-patched/opcodes/mips-opc.c
--- ../binutils-cvs-20130202.orig/opcodes/mips-opc.c 2013-01-04 18:22:53.000000000 +0100
+++ binutils-cvs-20130202-mips64el-linux-patched/opcodes/mips-opc.c 2013-02-07 21:29:46.722812434 +0100
@@ -878,8 +878,8 @@ const struct mips_opcode mips_builtin_op
{"ldc1", "T,A(b)", 0, (int) M_LDC1_AB, INSN_MACRO, INSN2_M_FP_D, I2, SF },
{"ldc1", "E,A(b)", 0, (int) M_LDC1_AB, INSN_MACRO, INSN2_M_FP_D, I2, SF },
{"l.d", "T,o(b)", 0xd4000000, 0xfc000000, CLD|RD_b|WR_T|FP_D, 0, I2, SF }, /* ldc1 */
-{"l.d", "T,o(b)", 0, (int) M_L_DOB, INSN_MACRO, INSN2_M_FP_D, I1, SF },
-{"l.d", "T,A(b)", 0, (int) M_L_DAB, INSN_MACRO, INSN2_M_FP_D, I1, SF },
+{"l.d", "T,o(b)", 0, (int) M_L_DOB, INSN_MACRO, INSN2_M_FP_D, I1 },
+{"l.d", "T,A(b)", 0, (int) M_L_DAB, INSN_MACRO, INSN2_M_FP_D, I1 },
{"ldc2", "E,o(b)", 0xd8000000, 0xfc000000, CLD|RD_b|WR_CC, 0, I2, IOCT|IOCTP|IOCT2|EE },
{"ldc2", "E,A(b)", 0, (int) M_LDC2_AB, INSN_MACRO, 0, I2, IOCT|IOCTP|IOCT2|EE },
{"ldc3", "E,o(b)", 0xdc000000, 0xfc000000, CLD|RD_b|WR_CC, 0, I2, IOCT|IOCTP|IOCT2|EE },
@@ -898,10 +898,10 @@ const struct mips_opcode mips_builtin_op
{"li.d", "T,L", 0, (int) M_LI_DD, INSN_MACRO, INSN2_M_FP_D, I1, SF },
{"li.s", "t,f", 0, (int) M_LI_S, INSN_MACRO, INSN2_M_FP_S, I1 },
{"li.s", "T,l", 0, (int) M_LI_SS, INSN_MACRO, INSN2_M_FP_S, I1 },
-{"ll", "t,o(b)", 0xc0000000, 0xfc000000, LDD|RD_b|WR_t, 0, I2 },
-{"ll", "t,A(b)", 0, (int) M_LL_AB, INSN_MACRO, 0, I2 },
-{"lld", "t,o(b)", 0xd0000000, 0xfc000000, LDD|RD_b|WR_t, 0, I3 },
-{"lld", "t,A(b)", 0, (int) M_LLD_AB, INSN_MACRO, 0, I3 },
+{"ll", "t,o(b)", 0xc0000000, 0xfc000000, LDD|RD_b|WR_t, 0, I2, EE },
+{"ll", "t,A(b)", 0, (int) M_LL_AB, INSN_MACRO, 0, I2, EE },
+{"lld", "t,o(b)", 0xd0000000, 0xfc000000, LDD|RD_b|WR_t, 0, I3, EE },
+{"lld", "t,A(b)", 0, (int) M_LLD_AB, INSN_MACRO, 0, I3, EE },
{"lq", "t,o(b)", 0x78000000, 0xfc000000, WR_t|RD_b, 0, MMI },
{"lq", "t,A(b)", 0, (int) M_LQ_AB, INSN_MACRO, 0, MMI },
{"lui", "t,u", 0x3c000000, 0xffe00000, WR_t, 0, I1 },
@@ -1423,10 +1423,10 @@ const struct mips_opcode mips_builtin_op
{"saad", "t,(b)", 0x70000019, 0xfc00ffff, SM|RD_t|RD_b, 0, IOCTP },
{"sb", "t,o(b)", 0xa0000000, 0xfc000000, SM|RD_t|RD_b, 0, I1 },
{"sb", "t,A(b)", 0, (int) M_SB_AB, INSN_MACRO, 0, I1 },
-{"sc", "t,o(b)", 0xe0000000, 0xfc000000, SM|RD_t|WR_t|RD_b, 0, I2 },
-{"sc", "t,A(b)", 0, (int) M_SC_AB, INSN_MACRO, 0, I2 },
-{"scd", "t,o(b)", 0xf0000000, 0xfc000000, SM|RD_t|WR_t|RD_b, 0, I3 },
-{"scd", "t,A(b)", 0, (int) M_SCD_AB, INSN_MACRO, 0, I3 },
+{"sc", "t,o(b)", 0xe0000000, 0xfc000000, SM|RD_t|WR_t|RD_b, 0, I2, EE },
+{"sc", "t,A(b)", 0, (int) M_SC_AB, INSN_MACRO, 0, I2, EE },
+{"scd", "t,o(b)", 0xf0000000, 0xfc000000, SM|RD_t|WR_t|RD_b, 0, I3, EE },
+{"scd", "t,A(b)", 0, (int) M_SCD_AB, INSN_MACRO, 0, I3, EE },
/* The macro has to be first to handle o32 correctly. */
{"sd", "t,o(b)", 0, (int) M_SD_OB, INSN_MACRO, 0, I1 },
{"sd", "t,o(b)", 0xfc000000, 0xfc000000, SM|RD_t|RD_b, 0, I3 },
@@ -1445,8 +1445,8 @@ const struct mips_opcode mips_builtin_op
{"sdc3", "E,o(b)", 0xfc000000, 0xfc000000, SM|RD_C3|RD_b, 0, I2, IOCT|IOCTP|IOCT2|EE },
{"sdc3", "E,A(b)", 0, (int) M_SDC3_AB, INSN_MACRO, 0, I2, IOCT|IOCTP|IOCT2|EE },
{"s.d", "T,o(b)", 0xf4000000, 0xfc000000, SM|RD_T|RD_b|FP_D, 0, I2, SF },
-{"s.d", "T,o(b)", 0, (int) M_S_DOB, INSN_MACRO, INSN2_M_FP_D, I1, SF },
-{"s.d", "T,A(b)", 0, (int) M_S_DAB, INSN_MACRO, INSN2_M_FP_D, I1, SF },
+{"s.d", "T,o(b)", 0, (int) M_S_DOB, INSN_MACRO, INSN2_M_FP_D, I1 },
+{"s.d", "T,A(b)", 0, (int) M_S_DAB, INSN_MACRO, INSN2_M_FP_D, I1 },
{"sdl", "t,o(b)", 0xb0000000, 0xfc000000, SM|RD_t|RD_b, 0, I3 },
{"sdl", "t,A(b)", 0, (int) M_SDL_AB, INSN_MACRO, 0, I3 },
{"sdr", "t,o(b)", 0xb4000000, 0xfc000000, SM|RD_t|RD_b, 0, I3 },
@@ -1647,7 +1647,7 @@ const struct mips_opcode mips_builtin_op
{"trunc.w.s", "D,S", 0x46000024, 0xffff003f, WR_D|RD_S|FP_S, 0, EE },
{"trunc.w.s", "D,S", 0x4600000d, 0xffff003f, WR_D|RD_S|FP_S, 0, I2, EE },
{"trunc.w.s", "D,S,x", 0x4600000d, 0xffff003f, WR_D|RD_S|FP_S, 0, I2, EE },
-{"trunc.w.s", "D,S,t", 0, (int) M_TRUNCWS, INSN_MACRO, INSN2_M_FP_S, I1 },
+{"trunc.w.s", "D,S,t", 0, (int) M_TRUNCWS, INSN_MACRO, INSN2_M_FP_S, I1, EE },
{"uld", "t,o(b)", 0, (int) M_ULD, INSN_MACRO, 0, I3 },
{"uld", "t,A(b)", 0, (int) M_ULD_A, INSN_MACRO, 0, I3 },
{"ulh", "t,o(b)", 0, (int) M_ULH, INSN_MACRO, 0, I1 },