aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Sandiford <rdsandiford@googlemail.com>2013-07-07 11:32:32 +0000
committerRichard Sandiford <rdsandiford@googlemail.com>2013-07-07 11:32:32 +0000
commitf2ae14a1cc3f5349d6c99417c1cbe2ca3b0fabe5 (patch)
treec59b2486103f55a7f04726252e2ac9f11aab53c5
parentd070d2a2539dd2bca2710172969e73ae2c5f43af (diff)
downloadgdb-f2ae14a1cc3f5349d6c99417c1cbe2ca3b0fabe5.zip
gdb-f2ae14a1cc3f5349d6c99417c1cbe2ca3b0fabe5.tar.gz
gdb-f2ae14a1cc3f5349d6c99417c1cbe2ca3b0fabe5.tar.bz2
include/opcode/
* mips.h (M_ACLR_OB, M_ASET_OB, M_CACHE_OB, M_CACHEE_OB, M_L_DOB) (M_LB_A, M_LBE_OB, M_LBU_A, M_LBUE_OB, M_LD_A, M_LD_OB, M_LDC2_OB) (M_LDL_OB, M_LDM_OB, M_LDP_OB, M_LDR_OB, M_LH_A, M_LHE_OB, M_LHU_A) (M_LHUE_OB, M_LL_OB, M_LLD_OB, M_LLE_OB, M_LS_A, M_LW_A, M_LWE_OB) (M_LWC0_A, M_LWC1_A, M_LWC2_A, M_LWC2_OB, M_LWC3_A, M_LWL_A, M_LWL_OB) (M_LWLE_OB, M_LWM_OB, M_LWP_OB, M_LWR_A, M_LWR_OB, M_LWRE_OB, M_LWU_OB) (M_PREF_OB, M_PREFE_OB, M_S_DOB, M_SAA_OB, M_SAAD_OB, M_SC_OB) (M_SCD_OB, M_SCE_OB, M_SD_A, M_SD_OB, M_SDC2_OB, M_SDL_OB, M_SDM_OB) (M_SDP_OB, M_SDR_OB, M_SB_A, M_SBE_OB, M_SH_A, M_SHE_OB, M_SW_A) (M_SWE_OB, M_SWC0_A, M_SWC1_A, M_SWC2_A, M_SWC2_OB, M_SWC3_A, M_SWL_A) (M_SWL_OB, M_SWLE_OB, M_SWM_OB, M_SWP_OB, M_SWR_A, M_SWR_OB, M_SWRE_OB) (M_ULD, M_ULH, M_ULHU, M_ULW, M_USH, M_USW, M_USD): Delete. (M_ULD_A, M_ULH_A, M_ULHU_A, M_ULW_A, M_USH_A, M_USW_A, M_USD_A): Rename to... (M_ULD_AB, M_ULH_AB, M_ULHU_AB, M_ULW_AB, M_USH_AB, M_USW_AB) (M_USD_AB): ...these. opcodes/ * mips-opc.c (mips_builtin_opcodes): Remove o(b) macros. Move LD and SD A(B) macros up. * micromips-opc.c (micromips_opcodes): Likewise. gas/ * config/tc-mips.c (gprel16_reloc_p): New function. (macro_read_relocs): Assume BFD_RELOC_LO16 if all relocs are BFD_RELOC_UNUSED. (offset_high_part, small_offset_p): New functions. (nacro): Use them. Remove *_OB and *_DOB cases. For single- register load and store macros, handle the 16-bit offset case first. If a 16-bit offset is not suitable for the instruction we're generating, load it into the temporary register using ADDRESS_ADDI_INSN. Make the M_LI_DD code fall through into the M_L_DAB code once the address has been constructed. For double load and store macros, again handle the 16-bit offset case first. If the second register cannot be accessed from the same high part as the first, load it into AT using ADDRESS_ADDI_INSN. Fix the handling of LD in cases where the first register is the same as the base. Also handle the case where the offset is not 16 bits and the second register cannot be accessed from the same high part as the first. For unaligned loads and stores, fuse the offbits == 12 and old "ab" handling. Apply this handling whenever the second offset needs a different high part from the first. Construct the offset using ADDRESS_ADDI_INSN where possible, for offbits == 16 as well as offbits == 12. Use offset_reloc when constructing the individual loads and stores. (mips_ip): Set up imm_expr, imm2_expr, offset_expr, imm_reloc and offset_reloc before matching against a particular opcode. Handle elided 'A' constants. Allow 'A' constants to use relocation operators. gas/testsuite/ * gas/mips/ldstla-32.d: Avoid "lui at,0x0" sequences for truncated constants. * gas/mips/ldstla-32-shared.d: Likewise. * gas/mips/mcu.d: Use ADDIU in preference to LI+ADDU when adding 16-bit constants to the base. * gas/mips/micromips@mcu.d: Likewise. * gas/mips/micromips@cache.d: Likewise. * gas/mips/micromips@pref.d: Likewise. * gas/mips/micromips.d, gas/mips/micromips-insn32.d, gas/mips/micromips-noinsn32.d, gas/mips/micromips-trap.d: Likewise. Allow the full 16-bit offset range to be used for SB, LB and LBU in USH and ULH sequences. Fix the expected output for LD and SD when the two LW and SW offsets need different high parts. * gas/mips/eva.s: Test PREFE with relocation operators. * gas/mips/eva.d: Use ADDIU in preference to LI+ADDU for 16-bit constants. Update after eva.s change. * gas/mips/micromips@eva.d: Likewise. * gas/mips/ld-reloc.s, gas/mips/ld-reloc.d, gas/mips/l_d-reloc.s, gas/mips/l_d-reloc.d, gas/mips/ulw-reloc.s, gas/mips/ulw-reloc.d, gas/mips/micromips@ulw-reloc.d, gas/mips/ulh-reloc.s, gas/mips/ulh-reloc.d: New tests. * gas/mips/mips.exp: Run them.
-rw-r--r--gas/ChangeLog29
-rw-r--r--gas/config/tc-mips.c562
-rw-r--r--gas/testsuite/ChangeLog25
-rw-r--r--gas/testsuite/gas/mips/eva.d1236
-rw-r--r--gas/testsuite/gas/mips/eva.s1
-rw-r--r--gas/testsuite/gas/mips/l_d-reloc.d86
-rw-r--r--gas/testsuite/gas/mips/l_d-reloc.s26
-rw-r--r--gas/testsuite/gas/mips/ld-reloc.d114
-rw-r--r--gas/testsuite/gas/mips/ld-reloc.s36
-rw-r--r--gas/testsuite/gas/mips/ldstla-32-shared.d44
-rw-r--r--gas/testsuite/gas/mips/ldstla-32.d44
-rw-r--r--gas/testsuite/gas/mips/mcu.d52
-rw-r--r--gas/testsuite/gas/mips/micromips-insn32.d769
-rw-r--r--gas/testsuite/gas/mips/micromips-noinsn32.d769
-rw-r--r--gas/testsuite/gas/mips/micromips-trap.d769
-rw-r--r--gas/testsuite/gas/mips/micromips.d769
-rw-r--r--gas/testsuite/gas/mips/micromips@cache.d18
-rw-r--r--gas/testsuite/gas/mips/micromips@eva.d1236
-rw-r--r--gas/testsuite/gas/mips/micromips@mcu.d52
-rw-r--r--gas/testsuite/gas/mips/micromips@pref.d18
-rw-r--r--gas/testsuite/gas/mips/micromips@ulw-reloc.d144
-rw-r--r--gas/testsuite/gas/mips/mips.exp12
-rw-r--r--gas/testsuite/gas/mips/ulh-reloc.d160
-rw-r--r--gas/testsuite/gas/mips/ulh-reloc.s33
-rw-r--r--gas/testsuite/gas/mips/ulw-reloc.d143
-rw-r--r--gas/testsuite/gas/mips/ulw-reloc.s44
-rw-r--r--include/opcode/ChangeLog19
-rw-r--r--include/opcode/mips.h99
-rw-r--r--opcodes/ChangeLog6
-rw-r--r--opcodes/micromips-opc.c76
-rw-r--r--opcodes/mips-opc.c49
31 files changed, 3520 insertions, 3920 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 7e100eb..48b382e 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,34 @@
2013-07-07 Richard Sandiford <rdsandiford@googlemail.com>
+ * config/tc-mips.c (gprel16_reloc_p): New function.
+ (macro_read_relocs): Assume BFD_RELOC_LO16 if all relocs are
+ BFD_RELOC_UNUSED.
+ (offset_high_part, small_offset_p): New functions.
+ (nacro): Use them. Remove *_OB and *_DOB cases. For single-
+ register load and store macros, handle the 16-bit offset case first.
+ If a 16-bit offset is not suitable for the instruction we're
+ generating, load it into the temporary register using
+ ADDRESS_ADDI_INSN. Make the M_LI_DD code fall through into the
+ M_L_DAB code once the address has been constructed. For double load
+ and store macros, again handle the 16-bit offset case first.
+ If the second register cannot be accessed from the same high
+ part as the first, load it into AT using ADDRESS_ADDI_INSN.
+ Fix the handling of LD in cases where the first register is the
+ same as the base. Also handle the case where the offset is
+ not 16 bits and the second register cannot be accessed from the
+ same high part as the first. For unaligned loads and stores,
+ fuse the offbits == 12 and old "ab" handling. Apply this handling
+ whenever the second offset needs a different high part from the first.
+ Construct the offset using ADDRESS_ADDI_INSN where possible,
+ for offbits == 16 as well as offbits == 12. Use offset_reloc
+ when constructing the individual loads and stores.
+ (mips_ip): Set up imm_expr, imm2_expr, offset_expr, imm_reloc
+ and offset_reloc before matching against a particular opcode.
+ Handle elided 'A' constants. Allow 'A' constants to use
+ relocation operators.
+
+2013-07-07 Richard Sandiford <rdsandiford@googlemail.com>
+
* config/tc-mips.c (validate_mips_insn): Remove "[" and "]" handling.
(mips_ip): Likewise. Do not set is_mdmx for INSN_5400 instructions.
Check constraints on the VR5400 RZU.OB, SLL.OB and SRL.OB instructions.
diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c
index 8fdb124..5c6424e 100644
--- a/gas/config/tc-mips.c
+++ b/gas/config/tc-mips.c
@@ -3096,6 +3096,13 @@ jalr_reloc_p (bfd_reloc_code_real_type reloc)
return reloc == BFD_RELOC_MIPS_JALR || reloc == BFD_RELOC_MICROMIPS_JALR;
}
+static inline bfd_boolean
+gprel16_reloc_p (bfd_reloc_code_real_type reloc)
+{
+ return (reloc == BFD_RELOC_GPREL16 || reloc == BFD_RELOC_MIPS16_GPREL
+ || reloc == BFD_RELOC_MICROMIPS_GPREL16);
+}
+
/* Return true if RELOC is a PC-relative relocation that does not have
full address range. */
@@ -5265,8 +5272,15 @@ macro_read_relocs (va_list *args, bfd_reloc_code_real_type *r)
if (next >= 0)
r[0] = (bfd_reloc_code_real_type) next;
else
- for (i = 0; i < 3; i++)
- r[i] = (bfd_reloc_code_real_type) va_arg (*args, int);
+ {
+ for (i = 0; i < 3; i++)
+ r[i] = (bfd_reloc_code_real_type) va_arg (*args, int);
+ /* This function is only used for 16-bit relocation fields.
+ To make the macro code simpler, treat an unrelocated value
+ in the same way as BFD_RELOC_LO16. */
+ if (r[0] == BFD_RELOC_UNUSED)
+ r[0] = BFD_RELOC_LO16;
+ }
}
/* Build an instruction created by a macro expansion. This is passed
@@ -6734,6 +6748,48 @@ macro_build_branch_rsrt (int type, expressionS *ep,
macro_build (ep, br, "s,t,p", sreg, treg);
}
+/* Return the high part that should be loaded in order to make the low
+ part of VALUE accessible using an offset of OFFBITS bits. */
+
+static offsetT
+offset_high_part (offsetT value, unsigned int offbits)
+{
+ offsetT bias;
+ addressT low_mask;
+
+ if (offbits == 0)
+ return value;
+ bias = 1 << (offbits - 1);
+ low_mask = bias * 2 - 1;
+ return (value + bias) & ~low_mask;
+}
+
+/* Return true if the value stored in offset_expr and offset_reloc
+ fits into a signed offset of OFFBITS bits. RANGE is the maximum
+ amount that the caller wants to add without inducing overflow
+ and ALIGN is the known alignment of the value in bytes. */
+
+static bfd_boolean
+small_offset_p (unsigned int range, unsigned int align, unsigned int offbits)
+{
+ if (offbits == 16)
+ {
+ /* Accept any relocation operator if overflow isn't a concern. */
+ if (range < align && *offset_reloc != BFD_RELOC_UNUSED)
+ return TRUE;
+
+ /* These relocations are guaranteed not to overflow in correct links. */
+ if (*offset_reloc == BFD_RELOC_MIPS_LITERAL
+ || gprel16_reloc_p (*offset_reloc))
+ return TRUE;
+ }
+ if (offset_expr.X_op == O_constant
+ && offset_high_part (offset_expr.X_add_number, offbits) == 0
+ && offset_high_part (offset_expr.X_add_number + range, offbits) == 0)
+ return TRUE;
+ return FALSE;
+}
+
/*
* Build macros
* This routine implements the seemingly endless macro or synthesized
@@ -6774,10 +6830,10 @@ macro (struct mips_cl_insn *ip, char *str)
int imm = 0;
int ust = 0;
int lp = 0;
- int ab = 0;
+ bfd_boolean large_offset;
int off;
- bfd_reloc_code_real_type r;
int hold_mips_optimize;
+ unsigned int align;
gas_assert (! mips_opts.mips16);
@@ -6795,6 +6851,7 @@ macro (struct mips_cl_insn *ip, char *str)
expr1.X_op_symbol = NULL;
expr1.X_add_symbol = NULL;
expr1.X_add_number = 1;
+ align = 1;
switch (mask)
{
@@ -7540,12 +7597,10 @@ macro (struct mips_cl_insn *ip, char *str)
if (!dbl && HAVE_64BIT_OBJECTS)
as_warn (_("la used to load 64-bit address"));
- if (offset_expr.X_op == O_constant
- && offset_expr.X_add_number >= -0x8000
- && offset_expr.X_add_number < 0x8000)
+ if (small_offset_p (0, align, 16))
{
- macro_build (&offset_expr, ADDRESS_ADDI_INSN,
- "t,r,j", treg, sreg, BFD_RELOC_LO16);
+ macro_build (&offset_expr, ADDRESS_ADDI_INSN, "t,r,j", treg, breg,
+ -1, offset_reloc[0], offset_reloc[1], offset_reloc[2]);
break;
}
@@ -8397,146 +8452,108 @@ macro (struct mips_cl_insn *ip, char *str)
break;
case M_LBUE_AB:
- ab = 1;
- case M_LBUE_OB:
s = "lbue";
fmt = "t,+j(b)";
offbits = 9;
goto ld_st;
case M_LHUE_AB:
- ab = 1;
- case M_LHUE_OB:
s = "lhue";
fmt = "t,+j(b)";
offbits = 9;
goto ld_st;
case M_LBE_AB:
- ab = 1;
- case M_LBE_OB:
s = "lbe";
fmt = "t,+j(b)";
offbits = 9;
goto ld_st;
case M_LHE_AB:
- ab = 1;
- case M_LHE_OB:
s = "lhe";
fmt = "t,+j(b)";
offbits = 9;
goto ld_st;
case M_LLE_AB:
- ab = 1;
- case M_LLE_OB:
s = "lle";
fmt = "t,+j(b)";
offbits = 9;
goto ld_st;
case M_LWE_AB:
- ab = 1;
- case M_LWE_OB:
s = "lwe";
fmt = "t,+j(b)";
offbits = 9;
goto ld_st;
case M_LWLE_AB:
- ab = 1;
- case M_LWLE_OB:
s = "lwle";
fmt = "t,+j(b)";
offbits = 9;
goto ld_st;
case M_LWRE_AB:
- ab = 1;
- case M_LWRE_OB:
s = "lwre";
fmt = "t,+j(b)";
offbits = 9;
goto ld_st;
case M_SBE_AB:
- ab = 1;
- case M_SBE_OB:
s = "sbe";
fmt = "t,+j(b)";
offbits = 9;
goto ld_st;
case M_SCE_AB:
- ab = 1;
- case M_SCE_OB:
s = "sce";
fmt = "t,+j(b)";
offbits = 9;
goto ld_st;
case M_SHE_AB:
- ab = 1;
- case M_SHE_OB:
s = "she";
fmt = "t,+j(b)";
offbits = 9;
goto ld_st;
case M_SWE_AB:
- ab = 1;
- case M_SWE_OB:
s = "swe";
fmt = "t,+j(b)";
offbits = 9;
goto ld_st;
case M_SWLE_AB:
- ab = 1;
- case M_SWLE_OB:
s = "swle";
fmt = "t,+j(b)";
offbits = 9;
goto ld_st;
case M_SWRE_AB:
- ab = 1;
- case M_SWRE_OB:
s = "swre";
fmt = "t,+j(b)";
offbits = 9;
goto ld_st;
case M_ACLR_AB:
- ab = 1;
- case M_ACLR_OB:
s = "aclr";
treg = EXTRACT_OPERAND (mips_opts.micromips, 3BITPOS, *ip);
fmt = "\\,~(b)";
offbits = 12;
goto ld_st;
case M_ASET_AB:
- ab = 1;
- case M_ASET_OB:
s = "aset";
treg = EXTRACT_OPERAND (mips_opts.micromips, 3BITPOS, *ip);
fmt = "\\,~(b)";
offbits = 12;
goto ld_st;
case M_LB_AB:
- ab = 1;
s = "lb";
fmt = "t,o(b)";
goto ld;
case M_LBU_AB:
- ab = 1;
s = "lbu";
fmt = "t,o(b)";
goto ld;
case M_LH_AB:
- ab = 1;
s = "lh";
fmt = "t,o(b)";
goto ld;
case M_LHU_AB:
- ab = 1;
s = "lhu";
fmt = "t,o(b)";
goto ld;
case M_LW_AB:
- ab = 1;
s = "lw";
fmt = "t,o(b)";
goto ld;
case M_LWC0_AB:
- ab = 1;
gas_assert (!mips_opts.micromips);
s = "lwc0";
fmt = "E,o(b)";
@@ -8544,15 +8561,12 @@ macro (struct mips_cl_insn *ip, char *str)
coproc = 1;
goto ld_st;
case M_LWC1_AB:
- ab = 1;
s = "lwc1";
fmt = "T,o(b)";
/* Itbl support may require additional care here. */
coproc = 1;
goto ld_st;
case M_LWC2_AB:
- ab = 1;
- case M_LWC2_OB:
s = "lwc2";
fmt = COP12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
@@ -8560,7 +8574,6 @@ macro (struct mips_cl_insn *ip, char *str)
coproc = 1;
goto ld_st;
case M_LWC3_AB:
- ab = 1;
gas_assert (!mips_opts.micromips);
s = "lwc3";
fmt = "E,o(b)";
@@ -8568,29 +8581,22 @@ macro (struct mips_cl_insn *ip, char *str)
coproc = 1;
goto ld_st;
case M_LWL_AB:
- ab = 1;
- case M_LWL_OB:
s = "lwl";
fmt = MEM12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
goto ld_st;
case M_LWR_AB:
- ab = 1;
- case M_LWR_OB:
s = "lwr";
fmt = MEM12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
goto ld_st;
case M_LDC1_AB:
- ab = 1;
s = "ldc1";
fmt = "T,o(b)";
/* Itbl support may require additional care here. */
coproc = 1;
goto ld_st;
case M_LDC2_AB:
- ab = 1;
- case M_LDC2_OB:
s = "ldc2";
fmt = COP12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
@@ -8598,57 +8604,43 @@ macro (struct mips_cl_insn *ip, char *str)
coproc = 1;
goto ld_st;
case M_LQC2_AB:
- ab = 1;
s = "lqc2";
fmt = "E,o(b)";
/* Itbl support may require additional care here. */
coproc = 1;
goto ld_st;
case M_LDC3_AB:
- ab = 1;
s = "ldc3";
fmt = "E,o(b)";
/* Itbl support may require additional care here. */
coproc = 1;
goto ld_st;
case M_LDL_AB:
- ab = 1;
- case M_LDL_OB:
s = "ldl";
fmt = MEM12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
goto ld_st;
case M_LDR_AB:
- ab = 1;
- case M_LDR_OB:
s = "ldr";
fmt = MEM12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
goto ld_st;
case M_LL_AB:
- ab = 1;
- case M_LL_OB:
s = "ll";
fmt = MEM12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
goto ld;
case M_LLD_AB:
- ab = 1;
- case M_LLD_OB:
s = "lld";
fmt = MEM12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
goto ld;
case M_LWU_AB:
- ab = 1;
- case M_LWU_OB:
s = "lwu";
fmt = MEM12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
goto ld;
case M_LWP_AB:
- ab = 1;
- case M_LWP_OB:
gas_assert (mips_opts.micromips);
s = "lwp";
fmt = "t,~(b)";
@@ -8656,8 +8648,6 @@ macro (struct mips_cl_insn *ip, char *str)
lp = 1;
goto ld;
case M_LDP_AB:
- ab = 1;
- case M_LDP_OB:
gas_assert (mips_opts.micromips);
s = "ldp";
fmt = "t,~(b)";
@@ -8665,16 +8655,12 @@ macro (struct mips_cl_insn *ip, char *str)
lp = 1;
goto ld;
case M_LWM_AB:
- ab = 1;
- case M_LWM_OB:
gas_assert (mips_opts.micromips);
s = "lwm";
fmt = "n,~(b)";
offbits = 12;
goto ld_st;
case M_LDM_AB:
- ab = 1;
- case M_LDM_OB:
gas_assert (mips_opts.micromips);
s = "ldm";
fmt = "n,~(b)";
@@ -8690,22 +8676,18 @@ macro (struct mips_cl_insn *ip, char *str)
goto ld_noat;
case M_SB_AB:
- ab = 1;
s = "sb";
fmt = "t,o(b)";
goto ld_st;
case M_SH_AB:
- ab = 1;
s = "sh";
fmt = "t,o(b)";
goto ld_st;
case M_SW_AB:
- ab = 1;
s = "sw";
fmt = "t,o(b)";
goto ld_st;
case M_SWC0_AB:
- ab = 1;
gas_assert (!mips_opts.micromips);
s = "swc0";
fmt = "E,o(b)";
@@ -8713,15 +8695,12 @@ macro (struct mips_cl_insn *ip, char *str)
coproc = 1;
goto ld_st;
case M_SWC1_AB:
- ab = 1;
s = "swc1";
fmt = "T,o(b)";
/* Itbl support may require additional care here. */
coproc = 1;
goto ld_st;
case M_SWC2_AB:
- ab = 1;
- case M_SWC2_OB:
s = "swc2";
fmt = COP12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
@@ -8729,7 +8708,6 @@ macro (struct mips_cl_insn *ip, char *str)
coproc = 1;
goto ld_st;
case M_SWC3_AB:
- ab = 1;
gas_assert (!mips_opts.micromips);
s = "swc3";
fmt = "E,o(b)";
@@ -8737,71 +8715,52 @@ macro (struct mips_cl_insn *ip, char *str)
coproc = 1;
goto ld_st;
case M_SWL_AB:
- ab = 1;
- case M_SWL_OB:
s = "swl";
fmt = MEM12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
goto ld_st;
case M_SWR_AB:
- ab = 1;
- case M_SWR_OB:
s = "swr";
fmt = MEM12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
goto ld_st;
case M_SC_AB:
- ab = 1;
- case M_SC_OB:
s = "sc";
fmt = MEM12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
goto ld_st;
case M_SCD_AB:
- ab = 1;
- case M_SCD_OB:
s = "scd";
fmt = MEM12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
goto ld_st;
case M_CACHE_AB:
- ab = 1;
- case M_CACHE_OB:
s = "cache";
fmt = mips_opts.micromips ? "k,~(b)" : "k,o(b)";
offbits = (mips_opts.micromips ? 12 : 16);
goto ld_st;
case M_CACHEE_AB:
- ab = 1;
- case M_CACHEE_OB:
s = "cachee";
fmt = "k,+j(b)";
offbits = 9;
goto ld_st;
case M_PREF_AB:
- ab = 1;
- case M_PREF_OB:
s = "pref";
fmt = !mips_opts.micromips ? "k,o(b)" : "k,~(b)";
offbits = (mips_opts.micromips ? 12 : 16);
goto ld_st;
case M_PREFE_AB:
- ab = 1;
- case M_PREFE_OB:
s = "prefe";
fmt = "k,+j(b)";
offbits = 9;
goto ld_st;
case M_SDC1_AB:
- ab = 1;
s = "sdc1";
fmt = "T,o(b)";
coproc = 1;
/* Itbl support may require additional care here. */
goto ld_st;
case M_SDC2_AB:
- ab = 1;
- case M_SDC2_OB:
s = "sdc2";
fmt = COP12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
@@ -8809,14 +8768,12 @@ macro (struct mips_cl_insn *ip, char *str)
coproc = 1;
goto ld_st;
case M_SQC2_AB:
- ab = 1;
s = "sqc2";
fmt = "E,o(b)";
/* Itbl support may require additional care here. */
coproc = 1;
goto ld_st;
case M_SDC3_AB:
- ab = 1;
gas_assert (!mips_opts.micromips);
s = "sdc3";
fmt = "E,o(b)";
@@ -8824,46 +8781,34 @@ macro (struct mips_cl_insn *ip, char *str)
coproc = 1;
goto ld_st;
case M_SDL_AB:
- ab = 1;
- case M_SDL_OB:
s = "sdl";
fmt = MEM12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
goto ld_st;
case M_SDR_AB:
- ab = 1;
- case M_SDR_OB:
s = "sdr";
fmt = MEM12_FMT;
offbits = (mips_opts.micromips ? 12 : 16);
goto ld_st;
case M_SWP_AB:
- ab = 1;
- case M_SWP_OB:
gas_assert (mips_opts.micromips);
s = "swp";
fmt = "t,~(b)";
offbits = 12;
goto ld_st;
case M_SDP_AB:
- ab = 1;
- case M_SDP_OB:
gas_assert (mips_opts.micromips);
s = "sdp";
fmt = "t,~(b)";
offbits = 12;
goto ld_st;
case M_SWM_AB:
- ab = 1;
- case M_SWM_OB:
gas_assert (mips_opts.micromips);
s = "swm";
fmt = "n,~(b)";
offbits = 12;
goto ld_st;
case M_SDM_AB:
- ab = 1;
- case M_SDM_OB:
gas_assert (mips_opts.micromips);
s = "sdm";
fmt = "n,~(b)";
@@ -8871,8 +8816,41 @@ macro (struct mips_cl_insn *ip, char *str)
ld_st:
tempreg = AT;
- used_at = 1;
ld_noat:
+ if (small_offset_p (0, align, 16))
+ {
+ /* The first case exists for M_LD_AB and M_SD_AB, which are
+ macros for o32 but which should act like normal instructions
+ otherwise. */
+ if (offbits == 16)
+ macro_build (&offset_expr, s, fmt, treg, -1, offset_reloc[0],
+ offset_reloc[1], offset_reloc[2], breg);
+ else if (small_offset_p (0, align, offbits))
+ {
+ if (offbits == 0)
+ macro_build (NULL, s, fmt, treg, breg);
+ else
+ macro_build (NULL, s, fmt, treg,
+ (unsigned long) offset_expr.X_add_number, breg);
+ }
+ else
+ {
+ if (tempreg == AT)
+ used_at = 1;
+ macro_build (&offset_expr, ADDRESS_ADDI_INSN, "t,r,j",
+ tempreg, breg, -1, offset_reloc[0],
+ offset_reloc[1], offset_reloc[2]);
+ if (offbits == 0)
+ macro_build (NULL, s, fmt, treg, tempreg);
+ else
+ macro_build (NULL, s, fmt, treg, 0L, tempreg);
+ }
+ break;
+ }
+
+ if (tempreg == AT)
+ used_at = 1;
+
if (offset_expr.X_op != O_constant
&& offset_expr.X_op != O_symbol)
{
@@ -8893,79 +8871,40 @@ macro (struct mips_cl_insn *ip, char *str)
is in non PIC code. */
if (offset_expr.X_op == O_constant)
{
- int hipart = 0;
+ expr1.X_add_number = offset_high_part (offset_expr.X_add_number,
+ offbits == 0 ? 16 : offbits);
+ offset_expr.X_add_number -= expr1.X_add_number;
- expr1.X_add_number = offset_expr.X_add_number;
- normalize_address_expr (&expr1);
- if ((offbits == 0 || offbits == 16)
- && !IS_SEXT_16BIT_NUM (expr1.X_add_number))
- {
- expr1.X_add_number = ((expr1.X_add_number + 0x8000)
- & ~(bfd_vma) 0xffff);
- hipart = 1;
- }
- else if (offbits == 12 && !IS_SEXT_12BIT_NUM (expr1.X_add_number))
- {
- expr1.X_add_number = ((expr1.X_add_number + 0x800)
- & ~(bfd_vma) 0xfff);
- hipart = 1;
- }
- else if (offbits == 9 && !IS_SEXT_9BIT_NUM (expr1.X_add_number))
- {
- expr1.X_add_number = ((expr1.X_add_number + 0x100)
- & ~(bfd_vma) 0x1ff);
- hipart = 1;
- }
- if (hipart)
- {
- load_register (tempreg, &expr1, HAVE_64BIT_ADDRESSES);
- if (breg != 0)
- macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t",
- tempreg, tempreg, breg);
- breg = tempreg;
- }
+ load_register (tempreg, &expr1, HAVE_64BIT_ADDRESSES);
+ if (breg != 0)
+ macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t",
+ tempreg, tempreg, breg);
if (offbits == 0)
{
- if (offset_expr.X_add_number == 0)
- tempreg = breg;
- else
+ if (offset_expr.X_add_number != 0)
macro_build (&offset_expr, ADDRESS_ADDI_INSN,
- "t,r,j", tempreg, breg, BFD_RELOC_LO16);
+ "t,r,j", tempreg, tempreg, BFD_RELOC_LO16);
macro_build (NULL, s, fmt, treg, tempreg);
}
else if (offbits == 16)
- macro_build (&offset_expr, s, fmt, treg, BFD_RELOC_LO16, breg);
+ macro_build (&offset_expr, s, fmt, treg, BFD_RELOC_LO16, tempreg);
else
- macro_build (NULL, s, fmt,
- treg, (unsigned long) offset_expr.X_add_number, breg);
+ macro_build (NULL, s, fmt, treg,
+ (unsigned long) offset_expr.X_add_number, tempreg);
}
else if (offbits != 16)
{
/* The offset field is too narrow to be used for a low-part
relocation, so load the whole address into the auxillary
- register. In the case of "A(b)" addresses, we first load
- absolute address "A" into the register and then add base
- register "b". In the case of "o(b)" addresses, we simply
- need to add 16-bit offset "o" to base register "b", and
- offset_reloc already contains the relocations associated
- with "o". */
- if (ab)
- {
- load_address (tempreg, &offset_expr, &used_at);
- if (breg != 0)
- macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t",
- tempreg, tempreg, breg);
- }
- else
- macro_build (&offset_expr, ADDRESS_ADDI_INSN, "t,r,j",
- tempreg, breg, -1,
- offset_reloc[0], offset_reloc[1], offset_reloc[2]);
- expr1.X_add_number = 0;
+ register. */
+ load_address (tempreg, &offset_expr, &used_at);
+ if (breg != 0)
+ macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t",
+ tempreg, tempreg, breg);
if (offbits == 0)
macro_build (NULL, s, fmt, treg, tempreg);
else
- macro_build (NULL, s, fmt,
- treg, (unsigned long) expr1.X_add_number, tempreg);
+ macro_build (NULL, s, fmt, treg, 0L, tempreg);
}
else if (mips_pic == NO_PIC)
{
@@ -9423,16 +9362,11 @@ macro (struct mips_cl_insn *ip, char *str)
&& offset_expr.X_add_number == 0);
s = segment_name (S_GET_SEGMENT (offset_expr.X_add_symbol));
if (strcmp (s, ".lit8") == 0)
- {
- 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);
- break;
- }
- breg = mips_gp_register;
- r = BFD_RELOC_MIPS_LITERAL;
- goto dob;
+ {
+ breg = mips_gp_register;
+ offset_reloc[0] = BFD_RELOC_MIPS_LITERAL;
+ offset_reloc[1] = BFD_RELOC_UNUSED;
+ offset_reloc[2] = BFD_RELOC_UNUSED;
}
else
{
@@ -9447,47 +9381,15 @@ macro (struct mips_cl_insn *ip, char *str)
macro_build_lui (&offset_expr, AT);
}
- if (CPU_HAS_LDC1_SDC1 (mips_opts.arch) || mips_opts.micromips)
- {
- macro_build (&offset_expr, "ldc1", "T,o(b)",
- treg, BFD_RELOC_LO16, AT);
- break;
- }
breg = AT;
- r = BFD_RELOC_LO16;
- goto dob;
- }
-
- case M_L_DOB:
- /* Even on a big endian machine $fn comes before $fn+1. We have
- to adjust when loading from memory. */
- r = BFD_RELOC_LO16;
- dob:
- gas_assert (!mips_opts.micromips);
- 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
- with. */
- offset_expr.X_add_number += 4;
- macro_build (&offset_expr, "lwc1", "T,o(b)",
- target_big_endian ? treg : treg + 1, r, breg);
- break;
-
- case M_S_DOB:
- gas_assert (!mips_opts.micromips);
- 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)",
- target_big_endian ? treg + 1 : treg, BFD_RELOC_LO16, breg);
- offset_expr.X_add_number += 4;
- macro_build (&offset_expr, "swc1", "T,o(b)",
- target_big_endian ? treg : treg + 1, BFD_RELOC_LO16, breg);
- break;
+ offset_reloc[0] = BFD_RELOC_LO16;
+ offset_reloc[1] = BFD_RELOC_UNUSED;
+ offset_reloc[2] = BFD_RELOC_UNUSED;
+ }
+ align = 8;
+ /* Fall through */
case M_L_DAB:
- gas_assert (!mips_opts.micromips);
/*
* The MIPS assembler seems to check for X_add_number not
* being double aligned and generating:
@@ -9553,6 +9455,51 @@ macro (struct mips_cl_insn *ip, char *str)
s = "sw";
ldd_std:
+ /* Even on a big endian machine $fn comes before $fn+1. We have
+ to adjust when loading from memory. We set coproc if we must
+ load $fn+1 first. */
+ /* Itbl support may require additional care here. */
+ if (!target_big_endian)
+ coproc = 0;
+
+ if (small_offset_p (0, align, 16))
+ {
+ ep = &offset_expr;
+ if (!small_offset_p (4, align, 16))
+ {
+ macro_build (&offset_expr, ADDRESS_ADDI_INSN, "t,r,j", AT, breg,
+ -1, offset_reloc[0], offset_reloc[1],
+ offset_reloc[2]);
+ expr1.X_add_number = 0;
+ ep = &expr1;
+ breg = AT;
+ used_at = 1;
+ offset_reloc[0] = BFD_RELOC_LO16;
+ offset_reloc[1] = BFD_RELOC_UNUSED;
+ offset_reloc[2] = BFD_RELOC_UNUSED;
+ }
+ if (strcmp (s, "lw") == 0 && treg == breg)
+ {
+ ep->X_add_number += 4;
+ macro_build (ep, s, fmt, treg + 1, -1, offset_reloc[0],
+ offset_reloc[1], offset_reloc[2], breg);
+ ep->X_add_number -= 4;
+ macro_build (ep, s, fmt, treg, -1, offset_reloc[0],
+ offset_reloc[1], offset_reloc[2], breg);
+ }
+ else
+ {
+ macro_build (ep, s, fmt, coproc ? treg + 1 : treg, -1,
+ offset_reloc[0], offset_reloc[1], offset_reloc[2],
+ breg);
+ ep->X_add_number += 4;
+ macro_build (ep, s, fmt, coproc ? treg : treg + 1, -1,
+ offset_reloc[0], offset_reloc[1], offset_reloc[2],
+ breg);
+ }
+ break;
+ }
+
if (offset_expr.X_op != O_symbol
&& offset_expr.X_op != O_constant)
{
@@ -9569,13 +9516,6 @@ macro (struct mips_cl_insn *ip, char *str)
as_bad (_("Number (0x%s) larger than 32 bits"), value);
}
- /* Even on a big endian machine $fn comes before $fn+1. We have
- to adjust when loading from memory. We set coproc if we must
- load $fn+1 first. */
- /* Itbl support may require additional care here. */
- if (!target_big_endian)
- coproc = 0;
-
if (mips_pic == NO_PIC || offset_expr.X_op == O_constant)
{
/* If this is a reference to a GP relative symbol, we want
@@ -9628,7 +9568,15 @@ macro (struct mips_cl_insn *ip, char *str)
offset_expr.X_add_number -= 4;
}
used_at = 1;
- macro_build_lui (&offset_expr, AT);
+ if (offset_high_part (offset_expr.X_add_number, 16)
+ != offset_high_part (offset_expr.X_add_number + 4, 16))
+ {
+ load_address (AT, &offset_expr, &used_at);
+ offset_expr.X_op = O_constant;
+ offset_expr.X_add_number = 0;
+ }
+ else
+ macro_build_lui (&offset_expr, AT);
if (breg != 0)
macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t", AT, breg, AT);
/* Itbl support may require additional care here. */
@@ -9768,36 +9716,13 @@ macro (struct mips_cl_insn *ip, char *str)
abort ();
break;
-
- case M_LD_OB:
- s = HAVE_64BIT_GPRS ? "ld" : "lw";
- goto sd_ob;
- case M_SD_OB:
- s = HAVE_64BIT_GPRS ? "sd" : "sw";
- sd_ob:
- macro_build (&offset_expr, s, "t,o(b)", treg,
- -1, offset_reloc[0], offset_reloc[1], offset_reloc[2],
- breg);
- if (!HAVE_64BIT_GPRS)
- {
- offset_expr.X_add_number += 4;
- macro_build (&offset_expr, s, "t,o(b)", treg + 1,
- -1, offset_reloc[0], offset_reloc[1], offset_reloc[2],
- breg);
- }
- break;
-
case M_SAA_AB:
- ab = 1;
- case M_SAA_OB:
s = "saa";
offbits = 0;
fmt = "t,(b)";
goto ld_st;
case M_SAAD_AB:
- ab = 1;
- case M_SAAD_OB:
s = "saad";
offbits = 0;
fmt = "t,(b)";
@@ -10453,56 +10378,42 @@ macro (struct mips_cl_insn *ip, char *str)
end_noreorder ();
break;
- case M_ULH_A:
- ab = 1;
- case M_ULH:
+ case M_ULH_AB:
s = "lb";
s2 = "lbu";
off = 1;
goto uld_st;
- case M_ULHU_A:
- ab = 1;
- case M_ULHU:
+ case M_ULHU_AB:
s = "lbu";
s2 = "lbu";
off = 1;
goto uld_st;
- case M_ULW_A:
- ab = 1;
- case M_ULW:
+ case M_ULW_AB:
s = "lwl";
s2 = "lwr";
offbits = (mips_opts.micromips ? 12 : 16);
off = 3;
goto uld_st;
- case M_ULD_A:
- ab = 1;
- case M_ULD:
+ case M_ULD_AB:
s = "ldl";
s2 = "ldr";
offbits = (mips_opts.micromips ? 12 : 16);
off = 7;
goto uld_st;
- case M_USH_A:
- ab = 1;
- case M_USH:
+ case M_USH_AB:
s = "sb";
s2 = "sb";
off = 1;
ust = 1;
goto uld_st;
- case M_USW_A:
- ab = 1;
- case M_USW:
+ case M_USW_AB:
s = "swl";
s2 = "swr";
offbits = (mips_opts.micromips ? 12 : 16);
off = 3;
ust = 1;
goto uld_st;
- case M_USD_A:
- ab = 1;
- case M_USD:
+ case M_USD_AB:
s = "sdl";
s2 = "sdr";
offbits = (mips_opts.micromips ? 12 : 16);
@@ -10510,32 +10421,26 @@ macro (struct mips_cl_insn *ip, char *str)
ust = 1;
uld_st:
- if (!ab && offset_expr.X_add_number >= 0x8000 - off)
- as_bad (_("Operand overflow"));
-
+ large_offset = !small_offset_p (off, align, offbits);
ep = &offset_expr;
expr1.X_add_number = 0;
- if (ab)
+ if (large_offset)
{
used_at = 1;
tempreg = AT;
- load_address (tempreg, ep, &used_at);
- if (breg != 0)
- macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t",
- tempreg, tempreg, breg);
- breg = tempreg;
- tempreg = treg;
- ep = &expr1;
- }
- else if (offbits == 12
- && (offset_expr.X_op != O_constant
- || !IS_SEXT_12BIT_NUM (offset_expr.X_add_number)
- || !IS_SEXT_12BIT_NUM (offset_expr.X_add_number + off)))
- {
- used_at = 1;
- tempreg = AT;
- macro_build (ep, ADDRESS_ADDI_INSN, "t,r,j", tempreg, breg,
- -1, offset_reloc[0], offset_reloc[1], offset_reloc[2]);
+ if (small_offset_p (0, align, 16))
+ macro_build (ep, ADDRESS_ADDI_INSN, "t,r,j", tempreg, breg, -1,
+ offset_reloc[0], offset_reloc[1], offset_reloc[2]);
+ else
+ {
+ load_address (tempreg, ep, &used_at);
+ if (breg != 0)
+ macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t",
+ tempreg, tempreg, breg);
+ }
+ offset_reloc[0] = BFD_RELOC_LO16;
+ offset_reloc[1] = BFD_RELOC_UNUSED;
+ offset_reloc[2] = BFD_RELOC_UNUSED;
breg = tempreg;
tempreg = treg;
ep = &expr1;
@@ -10553,21 +10458,23 @@ macro (struct mips_cl_insn *ip, char *str)
if (!target_big_endian)
ep->X_add_number += off;
- if (offbits != 12)
- macro_build (ep, s, "t,o(b)", tempreg, BFD_RELOC_LO16, breg);
- else
+ if (offbits == 12)
macro_build (NULL, s, "t,~(b)",
tempreg, (unsigned long) ep->X_add_number, breg);
+ else
+ macro_build (ep, s, "t,o(b)", tempreg, -1,
+ offset_reloc[0], offset_reloc[1], offset_reloc[2], breg);
if (!target_big_endian)
ep->X_add_number -= off;
else
ep->X_add_number += off;
- if (offbits != 12)
- macro_build (ep, s2, "t,o(b)", tempreg, BFD_RELOC_LO16, breg);
- else
+ if (offbits == 12)
macro_build (NULL, s2, "t,~(b)",
tempreg, (unsigned long) ep->X_add_number, breg);
+ else
+ macro_build (ep, s2, "t,o(b)", tempreg, -1,
+ offset_reloc[0], offset_reloc[1], offset_reloc[2], breg);
/* If necessary, move the result in tempreg to the final destination. */
if (!ust && treg != tempreg)
@@ -10582,14 +10489,15 @@ macro (struct mips_cl_insn *ip, char *str)
used_at = 1;
if (target_big_endian == ust)
ep->X_add_number += off;
- tempreg = ust || ab ? treg : AT;
- macro_build (ep, s, "t,o(b)", tempreg, BFD_RELOC_LO16, breg);
+ tempreg = ust || large_offset ? treg : AT;
+ macro_build (ep, s, "t,o(b)", tempreg, -1,
+ offset_reloc[0], offset_reloc[1], offset_reloc[2], breg);
/* For halfword transfers we need a temporary register to shuffle
bytes. Unfortunately for M_USH_A we have none available before
the next store as AT holds the base address. We deal with this
case by clobbering TREG and then restoring it as with ULH. */
- tempreg = ust == ab ? treg : AT;
+ tempreg = ust == large_offset ? treg : AT;
if (ust)
macro_build (NULL, "srl", SHFT_FMT, tempreg, treg, 8);
@@ -10597,21 +10505,23 @@ macro (struct mips_cl_insn *ip, char *str)
ep->X_add_number -= off;
else
ep->X_add_number += off;
- macro_build (ep, s2, "t,o(b)", tempreg, BFD_RELOC_LO16, breg);
+ macro_build (ep, s2, "t,o(b)", tempreg, -1,
+ offset_reloc[0], offset_reloc[1], offset_reloc[2], breg);
/* For M_USH_A re-retrieve the LSB. */
- if (ust && ab)
+ if (ust && large_offset)
{
if (target_big_endian)
ep->X_add_number += off;
else
ep->X_add_number -= off;
- macro_build (&expr1, "lbu", "t,o(b)", AT, BFD_RELOC_LO16, AT);
+ macro_build (&expr1, "lbu", "t,o(b)", AT, -1,
+ offset_reloc[0], offset_reloc[1], offset_reloc[2], AT);
}
/* For ULH and M_USH_A OR the LSB in. */
- if (!ust || ab)
+ if (!ust || large_offset)
{
- tempreg = !ab ? AT : treg;
+ tempreg = !large_offset ? AT : treg;
macro_build (NULL, "sll", SHFT_FMT, tempreg, tempreg, 8);
macro_build (NULL, "or", "d,v,t", treg, treg, AT);
}
@@ -11416,6 +11326,16 @@ mips_ip (char *str, struct mips_cl_insn *ip)
return;
}
+ imm_expr.X_op = O_absent;
+ imm2_expr.X_op = O_absent;
+ offset_expr.X_op = O_absent;
+ imm_reloc[0] = BFD_RELOC_UNUSED;
+ imm_reloc[1] = BFD_RELOC_UNUSED;
+ imm_reloc[2] = BFD_RELOC_UNUSED;
+ offset_reloc[0] = BFD_RELOC_UNUSED;
+ offset_reloc[1] = BFD_RELOC_UNUSED;
+ offset_reloc[2] = BFD_RELOC_UNUSED;
+
create_insn (ip, insn);
insn_error = NULL;
argnum = 1;
@@ -12782,10 +12702,20 @@ mips_ip (char *str, struct mips_cl_insn *ip)
continue;
case 'A':
- my_getExpression (&offset_expr, s);
- normalize_address_expr (&offset_expr);
- *imm_reloc = BFD_RELOC_32;
- s = expr_end;
+ /* If we expect a base register, check whether there is only
+ a single bracketed expression left. If so, it must be the
+ base register and the constant must be zero. */
+ if (args[1] == '(' && *s == '(' && strchr (s + 1, '(') == 0)
+ {
+ offset_expr.X_op = O_constant;
+ offset_expr.X_add_number = 0;
+ }
+ else
+ {
+ my_getSmallExpression (&offset_expr, offset_reloc, s);
+ normalize_address_expr (&offset_expr);
+ s = expr_end;
+ }
continue;
case 'F':
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index 7f5c434..196e238 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,5 +1,30 @@
2013-07-07 Richard Sandiford <rdsandiford@googlemail.com>
+ * gas/mips/ldstla-32.d: Avoid "lui at,0x0" sequences for
+ truncated constants.
+ * gas/mips/ldstla-32-shared.d: Likewise.
+ * gas/mips/mcu.d: Use ADDIU in preference to LI+ADDU when adding
+ 16-bit constants to the base.
+ * gas/mips/micromips@mcu.d: Likewise.
+ * gas/mips/micromips@cache.d: Likewise.
+ * gas/mips/micromips@pref.d: Likewise.
+ * gas/mips/micromips.d, gas/mips/micromips-insn32.d,
+ gas/mips/micromips-noinsn32.d, gas/mips/micromips-trap.d: Likewise.
+ Allow the full 16-bit offset range to be used for SB, LB and LBU in
+ USH and ULH sequences. Fix the expected output for LD and SD when
+ the two LW and SW offsets need different high parts.
+ * gas/mips/eva.s: Test PREFE with relocation operators.
+ * gas/mips/eva.d: Use ADDIU in preference to LI+ADDU for 16-bit
+ constants. Update after eva.s change.
+ * gas/mips/micromips@eva.d: Likewise.
+ * gas/mips/ld-reloc.s, gas/mips/ld-reloc.d, gas/mips/l_d-reloc.s,
+ gas/mips/l_d-reloc.d, gas/mips/ulw-reloc.s, gas/mips/ulw-reloc.d,
+ gas/mips/micromips@ulw-reloc.d, gas/mips/ulh-reloc.s,
+ gas/mips/ulh-reloc.d: New tests.
+ * gas/mips/mips.exp: Run them.
+
+2013-07-07 Richard Sandiford <rdsandiford@googlemail.com>
+
* gas/mips/eva.d, gas/mips/micromips@eva.d: Remove hard-coded
addresses. Use gpr-names=numeric.
diff --git a/gas/testsuite/gas/mips/eva.d b/gas/testsuite/gas/mips/eva.d
index 70e73fc..bd3a716 100644
--- a/gas/testsuite/gas/mips/eva.d
+++ b/gas/testsuite/gas/mips/eva.d
@@ -14,65 +14,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c038028 lbue \$3,-256\(\$0\)
[ 0-9a-f]+: 7ca47fa8 lbue \$4,255\(\$5\)
[ 0-9a-f]+: 7c067fa8 lbue \$6,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00280821 addu \$1,\$1,\$8
-[ 0-9a-f]+: 7c277fa8 lbue \$7,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c297fa8 lbue \$9,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 002b0821 addu \$1,\$1,\$11
-[ 0-9a-f]+: 7c2a8028 lbue \$10,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c2c8028 lbue \$12,-256\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 002e0821 addu \$1,\$1,\$14
+[ 0-9a-f]+: 2501feff addiu \$1,\$8,-257
+[ 0-9a-f]+: 7c270028 lbue \$7,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c290028 lbue \$9,0\(\$1\)
+[ 0-9a-f]+: 25610100 addiu \$1,\$11,256
+[ 0-9a-f]+: 7c2a0028 lbue \$10,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c2c0028 lbue \$12,0\(\$1\)
+[ 0-9a-f]+: 25c1fe00 addiu \$1,\$14,-512
[ 0-9a-f]+: 7c2d0028 lbue \$13,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c2f0028 lbue \$15,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00310821 addu \$1,\$1,\$17
-[ 0-9a-f]+: 7c30ffa8 lbue \$16,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c32ffa8 lbue \$18,-1\(\$1\)
-[ 0-9a-f]+: 2401fc00 li \$1,-1024
-[ 0-9a-f]+: 00340821 addu \$1,\$1,\$20
+[ 0-9a-f]+: 262101ff addiu \$1,\$17,511
+[ 0-9a-f]+: 7c300028 lbue \$16,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c320028 lbue \$18,0\(\$1\)
+[ 0-9a-f]+: 2681fc00 addiu \$1,\$20,-1024
[ 0-9a-f]+: 7c330028 lbue \$19,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c350028 lbue \$21,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 00370821 addu \$1,\$1,\$23
-[ 0-9a-f]+: 7c36ffa8 lbue \$22,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c38ffa8 lbue \$24,-1\(\$1\)
-[ 0-9a-f]+: 2401f800 li \$1,-2048
-[ 0-9a-f]+: 003a0821 addu \$1,\$1,\$26
+[ 0-9a-f]+: 26e103ff addiu \$1,\$23,1023
+[ 0-9a-f]+: 7c360028 lbue \$22,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c380028 lbue \$24,0\(\$1\)
+[ 0-9a-f]+: 2741f800 addiu \$1,\$26,-2048
[ 0-9a-f]+: 7c390028 lbue \$25,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c3b0028 lbue \$27,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 003d0821 addu \$1,\$1,\$29
-[ 0-9a-f]+: 7c3cffa8 lbue \$28,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c3effa8 lbue \$30,-1\(\$1\)
+[ 0-9a-f]+: 27a107ff addiu \$1,\$29,2047
+[ 0-9a-f]+: 7c3c0028 lbue \$28,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c3e0028 lbue \$30,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c3f0028 lbue \$31,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c220028 lbue \$2,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 00240821 addu \$1,\$1,\$4
-[ 0-9a-f]+: 7c23ffa8 lbue \$3,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c25ffa8 lbue \$5,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 00270821 addu \$1,\$1,\$7
+[ 0-9a-f]+: 24810fff addiu \$1,\$4,4095
+[ 0-9a-f]+: 7c230028 lbue \$3,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c250028 lbue \$5,0\(\$1\)
+[ 0-9a-f]+: 24e18000 addiu \$1,\$7,-32768
[ 0-9a-f]+: 7c260028 lbue \$6,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c280028 lbue \$8,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 002a0821 addu \$1,\$1,\$10
-[ 0-9a-f]+: 7c29ffa8 lbue \$9,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c2bffa8 lbue \$11,-1\(\$1\)
+[ 0-9a-f]+: 25417fff addiu \$1,\$10,32767
+[ 0-9a-f]+: 7c290028 lbue \$9,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c2b0028 lbue \$11,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 002d0821 addu \$1,\$1,\$13
[ 0-9a-f]+: 7c2cffa8 lbue \$12,-1\(\$1\)
@@ -103,66 +92,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c1d8029 lhue \$29,-256\(\$0\)
[ 0-9a-f]+: 7ffe7fa9 lhue \$30,255\(\$31\)
[ 0-9a-f]+: 7c007fa9 lhue \$0,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00230821 addu \$1,\$1,\$3
-[ 0-9a-f]+: 7c227fa9 lhue \$2,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c247fa9 lhue \$4,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00260821 addu \$1,\$1,\$6
-[ 0-9a-f]+: 7c258029 lhue \$5,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c278029 lhue \$7,-256\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00290821 addu \$1,\$1,\$9
+[ 0-9a-f]+: 2461feff addiu \$1,\$3,-257
+[ 0-9a-f]+: 7c220029 lhue \$2,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c240029 lhue \$4,0\(\$1\)
+[ 0-9a-f]+: 24c10100 addiu \$1,\$6,256
+[ 0-9a-f]+: 7c250029 lhue \$5,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c270029 lhue \$7,0\(\$1\)
+[ 0-9a-f]+: 2521fe00 addiu \$1,\$9,-512
[ 0-9a-f]+: 7c280029 lhue \$8,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c2a0029 lhue \$10,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 002c0821 addu \$1,\$1,\$12
-[ 0-9a-f]+: 7c2bffa9 lhue \$11,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c2dffa9 lhue \$13,-1\(\$1\)
-[ 0-9a-f]+: 2401fc00 li \$1,-1024
-[ 0-9a-f]+: 002f0821 addu \$1,\$1,\$15
+[ 0-9a-f]+: 258101ff addiu \$1,\$12,511
+[ 0-9a-f]+: 7c2b0029 lhue \$11,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c2d0029 lhue \$13,0\(\$1\)
+[ 0-9a-f]+: 25e1fc00 addiu \$1,\$15,-1024
[ 0-9a-f]+: 7c2e0029 lhue \$14,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c300029 lhue \$16,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 00320821 addu \$1,\$1,\$18
-[ 0-9a-f]+: 7c31ffa9 lhue \$17,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c33ffa9 lhue \$19,-1\(\$1\)
-[ 0-9a-f]+: 2401f800 li \$1,-2048
-[ 0-9a-f]+: 00350821 addu \$1,\$1,\$21
+[ 0-9a-f]+: 264103ff addiu \$1,\$18,1023
+[ 0-9a-f]+: 7c310029 lhue \$17,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c330029 lhue \$19,0\(\$1\)
+[ 0-9a-f]+: 26a1f800 addiu \$1,\$21,-2048
[ 0-9a-f]+: 7c340029 lhue \$20,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c360029 lhue \$22,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 00380821 addu \$1,\$1,\$24
-[ 0-9a-f]+: 7c37ffa9 lhue \$23,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c39ffa9 lhue \$25,-1\(\$1\)
-[ 0-9a-f]+: 2401f000 li \$1,-4096
-[ 0-9a-f]+: 003b0821 addu \$1,\$1,\$27
+[ 0-9a-f]+: 270107ff addiu \$1,\$24,2047
+[ 0-9a-f]+: 7c370029 lhue \$23,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c390029 lhue \$25,0\(\$1\)
+[ 0-9a-f]+: 2761f000 addiu \$1,\$27,-4096
[ 0-9a-f]+: 7c3a0029 lhue \$26,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c3c0029 lhue \$28,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 003e0821 addu \$1,\$1,\$30
-[ 0-9a-f]+: 7c3dffa9 lhue \$29,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c3fffa9 lhue \$31,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 00220821 addu \$1,\$1,\$2
+[ 0-9a-f]+: 27c10fff addiu \$1,\$30,4095
+[ 0-9a-f]+: 7c3d0029 lhue \$29,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c3f0029 lhue \$31,0\(\$1\)
+[ 0-9a-f]+: 24418000 addiu \$1,\$2,-32768
[ 0-9a-f]+: 7c200029 lhue \$0,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c230029 lhue \$3,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 00250821 addu \$1,\$1,\$5
-[ 0-9a-f]+: 7c24ffa9 lhue \$4,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c26ffa9 lhue \$6,-1\(\$1\)
+[ 0-9a-f]+: 24a17fff addiu \$1,\$5,32767
+[ 0-9a-f]+: 7c240029 lhue \$4,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c260029 lhue \$6,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 00280821 addu \$1,\$1,\$8
[ 0-9a-f]+: 7c27ffa9 lhue \$7,-1\(\$1\)
@@ -193,65 +170,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c18802c lbe \$24,-256\(\$0\)
[ 0-9a-f]+: 7f597fac lbe \$25,255\(\$26\)
[ 0-9a-f]+: 7c1b7fac lbe \$27,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 003d0821 addu \$1,\$1,\$29
-[ 0-9a-f]+: 7c3c7fac lbe \$28,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c3e7fac lbe \$30,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c3f802c lbe \$31,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c22802c lbe \$2,-256\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00240821 addu \$1,\$1,\$4
+[ 0-9a-f]+: 27a1feff addiu \$1,\$29,-257
+[ 0-9a-f]+: 7c3c002c lbe \$28,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c3e002c lbe \$30,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c3f002c lbe \$31,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c22002c lbe \$2,0\(\$1\)
+[ 0-9a-f]+: 2481fe00 addiu \$1,\$4,-512
[ 0-9a-f]+: 7c23002c lbe \$3,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c25002c lbe \$5,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00270821 addu \$1,\$1,\$7
-[ 0-9a-f]+: 7c26ffac lbe \$6,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c28ffac lbe \$8,-1\(\$1\)
-[ 0-9a-f]+: 2401fc00 li \$1,-1024
-[ 0-9a-f]+: 002a0821 addu \$1,\$1,\$10
+[ 0-9a-f]+: 24e101ff addiu \$1,\$7,511
+[ 0-9a-f]+: 7c26002c lbe \$6,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c28002c lbe \$8,0\(\$1\)
+[ 0-9a-f]+: 2541fc00 addiu \$1,\$10,-1024
[ 0-9a-f]+: 7c29002c lbe \$9,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c2b002c lbe \$11,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 002d0821 addu \$1,\$1,\$13
-[ 0-9a-f]+: 7c2cffac lbe \$12,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c2effac lbe \$14,-1\(\$1\)
-[ 0-9a-f]+: 2401f800 li \$1,-2048
-[ 0-9a-f]+: 00300821 addu \$1,\$1,\$16
+[ 0-9a-f]+: 25a103ff addiu \$1,\$13,1023
+[ 0-9a-f]+: 7c2c002c lbe \$12,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c2e002c lbe \$14,0\(\$1\)
+[ 0-9a-f]+: 2601f800 addiu \$1,\$16,-2048
[ 0-9a-f]+: 7c2f002c lbe \$15,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c31002c lbe \$17,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 00330821 addu \$1,\$1,\$19
-[ 0-9a-f]+: 7c32ffac lbe \$18,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c34ffac lbe \$20,-1\(\$1\)
-[ 0-9a-f]+: 2401f000 li \$1,-4096
-[ 0-9a-f]+: 00360821 addu \$1,\$1,\$22
+[ 0-9a-f]+: 266107ff addiu \$1,\$19,2047
+[ 0-9a-f]+: 7c32002c lbe \$18,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c34002c lbe \$20,0\(\$1\)
+[ 0-9a-f]+: 26c1f000 addiu \$1,\$22,-4096
[ 0-9a-f]+: 7c35002c lbe \$21,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c37002c lbe \$23,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 00390821 addu \$1,\$1,\$25
-[ 0-9a-f]+: 7c38ffac lbe \$24,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c3affac lbe \$26,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 003c0821 addu \$1,\$1,\$28
+[ 0-9a-f]+: 27210fff addiu \$1,\$25,4095
+[ 0-9a-f]+: 7c38002c lbe \$24,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c3a002c lbe \$26,0\(\$1\)
+[ 0-9a-f]+: 27818000 addiu \$1,\$28,-32768
[ 0-9a-f]+: 7c3b002c lbe \$27,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c3d002c lbe \$29,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 003f0821 addu \$1,\$1,\$31
-[ 0-9a-f]+: 7c3effac lbe \$30,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c20ffac lbe \$0,-1\(\$1\)
+[ 0-9a-f]+: 27e17fff addiu \$1,\$31,32767
+[ 0-9a-f]+: 7c3e002c lbe \$30,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c20002c lbe \$0,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 00230821 addu \$1,\$1,\$3
[ 0-9a-f]+: 7c22ffac lbe \$2,-1\(\$1\)
@@ -282,66 +248,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c13802d lhe \$19,-256\(\$0\)
[ 0-9a-f]+: 7eb47fad lhe \$20,255\(\$21\)
[ 0-9a-f]+: 7c167fad lhe \$22,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00380821 addu \$1,\$1,\$24
-[ 0-9a-f]+: 7c377fad lhe \$23,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c397fad lhe \$25,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 003b0821 addu \$1,\$1,\$27
-[ 0-9a-f]+: 7c3a802d lhe \$26,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c3c802d lhe \$28,-256\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 003e0821 addu \$1,\$1,\$30
+[ 0-9a-f]+: 2701feff addiu \$1,\$24,-257
+[ 0-9a-f]+: 7c37002d lhe \$23,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c39002d lhe \$25,0\(\$1\)
+[ 0-9a-f]+: 27610100 addiu \$1,\$27,256
+[ 0-9a-f]+: 7c3a002d lhe \$26,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c3c002d lhe \$28,0\(\$1\)
+[ 0-9a-f]+: 27c1fe00 addiu \$1,\$30,-512
[ 0-9a-f]+: 7c3d002d lhe \$29,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c3f002d lhe \$31,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00220821 addu \$1,\$1,\$2
-[ 0-9a-f]+: 7c20ffad lhe \$0,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c23ffad lhe \$3,-1\(\$1\)
-[ 0-9a-f]+: 2401fc00 li \$1,-1024
-[ 0-9a-f]+: 00250821 addu \$1,\$1,\$5
+[ 0-9a-f]+: 244101ff addiu \$1,\$2,511
+[ 0-9a-f]+: 7c20002d lhe \$0,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c23002d lhe \$3,0\(\$1\)
+[ 0-9a-f]+: 24a1fc00 addiu \$1,\$5,-1024
[ 0-9a-f]+: 7c24002d lhe \$4,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c26002d lhe \$6,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 00280821 addu \$1,\$1,\$8
-[ 0-9a-f]+: 7c27ffad lhe \$7,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c29ffad lhe \$9,-1\(\$1\)
-[ 0-9a-f]+: 2401f800 li \$1,-2048
-[ 0-9a-f]+: 002b0821 addu \$1,\$1,\$11
+[ 0-9a-f]+: 250103ff addiu \$1,\$8,1023
+[ 0-9a-f]+: 7c27002d lhe \$7,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c29002d lhe \$9,0\(\$1\)
+[ 0-9a-f]+: 2561f800 addiu \$1,\$11,-2048
[ 0-9a-f]+: 7c2a002d lhe \$10,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c2c002d lhe \$12,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 002e0821 addu \$1,\$1,\$14
-[ 0-9a-f]+: 7c2dffad lhe \$13,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c2fffad lhe \$15,-1\(\$1\)
-[ 0-9a-f]+: 2401f000 li \$1,-4096
-[ 0-9a-f]+: 00310821 addu \$1,\$1,\$17
+[ 0-9a-f]+: 25c107ff addiu \$1,\$14,2047
+[ 0-9a-f]+: 7c2d002d lhe \$13,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c2f002d lhe \$15,0\(\$1\)
+[ 0-9a-f]+: 2621f000 addiu \$1,\$17,-4096
[ 0-9a-f]+: 7c30002d lhe \$16,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c32002d lhe \$18,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 00340821 addu \$1,\$1,\$20
-[ 0-9a-f]+: 7c33ffad lhe \$19,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c35ffad lhe \$21,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 00370821 addu \$1,\$1,\$23
+[ 0-9a-f]+: 26810fff addiu \$1,\$20,4095
+[ 0-9a-f]+: 7c33002d lhe \$19,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c35002d lhe \$21,0\(\$1\)
+[ 0-9a-f]+: 26e18000 addiu \$1,\$23,-32768
[ 0-9a-f]+: 7c36002d lhe \$22,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c38002d lhe \$24,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 003a0821 addu \$1,\$1,\$26
-[ 0-9a-f]+: 7c39ffad lhe \$25,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c3bffad lhe \$27,-1\(\$1\)
+[ 0-9a-f]+: 27417fff addiu \$1,\$26,32767
+[ 0-9a-f]+: 7c39002d lhe \$25,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c3b002d lhe \$27,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 003d0821 addu \$1,\$1,\$29
[ 0-9a-f]+: 7c3cffad lhe \$28,-1\(\$1\)
@@ -371,66 +325,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c0e802e lle \$14,-256\(\$0\)
[ 0-9a-f]+: 7e0f7fae lle \$15,255\(\$16\)
[ 0-9a-f]+: 7c117fae lle \$17,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00330821 addu \$1,\$1,\$19
-[ 0-9a-f]+: 7c327fae lle \$18,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c347fae lle \$20,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00360821 addu \$1,\$1,\$22
-[ 0-9a-f]+: 7c35802e lle \$21,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c37802e lle \$23,-256\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00390821 addu \$1,\$1,\$25
+[ 0-9a-f]+: 2661feff addiu \$1,\$19,-257
+[ 0-9a-f]+: 7c32002e lle \$18,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c34002e lle \$20,0\(\$1\)
+[ 0-9a-f]+: 26c10100 addiu \$1,\$22,256
+[ 0-9a-f]+: 7c35002e lle \$21,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c37002e lle \$23,0\(\$1\)
+[ 0-9a-f]+: 2721fe00 addiu \$1,\$25,-512
[ 0-9a-f]+: 7c38002e lle \$24,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c3a002e lle \$26,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 003c0821 addu \$1,\$1,\$28
-[ 0-9a-f]+: 7c3bffae lle \$27,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c3dffae lle \$29,-1\(\$1\)
-[ 0-9a-f]+: 2401fc00 li \$1,-1024
-[ 0-9a-f]+: 003f0821 addu \$1,\$1,\$31
+[ 0-9a-f]+: 278101ff addiu \$1,\$28,511
+[ 0-9a-f]+: 7c3b002e lle \$27,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c3d002e lle \$29,0\(\$1\)
+[ 0-9a-f]+: 27e1fc00 addiu \$1,\$31,-1024
[ 0-9a-f]+: 7c3e002e lle \$30,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c20002e lle \$0,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 00230821 addu \$1,\$1,\$3
-[ 0-9a-f]+: 7c22ffae lle \$2,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c24ffae lle \$4,-1\(\$1\)
-[ 0-9a-f]+: 2401f800 li \$1,-2048
-[ 0-9a-f]+: 00260821 addu \$1,\$1,\$6
+[ 0-9a-f]+: 246103ff addiu \$1,\$3,1023
+[ 0-9a-f]+: 7c22002e lle \$2,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c24002e lle \$4,0\(\$1\)
+[ 0-9a-f]+: 24c1f800 addiu \$1,\$6,-2048
[ 0-9a-f]+: 7c25002e lle \$5,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c27002e lle \$7,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 00290821 addu \$1,\$1,\$9
-[ 0-9a-f]+: 7c28ffae lle \$8,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c2affae lle \$10,-1\(\$1\)
-[ 0-9a-f]+: 2401f000 li \$1,-4096
-[ 0-9a-f]+: 002c0821 addu \$1,\$1,\$12
+[ 0-9a-f]+: 252107ff addiu \$1,\$9,2047
+[ 0-9a-f]+: 7c28002e lle \$8,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c2a002e lle \$10,0\(\$1\)
+[ 0-9a-f]+: 2581f000 addiu \$1,\$12,-4096
[ 0-9a-f]+: 7c2b002e lle \$11,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c2d002e lle \$13,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 002f0821 addu \$1,\$1,\$15
-[ 0-9a-f]+: 7c2effae lle \$14,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c30ffae lle \$16,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 00320821 addu \$1,\$1,\$18
+[ 0-9a-f]+: 25e10fff addiu \$1,\$15,4095
+[ 0-9a-f]+: 7c2e002e lle \$14,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c30002e lle \$16,0\(\$1\)
+[ 0-9a-f]+: 26418000 addiu \$1,\$18,-32768
[ 0-9a-f]+: 7c31002e lle \$17,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c33002e lle \$19,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 00350821 addu \$1,\$1,\$21
-[ 0-9a-f]+: 7c34ffae lle \$20,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c36ffae lle \$22,-1\(\$1\)
+[ 0-9a-f]+: 26a17fff addiu \$1,\$21,32767
+[ 0-9a-f]+: 7c34002e lle \$20,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c36002e lle \$22,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 00380821 addu \$1,\$1,\$24
[ 0-9a-f]+: 7c37ffae lle \$23,-1\(\$1\)
@@ -461,65 +403,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c09802f lwe \$9,-256\(\$0\)
[ 0-9a-f]+: 7d6a7faf lwe \$10,255\(\$11\)
[ 0-9a-f]+: 7c0c7faf lwe \$12,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 002e0821 addu \$1,\$1,\$14
-[ 0-9a-f]+: 7c2d7faf lwe \$13,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c2f7faf lwe \$15,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00310821 addu \$1,\$1,\$17
-[ 0-9a-f]+: 7c30802f lwe \$16,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c32802f lwe \$18,-256\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00340821 addu \$1,\$1,\$20
+[ 0-9a-f]+: 25c1feff addiu \$1,\$14,-257
+[ 0-9a-f]+: 7c2d002f lwe \$13,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c2f002f lwe \$15,0\(\$1\)
+[ 0-9a-f]+: 26210100 addiu \$1,\$17,256
+[ 0-9a-f]+: 7c30002f lwe \$16,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c32002f lwe \$18,0\(\$1\)
+[ 0-9a-f]+: 2681fe00 addiu \$1,\$20,-512
[ 0-9a-f]+: 7c33002f lwe \$19,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c35002f lwe \$21,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00370821 addu \$1,\$1,\$23
-[ 0-9a-f]+: 7c36ffaf lwe \$22,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c38ffaf lwe \$24,-1\(\$1\)
-[ 0-9a-f]+: 2401fc00 li \$1,-1024
-[ 0-9a-f]+: 003a0821 addu \$1,\$1,\$26
+[ 0-9a-f]+: 26e101ff addiu \$1,\$23,511
+[ 0-9a-f]+: 7c36002f lwe \$22,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c38002f lwe \$24,0\(\$1\)
+[ 0-9a-f]+: 2741fc00 addiu \$1,\$26,-1024
[ 0-9a-f]+: 7c39002f lwe \$25,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c3b002f lwe \$27,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 003d0821 addu \$1,\$1,\$29
-[ 0-9a-f]+: 7c3cffaf lwe \$28,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c3effaf lwe \$30,-1\(\$1\)
+[ 0-9a-f]+: 27a103ff addiu \$1,\$29,1023
+[ 0-9a-f]+: 7c3c002f lwe \$28,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c3e002f lwe \$30,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c3f002f lwe \$31,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c22002f lwe \$2,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 00240821 addu \$1,\$1,\$4
-[ 0-9a-f]+: 7c23ffaf lwe \$3,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c25ffaf lwe \$5,-1\(\$1\)
-[ 0-9a-f]+: 2401f000 li \$1,-4096
-[ 0-9a-f]+: 00270821 addu \$1,\$1,\$7
+[ 0-9a-f]+: 248107ff addiu \$1,\$4,2047
+[ 0-9a-f]+: 7c23002f lwe \$3,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c25002f lwe \$5,0\(\$1\)
+[ 0-9a-f]+: 24e1f000 addiu \$1,\$7,-4096
[ 0-9a-f]+: 7c26002f lwe \$6,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c28002f lwe \$8,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 002a0821 addu \$1,\$1,\$10
-[ 0-9a-f]+: 7c29ffaf lwe \$9,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c2bffaf lwe \$11,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 002d0821 addu \$1,\$1,\$13
+[ 0-9a-f]+: 25410fff addiu \$1,\$10,4095
+[ 0-9a-f]+: 7c29002f lwe \$9,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c2b002f lwe \$11,0\(\$1\)
+[ 0-9a-f]+: 25a18000 addiu \$1,\$13,-32768
[ 0-9a-f]+: 7c2c002f lwe \$12,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c2e002f lwe \$14,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 00300821 addu \$1,\$1,\$16
-[ 0-9a-f]+: 7c2fffaf lwe \$15,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c31ffaf lwe \$17,-1\(\$1\)
+[ 0-9a-f]+: 26017fff addiu \$1,\$16,32767
+[ 0-9a-f]+: 7c2f002f lwe \$15,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c31002f lwe \$17,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 00330821 addu \$1,\$1,\$19
[ 0-9a-f]+: 7c32ffaf lwe \$18,-1\(\$1\)
@@ -550,66 +481,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c048019 lwle \$4,-256\(\$0\)
[ 0-9a-f]+: 7cc57f99 lwle \$5,255\(\$6\)
[ 0-9a-f]+: 7c077f99 lwle \$7,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00290821 addu \$1,\$1,\$9
-[ 0-9a-f]+: 7c287f99 lwle \$8,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c2a7f99 lwle \$10,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 002c0821 addu \$1,\$1,\$12
-[ 0-9a-f]+: 7c2b8019 lwle \$11,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c2d8019 lwle \$13,-256\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 002f0821 addu \$1,\$1,\$15
+[ 0-9a-f]+: 2521feff addiu \$1,\$9,-257
+[ 0-9a-f]+: 7c280019 lwle \$8,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c2a0019 lwle \$10,0\(\$1\)
+[ 0-9a-f]+: 25810100 addiu \$1,\$12,256
+[ 0-9a-f]+: 7c2b0019 lwle \$11,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c2d0019 lwle \$13,0\(\$1\)
+[ 0-9a-f]+: 25e1fe00 addiu \$1,\$15,-512
[ 0-9a-f]+: 7c2e0019 lwle \$14,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c300019 lwle \$16,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00320821 addu \$1,\$1,\$18
-[ 0-9a-f]+: 7c31ff99 lwle \$17,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c33ff99 lwle \$19,-1\(\$1\)
-[ 0-9a-f]+: 2401fc00 li \$1,-1024
-[ 0-9a-f]+: 00350821 addu \$1,\$1,\$21
+[ 0-9a-f]+: 264101ff addiu \$1,\$18,511
+[ 0-9a-f]+: 7c310019 lwle \$17,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c330019 lwle \$19,0\(\$1\)
+[ 0-9a-f]+: 26a1fc00 addiu \$1,\$21,-1024
[ 0-9a-f]+: 7c340019 lwle \$20,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c360019 lwle \$22,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 00380821 addu \$1,\$1,\$24
-[ 0-9a-f]+: 7c37ff99 lwle \$23,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c39ff99 lwle \$25,-1\(\$1\)
-[ 0-9a-f]+: 2401f800 li \$1,-2048
-[ 0-9a-f]+: 003b0821 addu \$1,\$1,\$27
+[ 0-9a-f]+: 270103ff addiu \$1,\$24,1023
+[ 0-9a-f]+: 7c370019 lwle \$23,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c390019 lwle \$25,0\(\$1\)
+[ 0-9a-f]+: 2761f800 addiu \$1,\$27,-2048
[ 0-9a-f]+: 7c3a0019 lwle \$26,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c3c0019 lwle \$28,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 003e0821 addu \$1,\$1,\$30
-[ 0-9a-f]+: 7c3dff99 lwle \$29,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c3fff99 lwle \$31,-1\(\$1\)
-[ 0-9a-f]+: 2401f000 li \$1,-4096
-[ 0-9a-f]+: 00220821 addu \$1,\$1,\$2
+[ 0-9a-f]+: 27c107ff addiu \$1,\$30,2047
+[ 0-9a-f]+: 7c3d0019 lwle \$29,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c3f0019 lwle \$31,0\(\$1\)
+[ 0-9a-f]+: 2441f000 addiu \$1,\$2,-4096
[ 0-9a-f]+: 7c200019 lwle \$0,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c230019 lwle \$3,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 00250821 addu \$1,\$1,\$5
-[ 0-9a-f]+: 7c24ff99 lwle \$4,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c26ff99 lwle \$6,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 00280821 addu \$1,\$1,\$8
+[ 0-9a-f]+: 24a10fff addiu \$1,\$5,4095
+[ 0-9a-f]+: 7c240019 lwle \$4,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c260019 lwle \$6,0\(\$1\)
+[ 0-9a-f]+: 25018000 addiu \$1,\$8,-32768
[ 0-9a-f]+: 7c270019 lwle \$7,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c290019 lwle \$9,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 002b0821 addu \$1,\$1,\$11
-[ 0-9a-f]+: 7c2aff99 lwle \$10,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c2cff99 lwle \$12,-1\(\$1\)
+[ 0-9a-f]+: 25617fff addiu \$1,\$11,32767
+[ 0-9a-f]+: 7c2a0019 lwle \$10,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c2c0019 lwle \$12,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 002e0821 addu \$1,\$1,\$14
[ 0-9a-f]+: 7c2dff99 lwle \$13,-1\(\$1\)
@@ -640,66 +559,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c1e801a lwre \$30,-256\(\$0\)
[ 0-9a-f]+: 7c1f7f9a lwre \$31,255\(\$0\)
[ 0-9a-f]+: 7c027f9a lwre \$2,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00240821 addu \$1,\$1,\$4
-[ 0-9a-f]+: 7c237f9a lwre \$3,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c257f9a lwre \$5,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00270821 addu \$1,\$1,\$7
-[ 0-9a-f]+: 7c26801a lwre \$6,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c28801a lwre \$8,-256\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 002a0821 addu \$1,\$1,\$10
+[ 0-9a-f]+: 2481feff addiu \$1,\$4,-257
+[ 0-9a-f]+: 7c23001a lwre \$3,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c25001a lwre \$5,0\(\$1\)
+[ 0-9a-f]+: 24e10100 addiu \$1,\$7,256
+[ 0-9a-f]+: 7c26001a lwre \$6,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c28001a lwre \$8,0\(\$1\)
+[ 0-9a-f]+: 2541fe00 addiu \$1,\$10,-512
[ 0-9a-f]+: 7c29001a lwre \$9,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c2b001a lwre \$11,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 002d0821 addu \$1,\$1,\$13
-[ 0-9a-f]+: 7c2cff9a lwre \$12,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c2eff9a lwre \$14,-1\(\$1\)
-[ 0-9a-f]+: 2401fc00 li \$1,-1024
-[ 0-9a-f]+: 00300821 addu \$1,\$1,\$16
+[ 0-9a-f]+: 25a101ff addiu \$1,\$13,511
+[ 0-9a-f]+: 7c2c001a lwre \$12,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c2e001a lwre \$14,0\(\$1\)
+[ 0-9a-f]+: 2601fc00 addiu \$1,\$16,-1024
[ 0-9a-f]+: 7c2f001a lwre \$15,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c31001a lwre \$17,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 00330821 addu \$1,\$1,\$19
-[ 0-9a-f]+: 7c32ff9a lwre \$18,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c34ff9a lwre \$20,-1\(\$1\)
-[ 0-9a-f]+: 2401f800 li \$1,-2048
-[ 0-9a-f]+: 00360821 addu \$1,\$1,\$22
+[ 0-9a-f]+: 266103ff addiu \$1,\$19,1023
+[ 0-9a-f]+: 7c32001a lwre \$18,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c34001a lwre \$20,0\(\$1\)
+[ 0-9a-f]+: 26c1f800 addiu \$1,\$22,-2048
[ 0-9a-f]+: 7c35001a lwre \$21,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c37001a lwre \$23,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 00390821 addu \$1,\$1,\$25
-[ 0-9a-f]+: 7c38ff9a lwre \$24,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c3aff9a lwre \$26,-1\(\$1\)
-[ 0-9a-f]+: 2401f000 li \$1,-4096
-[ 0-9a-f]+: 003c0821 addu \$1,\$1,\$28
+[ 0-9a-f]+: 272107ff addiu \$1,\$25,2047
+[ 0-9a-f]+: 7c38001a lwre \$24,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c3a001a lwre \$26,0\(\$1\)
+[ 0-9a-f]+: 2781f000 addiu \$1,\$28,-4096
[ 0-9a-f]+: 7c3b001a lwre \$27,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c3d001a lwre \$29,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 003f0821 addu \$1,\$1,\$31
-[ 0-9a-f]+: 7c3eff9a lwre \$30,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c20ff9a lwre \$0,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 00230821 addu \$1,\$1,\$3
+[ 0-9a-f]+: 27e10fff addiu \$1,\$31,4095
+[ 0-9a-f]+: 7c3e001a lwre \$30,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c20001a lwre \$0,0\(\$1\)
+[ 0-9a-f]+: 24618000 addiu \$1,\$3,-32768
[ 0-9a-f]+: 7c22001a lwre \$2,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c24001a lwre \$4,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 00260821 addu \$1,\$1,\$6
-[ 0-9a-f]+: 7c25ff9a lwre \$5,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c27ff9a lwre \$7,-1\(\$1\)
+[ 0-9a-f]+: 24c17fff addiu \$1,\$6,32767
+[ 0-9a-f]+: 7c25001a lwre \$5,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c27001a lwre \$7,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 00290821 addu \$1,\$1,\$9
[ 0-9a-f]+: 7c28ff9a lwre \$8,-1\(\$1\)
@@ -730,65 +637,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c19801c sbe \$25,-256\(\$0\)
[ 0-9a-f]+: 7f7a7f9c sbe \$26,255\(\$27\)
[ 0-9a-f]+: 7c1c7f9c sbe \$28,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 003e0821 addu \$1,\$1,\$30
-[ 0-9a-f]+: 7c3d7f9c sbe \$29,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c3f7f9c sbe \$31,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00220821 addu \$1,\$1,\$2
-[ 0-9a-f]+: 7c20801c sbe \$0,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c23801c sbe \$3,-256\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00250821 addu \$1,\$1,\$5
+[ 0-9a-f]+: 27c1feff addiu \$1,\$30,-257
+[ 0-9a-f]+: 7c3d001c sbe \$29,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c3f001c sbe \$31,0\(\$1\)
+[ 0-9a-f]+: 24410100 addiu \$1,\$2,256
+[ 0-9a-f]+: 7c20001c sbe \$0,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c23001c sbe \$3,0\(\$1\)
+[ 0-9a-f]+: 24a1fe00 addiu \$1,\$5,-512
[ 0-9a-f]+: 7c24001c sbe \$4,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c26001c sbe \$6,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00280821 addu \$1,\$1,\$8
-[ 0-9a-f]+: 7c27ff9c sbe \$7,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c29ff9c sbe \$9,-1\(\$1\)
-[ 0-9a-f]+: 2401fc00 li \$1,-1024
-[ 0-9a-f]+: 002b0821 addu \$1,\$1,\$11
+[ 0-9a-f]+: 250101ff addiu \$1,\$8,511
+[ 0-9a-f]+: 7c27001c sbe \$7,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c29001c sbe \$9,0\(\$1\)
+[ 0-9a-f]+: 2561fc00 addiu \$1,\$11,-1024
[ 0-9a-f]+: 7c2a001c sbe \$10,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c2c001c sbe \$12,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 002e0821 addu \$1,\$1,\$14
-[ 0-9a-f]+: 7c2dff9c sbe \$13,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c2fff9c sbe \$15,-1\(\$1\)
-[ 0-9a-f]+: 2401f800 li \$1,-2048
-[ 0-9a-f]+: 00310821 addu \$1,\$1,\$17
+[ 0-9a-f]+: 25c103ff addiu \$1,\$14,1023
+[ 0-9a-f]+: 7c2d001c sbe \$13,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c2f001c sbe \$15,0\(\$1\)
+[ 0-9a-f]+: 2621f800 addiu \$1,\$17,-2048
[ 0-9a-f]+: 7c30001c sbe \$16,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c32001c sbe \$18,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 00340821 addu \$1,\$1,\$20
-[ 0-9a-f]+: 7c33ff9c sbe \$19,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c35ff9c sbe \$21,-1\(\$1\)
-[ 0-9a-f]+: 2401f000 li \$1,-4096
-[ 0-9a-f]+: 00370821 addu \$1,\$1,\$23
+[ 0-9a-f]+: 268107ff addiu \$1,\$20,2047
+[ 0-9a-f]+: 7c33001c sbe \$19,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c35001c sbe \$21,0\(\$1\)
+[ 0-9a-f]+: 26e1f000 addiu \$1,\$23,-4096
[ 0-9a-f]+: 7c36001c sbe \$22,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c38001c sbe \$24,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 003a0821 addu \$1,\$1,\$26
-[ 0-9a-f]+: 7c39ff9c sbe \$25,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c3bff9c sbe \$27,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 003d0821 addu \$1,\$1,\$29
+[ 0-9a-f]+: 27410fff addiu \$1,\$26,4095
+[ 0-9a-f]+: 7c39001c sbe \$25,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c3b001c sbe \$27,0\(\$1\)
+[ 0-9a-f]+: 27a18000 addiu \$1,\$29,-32768
[ 0-9a-f]+: 7c3c001c sbe \$28,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c3e001c sbe \$30,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c3fff9c sbe \$31,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c22ff9c sbe \$2,-1\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c3f001c sbe \$31,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c22001c sbe \$2,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 00240821 addu \$1,\$1,\$4
[ 0-9a-f]+: 7c23ff9c sbe \$3,-1\(\$1\)
@@ -819,66 +715,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c14801e sce \$20,-256\(\$0\)
[ 0-9a-f]+: 7ed57f9e sce \$21,255\(\$22\)
[ 0-9a-f]+: 7c177f9e sce \$23,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00390821 addu \$1,\$1,\$25
-[ 0-9a-f]+: 7c387f9e sce \$24,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c3a7f9e sce \$26,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 003c0821 addu \$1,\$1,\$28
-[ 0-9a-f]+: 7c3b801e sce \$27,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c3d801e sce \$29,-256\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 003f0821 addu \$1,\$1,\$31
+[ 0-9a-f]+: 2721feff addiu \$1,\$25,-257
+[ 0-9a-f]+: 7c38001e sce \$24,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c3a001e sce \$26,0\(\$1\)
+[ 0-9a-f]+: 27810100 addiu \$1,\$28,256
+[ 0-9a-f]+: 7c3b001e sce \$27,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c3d001e sce \$29,0\(\$1\)
+[ 0-9a-f]+: 27e1fe00 addiu \$1,\$31,-512
[ 0-9a-f]+: 7c3e001e sce \$30,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c20001e sce \$0,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00230821 addu \$1,\$1,\$3
-[ 0-9a-f]+: 7c22ff9e sce \$2,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c24ff9e sce \$4,-1\(\$1\)
-[ 0-9a-f]+: 2401fc00 li \$1,-1024
-[ 0-9a-f]+: 00260821 addu \$1,\$1,\$6
+[ 0-9a-f]+: 246101ff addiu \$1,\$3,511
+[ 0-9a-f]+: 7c22001e sce \$2,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c24001e sce \$4,0\(\$1\)
+[ 0-9a-f]+: 24c1fc00 addiu \$1,\$6,-1024
[ 0-9a-f]+: 7c25001e sce \$5,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c27001e sce \$7,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 00290821 addu \$1,\$1,\$9
-[ 0-9a-f]+: 7c28ff9e sce \$8,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c2aff9e sce \$10,-1\(\$1\)
-[ 0-9a-f]+: 2401f800 li \$1,-2048
-[ 0-9a-f]+: 002c0821 addu \$1,\$1,\$12
+[ 0-9a-f]+: 252103ff addiu \$1,\$9,1023
+[ 0-9a-f]+: 7c28001e sce \$8,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c2a001e sce \$10,0\(\$1\)
+[ 0-9a-f]+: 2581f800 addiu \$1,\$12,-2048
[ 0-9a-f]+: 7c2b001e sce \$11,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c2d001e sce \$13,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 002f0821 addu \$1,\$1,\$15
-[ 0-9a-f]+: 7c2eff9e sce \$14,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c30ff9e sce \$16,-1\(\$1\)
-[ 0-9a-f]+: 2401f000 li \$1,-4096
-[ 0-9a-f]+: 00320821 addu \$1,\$1,\$18
+[ 0-9a-f]+: 25e107ff addiu \$1,\$15,2047
+[ 0-9a-f]+: 7c2e001e sce \$14,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c30001e sce \$16,0\(\$1\)
+[ 0-9a-f]+: 2641f000 addiu \$1,\$18,-4096
[ 0-9a-f]+: 7c31001e sce \$17,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c33001e sce \$19,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 00350821 addu \$1,\$1,\$21
-[ 0-9a-f]+: 7c34ff9e sce \$20,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c36ff9e sce \$22,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 00380821 addu \$1,\$1,\$24
+[ 0-9a-f]+: 26a10fff addiu \$1,\$21,4095
+[ 0-9a-f]+: 7c34001e sce \$20,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c36001e sce \$22,0\(\$1\)
+[ 0-9a-f]+: 27018000 addiu \$1,\$24,-32768
[ 0-9a-f]+: 7c37001e sce \$23,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c39001e sce \$25,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 003b0821 addu \$1,\$1,\$27
-[ 0-9a-f]+: 7c3aff9e sce \$26,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c3cff9e sce \$28,-1\(\$1\)
+[ 0-9a-f]+: 27617fff addiu \$1,\$27,32767
+[ 0-9a-f]+: 7c3a001e sce \$26,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c3c001e sce \$28,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 003e0821 addu \$1,\$1,\$30
[ 0-9a-f]+: 7c3dff9e sce \$29,-1\(\$1\)
@@ -909,65 +793,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c0f801d she \$15,-256\(\$0\)
[ 0-9a-f]+: 7e307f9d she \$16,255\(\$17\)
[ 0-9a-f]+: 7c127f9d she \$18,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00340821 addu \$1,\$1,\$20
-[ 0-9a-f]+: 7c337f9d she \$19,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c357f9d she \$21,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00370821 addu \$1,\$1,\$23
-[ 0-9a-f]+: 7c36801d she \$22,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c38801d she \$24,-256\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 003a0821 addu \$1,\$1,\$26
+[ 0-9a-f]+: 2681feff addiu \$1,\$20,-257
+[ 0-9a-f]+: 7c33001d she \$19,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c35001d she \$21,0\(\$1\)
+[ 0-9a-f]+: 26e10100 addiu \$1,\$23,256
+[ 0-9a-f]+: 7c36001d she \$22,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c38001d she \$24,0\(\$1\)
+[ 0-9a-f]+: 2741fe00 addiu \$1,\$26,-512
[ 0-9a-f]+: 7c39001d she \$25,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c3b001d she \$27,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 003d0821 addu \$1,\$1,\$29
-[ 0-9a-f]+: 7c3cff9d she \$28,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c3eff9d she \$30,-1\(\$1\)
+[ 0-9a-f]+: 27a101ff addiu \$1,\$29,511
+[ 0-9a-f]+: 7c3c001d she \$28,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c3e001d she \$30,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c3f001d she \$31,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c22001d she \$2,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 00240821 addu \$1,\$1,\$4
-[ 0-9a-f]+: 7c23ff9d she \$3,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c25ff9d she \$5,-1\(\$1\)
-[ 0-9a-f]+: 2401f800 li \$1,-2048
-[ 0-9a-f]+: 00270821 addu \$1,\$1,\$7
+[ 0-9a-f]+: 248103ff addiu \$1,\$4,1023
+[ 0-9a-f]+: 7c23001d she \$3,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c25001d she \$5,0\(\$1\)
+[ 0-9a-f]+: 24e1f800 addiu \$1,\$7,-2048
[ 0-9a-f]+: 7c26001d she \$6,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c28001d she \$8,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 002a0821 addu \$1,\$1,\$10
-[ 0-9a-f]+: 7c29ff9d she \$9,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c2bff9d she \$11,-1\(\$1\)
-[ 0-9a-f]+: 2401f000 li \$1,-4096
-[ 0-9a-f]+: 002d0821 addu \$1,\$1,\$13
+[ 0-9a-f]+: 254107ff addiu \$1,\$10,2047
+[ 0-9a-f]+: 7c29001d she \$9,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c2b001d she \$11,0\(\$1\)
+[ 0-9a-f]+: 25a1f000 addiu \$1,\$13,-4096
[ 0-9a-f]+: 7c2c001d she \$12,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c2e001d she \$14,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 00300821 addu \$1,\$1,\$16
-[ 0-9a-f]+: 7c2fff9d she \$15,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c31ff9d she \$17,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 00330821 addu \$1,\$1,\$19
+[ 0-9a-f]+: 26010fff addiu \$1,\$16,4095
+[ 0-9a-f]+: 7c2f001d she \$15,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c31001d she \$17,0\(\$1\)
+[ 0-9a-f]+: 26618000 addiu \$1,\$19,-32768
[ 0-9a-f]+: 7c32001d she \$18,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c34001d she \$20,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 00360821 addu \$1,\$1,\$22
-[ 0-9a-f]+: 7c35ff9d she \$21,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c37ff9d she \$23,-1\(\$1\)
+[ 0-9a-f]+: 26c17fff addiu \$1,\$22,32767
+[ 0-9a-f]+: 7c35001d she \$21,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c37001d she \$23,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 00390821 addu \$1,\$1,\$25
[ 0-9a-f]+: 7c38ff9d she \$24,-1\(\$1\)
@@ -998,66 +871,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c0a801f swe \$10,-256\(\$0\)
[ 0-9a-f]+: 7d8b7f9f swe \$11,255\(\$12\)
[ 0-9a-f]+: 7c0d7f9f swe \$13,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 002f0821 addu \$1,\$1,\$15
-[ 0-9a-f]+: 7c2e7f9f swe \$14,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c307f9f swe \$16,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00320821 addu \$1,\$1,\$18
-[ 0-9a-f]+: 7c31801f swe \$17,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c33801f swe \$19,-256\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00350821 addu \$1,\$1,\$21
+[ 0-9a-f]+: 25e1feff addiu \$1,\$15,-257
+[ 0-9a-f]+: 7c2e001f swe \$14,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c30001f swe \$16,0\(\$1\)
+[ 0-9a-f]+: 26410100 addiu \$1,\$18,256
+[ 0-9a-f]+: 7c31001f swe \$17,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c33001f swe \$19,0\(\$1\)
+[ 0-9a-f]+: 26a1fe00 addiu \$1,\$21,-512
[ 0-9a-f]+: 7c34001f swe \$20,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c36001f swe \$22,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00380821 addu \$1,\$1,\$24
-[ 0-9a-f]+: 7c37ff9f swe \$23,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c39ff9f swe \$25,-1\(\$1\)
-[ 0-9a-f]+: 2401fc00 li \$1,-1024
-[ 0-9a-f]+: 003b0821 addu \$1,\$1,\$27
+[ 0-9a-f]+: 270101ff addiu \$1,\$24,511
+[ 0-9a-f]+: 7c37001f swe \$23,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c39001f swe \$25,0\(\$1\)
+[ 0-9a-f]+: 2761fc00 addiu \$1,\$27,-1024
[ 0-9a-f]+: 7c3a001f swe \$26,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c3c001f swe \$28,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 003e0821 addu \$1,\$1,\$30
-[ 0-9a-f]+: 7c3dff9f swe \$29,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c3fff9f swe \$31,-1\(\$1\)
-[ 0-9a-f]+: 2401f800 li \$1,-2048
-[ 0-9a-f]+: 00220821 addu \$1,\$1,\$2
+[ 0-9a-f]+: 27c103ff addiu \$1,\$30,1023
+[ 0-9a-f]+: 7c3d001f swe \$29,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c3f001f swe \$31,0\(\$1\)
+[ 0-9a-f]+: 2441f800 addiu \$1,\$2,-2048
[ 0-9a-f]+: 7c20001f swe \$0,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c23001f swe \$3,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 00250821 addu \$1,\$1,\$5
-[ 0-9a-f]+: 7c24ff9f swe \$4,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c26ff9f swe \$6,-1\(\$1\)
-[ 0-9a-f]+: 2401f000 li \$1,-4096
-[ 0-9a-f]+: 00280821 addu \$1,\$1,\$8
+[ 0-9a-f]+: 24a107ff addiu \$1,\$5,2047
+[ 0-9a-f]+: 7c24001f swe \$4,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c26001f swe \$6,0\(\$1\)
+[ 0-9a-f]+: 2501f000 addiu \$1,\$8,-4096
[ 0-9a-f]+: 7c27001f swe \$7,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c29001f swe \$9,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 002b0821 addu \$1,\$1,\$11
-[ 0-9a-f]+: 7c2aff9f swe \$10,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c2cff9f swe \$12,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 002e0821 addu \$1,\$1,\$14
+[ 0-9a-f]+: 25610fff addiu \$1,\$11,4095
+[ 0-9a-f]+: 7c2a001f swe \$10,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c2c001f swe \$12,0\(\$1\)
+[ 0-9a-f]+: 25c18000 addiu \$1,\$14,-32768
[ 0-9a-f]+: 7c2d001f swe \$13,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c2f001f swe \$15,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 00310821 addu \$1,\$1,\$17
-[ 0-9a-f]+: 7c30ff9f swe \$16,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c32ff9f swe \$18,-1\(\$1\)
+[ 0-9a-f]+: 26217fff addiu \$1,\$17,32767
+[ 0-9a-f]+: 7c30001f swe \$16,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c32001f swe \$18,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 00340821 addu \$1,\$1,\$20
[ 0-9a-f]+: 7c33ff9f swe \$19,-1\(\$1\)
@@ -1088,66 +949,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c058021 swle \$5,-256\(\$0\)
[ 0-9a-f]+: 7ce67fa1 swle \$6,255\(\$7\)
[ 0-9a-f]+: 7c087fa1 swle \$8,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 002a0821 addu \$1,\$1,\$10
-[ 0-9a-f]+: 7c297fa1 swle \$9,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c2b7fa1 swle \$11,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 002d0821 addu \$1,\$1,\$13
-[ 0-9a-f]+: 7c2c8021 swle \$12,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c2e8021 swle \$14,-256\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00300821 addu \$1,\$1,\$16
+[ 0-9a-f]+: 2541feff addiu \$1,\$10,-257
+[ 0-9a-f]+: 7c290021 swle \$9,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c2b0021 swle \$11,0\(\$1\)
+[ 0-9a-f]+: 25a10100 addiu \$1,\$13,256
+[ 0-9a-f]+: 7c2c0021 swle \$12,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c2e0021 swle \$14,0\(\$1\)
+[ 0-9a-f]+: 2601fe00 addiu \$1,\$16,-512
[ 0-9a-f]+: 7c2f0021 swle \$15,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c310021 swle \$17,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00330821 addu \$1,\$1,\$19
-[ 0-9a-f]+: 7c32ffa1 swle \$18,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c34ffa1 swle \$20,-1\(\$1\)
-[ 0-9a-f]+: 2401fc00 li \$1,-1024
-[ 0-9a-f]+: 00360821 addu \$1,\$1,\$22
+[ 0-9a-f]+: 266101ff addiu \$1,\$19,511
+[ 0-9a-f]+: 7c320021 swle \$18,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c340021 swle \$20,0\(\$1\)
+[ 0-9a-f]+: 26c1fc00 addiu \$1,\$22,-1024
[ 0-9a-f]+: 7c350021 swle \$21,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c370021 swle \$23,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 00390821 addu \$1,\$1,\$25
-[ 0-9a-f]+: 7c38ffa1 swle \$24,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c3affa1 swle \$26,-1\(\$1\)
-[ 0-9a-f]+: 2401f800 li \$1,-2048
-[ 0-9a-f]+: 003c0821 addu \$1,\$1,\$28
+[ 0-9a-f]+: 272103ff addiu \$1,\$25,1023
+[ 0-9a-f]+: 7c380021 swle \$24,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c3a0021 swle \$26,0\(\$1\)
+[ 0-9a-f]+: 2781f800 addiu \$1,\$28,-2048
[ 0-9a-f]+: 7c3b0021 swle \$27,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c3d0021 swle \$29,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 003f0821 addu \$1,\$1,\$31
-[ 0-9a-f]+: 7c3effa1 swle \$30,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c20ffa1 swle \$0,-1\(\$1\)
-[ 0-9a-f]+: 2401f000 li \$1,-4096
-[ 0-9a-f]+: 00230821 addu \$1,\$1,\$3
+[ 0-9a-f]+: 27e107ff addiu \$1,\$31,2047
+[ 0-9a-f]+: 7c3e0021 swle \$30,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c200021 swle \$0,0\(\$1\)
+[ 0-9a-f]+: 2461f000 addiu \$1,\$3,-4096
[ 0-9a-f]+: 7c220021 swle \$2,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c240021 swle \$4,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 00260821 addu \$1,\$1,\$6
-[ 0-9a-f]+: 7c25ffa1 swle \$5,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c27ffa1 swle \$7,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 00290821 addu \$1,\$1,\$9
+[ 0-9a-f]+: 24c10fff addiu \$1,\$6,4095
+[ 0-9a-f]+: 7c250021 swle \$5,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c270021 swle \$7,0\(\$1\)
+[ 0-9a-f]+: 25218000 addiu \$1,\$9,-32768
[ 0-9a-f]+: 7c280021 swle \$8,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c2a0021 swle \$10,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 002c0821 addu \$1,\$1,\$12
-[ 0-9a-f]+: 7c2bffa1 swle \$11,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c2dffa1 swle \$13,-1\(\$1\)
+[ 0-9a-f]+: 25817fff addiu \$1,\$12,32767
+[ 0-9a-f]+: 7c2b0021 swle \$11,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c2d0021 swle \$13,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 002f0821 addu \$1,\$1,\$15
[ 0-9a-f]+: 7c2effa1 swle \$14,-1\(\$1\)
@@ -1178,65 +1027,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c1f8022 swre \$31,-256\(\$0\)
[ 0-9a-f]+: 7c407fa2 swre \$0,255\(\$2\)
[ 0-9a-f]+: 7c037fa2 swre \$3,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00250821 addu \$1,\$1,\$5
-[ 0-9a-f]+: 7c247fa2 swre \$4,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c267fa2 swre \$6,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00280821 addu \$1,\$1,\$8
-[ 0-9a-f]+: 7c278022 swre \$7,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c298022 swre \$9,-256\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 002b0821 addu \$1,\$1,\$11
+[ 0-9a-f]+: 24a1feff addiu \$1,\$5,-257
+[ 0-9a-f]+: 7c240022 swre \$4,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c260022 swre \$6,0\(\$1\)
+[ 0-9a-f]+: 25010100 addiu \$1,\$8,256
+[ 0-9a-f]+: 7c270022 swre \$7,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c290022 swre \$9,0\(\$1\)
+[ 0-9a-f]+: 2561fe00 addiu \$1,\$11,-512
[ 0-9a-f]+: 7c2a0022 swre \$10,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c2c0022 swre \$12,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 002e0821 addu \$1,\$1,\$14
-[ 0-9a-f]+: 7c2dffa2 swre \$13,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c2fffa2 swre \$15,-1\(\$1\)
-[ 0-9a-f]+: 2401fc00 li \$1,-1024
-[ 0-9a-f]+: 00310821 addu \$1,\$1,\$17
+[ 0-9a-f]+: 25c101ff addiu \$1,\$14,511
+[ 0-9a-f]+: 7c2d0022 swre \$13,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c2f0022 swre \$15,0\(\$1\)
+[ 0-9a-f]+: 2621fc00 addiu \$1,\$17,-1024
[ 0-9a-f]+: 7c300022 swre \$16,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c320022 swre \$18,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 00340821 addu \$1,\$1,\$20
-[ 0-9a-f]+: 7c33ffa2 swre \$19,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c35ffa2 swre \$21,-1\(\$1\)
-[ 0-9a-f]+: 2401f800 li \$1,-2048
-[ 0-9a-f]+: 00370821 addu \$1,\$1,\$23
+[ 0-9a-f]+: 268103ff addiu \$1,\$20,1023
+[ 0-9a-f]+: 7c330022 swre \$19,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c350022 swre \$21,0\(\$1\)
+[ 0-9a-f]+: 26e1f800 addiu \$1,\$23,-2048
[ 0-9a-f]+: 7c360022 swre \$22,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c380022 swre \$24,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 003a0821 addu \$1,\$1,\$26
-[ 0-9a-f]+: 7c39ffa2 swre \$25,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c3bffa2 swre \$27,-1\(\$1\)
-[ 0-9a-f]+: 2401f000 li \$1,-4096
-[ 0-9a-f]+: 003d0821 addu \$1,\$1,\$29
+[ 0-9a-f]+: 274107ff addiu \$1,\$26,2047
+[ 0-9a-f]+: 7c390022 swre \$25,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c3b0022 swre \$27,0\(\$1\)
+[ 0-9a-f]+: 27a1f000 addiu \$1,\$29,-4096
[ 0-9a-f]+: 7c3c0022 swre \$28,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c3e0022 swre \$30,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c3fffa2 swre \$31,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c22ffa2 swre \$2,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 00240821 addu \$1,\$1,\$4
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c3f0022 swre \$31,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c220022 swre \$2,0\(\$1\)
+[ 0-9a-f]+: 24818000 addiu \$1,\$4,-32768
[ 0-9a-f]+: 7c230022 swre \$3,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c250022 swre \$5,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 00270821 addu \$1,\$1,\$7
-[ 0-9a-f]+: 7c26ffa2 swre \$6,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c28ffa2 swre \$8,-1\(\$1\)
+[ 0-9a-f]+: 24e17fff addiu \$1,\$7,32767
+[ 0-9a-f]+: 7c260022 swre \$6,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c280022 swre \$8,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 002a0821 addu \$1,\$1,\$10
[ 0-9a-f]+: 7c29ffa2 swre \$9,-1\(\$1\)
@@ -1267,66 +1105,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c1a801b cachee 0x1a,-256\(\$0\)
[ 0-9a-f]+: 7f9b7f9b cachee 0x1b,255\(\$28\)
[ 0-9a-f]+: 7c1d7f9b cachee 0x1d,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 003f0821 addu \$1,\$1,\$31
-[ 0-9a-f]+: 7c3e7f9b cachee 0x1e,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c207f9b cachee 0x0,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00230821 addu \$1,\$1,\$3
-[ 0-9a-f]+: 7c22801b cachee 0x2,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c24801b cachee 0x4,-256\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 00260821 addu \$1,\$1,\$6
+[ 0-9a-f]+: 27e1feff addiu \$1,\$31,-257
+[ 0-9a-f]+: 7c3e001b cachee 0x1e,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c20001b cachee 0x0,0\(\$1\)
+[ 0-9a-f]+: 24610100 addiu \$1,\$3,256
+[ 0-9a-f]+: 7c22001b cachee 0x2,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c24001b cachee 0x4,0\(\$1\)
+[ 0-9a-f]+: 24c1fe00 addiu \$1,\$6,-512
[ 0-9a-f]+: 7c25001b cachee 0x5,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c27001b cachee 0x7,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00290821 addu \$1,\$1,\$9
-[ 0-9a-f]+: 7c28ff9b cachee 0x8,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c2aff9b cachee 0xa,-1\(\$1\)
-[ 0-9a-f]+: 2401fc00 li \$1,-1024
-[ 0-9a-f]+: 002c0821 addu \$1,\$1,\$12
+[ 0-9a-f]+: 252101ff addiu \$1,\$9,511
+[ 0-9a-f]+: 7c28001b cachee 0x8,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c2a001b cachee 0xa,0\(\$1\)
+[ 0-9a-f]+: 2581fc00 addiu \$1,\$12,-1024
[ 0-9a-f]+: 7c2b001b cachee 0xb,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c2d001b cachee 0xd,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 002f0821 addu \$1,\$1,\$15
-[ 0-9a-f]+: 7c2eff9b cachee 0xe,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c30ff9b cachee 0x10,-1\(\$1\)
-[ 0-9a-f]+: 2401f800 li \$1,-2048
-[ 0-9a-f]+: 00320821 addu \$1,\$1,\$18
+[ 0-9a-f]+: 25e103ff addiu \$1,\$15,1023
+[ 0-9a-f]+: 7c2e001b cachee 0xe,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c30001b cachee 0x10,0\(\$1\)
+[ 0-9a-f]+: 2641f800 addiu \$1,\$18,-2048
[ 0-9a-f]+: 7c31001b cachee 0x11,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c33001b cachee 0x13,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 00350821 addu \$1,\$1,\$21
-[ 0-9a-f]+: 7c34ff9b cachee 0x14,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c36ff9b cachee 0x16,-1\(\$1\)
-[ 0-9a-f]+: 2401f000 li \$1,-4096
-[ 0-9a-f]+: 00380821 addu \$1,\$1,\$24
+[ 0-9a-f]+: 26a107ff addiu \$1,\$21,2047
+[ 0-9a-f]+: 7c34001b cachee 0x14,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c36001b cachee 0x16,0\(\$1\)
+[ 0-9a-f]+: 2701f000 addiu \$1,\$24,-4096
[ 0-9a-f]+: 7c37001b cachee 0x17,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c39001b cachee 0x19,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 003b0821 addu \$1,\$1,\$27
-[ 0-9a-f]+: 7c3aff9b cachee 0x1a,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c3cff9b cachee 0x1c,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 003e0821 addu \$1,\$1,\$30
+[ 0-9a-f]+: 27610fff addiu \$1,\$27,4095
+[ 0-9a-f]+: 7c3a001b cachee 0x1a,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c3c001b cachee 0x1c,0\(\$1\)
+[ 0-9a-f]+: 27c18000 addiu \$1,\$30,-32768
[ 0-9a-f]+: 7c3d001b cachee 0x1d,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c3f001b cachee 0x1f,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 00220821 addu \$1,\$1,\$2
-[ 0-9a-f]+: 7c20ff9b cachee 0x0,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c23ff9b cachee 0x3,-1\(\$1\)
+[ 0-9a-f]+: 24417fff addiu \$1,\$2,32767
+[ 0-9a-f]+: 7c20001b cachee 0x0,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c23001b cachee 0x3,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 00250821 addu \$1,\$1,\$5
[ 0-9a-f]+: 7c24ff9b cachee 0x4,-1\(\$1\)
@@ -1357,65 +1183,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 7c158023 prefe 0x15,-256\(\$0\)
[ 0-9a-f]+: 7ef67fa3 prefe 0x16,255\(\$23\)
[ 0-9a-f]+: 7c187fa3 prefe 0x18,255\(\$0\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 003a0821 addu \$1,\$1,\$26
-[ 0-9a-f]+: 7c397fa3 prefe 0x19,255\(\$1\)
-[ 0-9a-f]+: 2401fe00 li \$1,-512
-[ 0-9a-f]+: 7c3b7fa3 prefe 0x1b,255\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 003d0821 addu \$1,\$1,\$29
-[ 0-9a-f]+: 7c3c8023 prefe 0x1c,-256\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c3e8023 prefe 0x1e,-256\(\$1\)
+[ 0-9a-f]+: 2741feff addiu \$1,\$26,-257
+[ 0-9a-f]+: 7c390023 prefe 0x19,0\(\$1\)
+[ 0-9a-f]+: 2401feff li \$1,-257
+[ 0-9a-f]+: 7c3b0023 prefe 0x1b,0\(\$1\)
+[ 0-9a-f]+: 27a10100 addiu \$1,\$29,256
+[ 0-9a-f]+: 7c3c0023 prefe 0x1c,0\(\$1\)
+[ 0-9a-f]+: 24010100 li \$1,256
+[ 0-9a-f]+: 7c3e0023 prefe 0x1e,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c3f0023 prefe 0x1f,0\(\$1\)
[ 0-9a-f]+: 2401fe00 li \$1,-512
[ 0-9a-f]+: 7c220023 prefe 0x2,0\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 00240821 addu \$1,\$1,\$4
-[ 0-9a-f]+: 7c23ffa3 prefe 0x3,-1\(\$1\)
-[ 0-9a-f]+: 24010200 li \$1,512
-[ 0-9a-f]+: 7c25ffa3 prefe 0x5,-1\(\$1\)
-[ 0-9a-f]+: 2401fc00 li \$1,-1024
-[ 0-9a-f]+: 00270821 addu \$1,\$1,\$7
+[ 0-9a-f]+: 248101ff addiu \$1,\$4,511
+[ 0-9a-f]+: 7c230023 prefe 0x3,0\(\$1\)
+[ 0-9a-f]+: 240101ff li \$1,511
+[ 0-9a-f]+: 7c250023 prefe 0x5,0\(\$1\)
+[ 0-9a-f]+: 24e1fc00 addiu \$1,\$7,-1024
[ 0-9a-f]+: 7c260023 prefe 0x6,0\(\$1\)
[ 0-9a-f]+: 2401fc00 li \$1,-1024
[ 0-9a-f]+: 7c280023 prefe 0x8,0\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 002a0821 addu \$1,\$1,\$10
-[ 0-9a-f]+: 7c29ffa3 prefe 0x9,-1\(\$1\)
-[ 0-9a-f]+: 24010400 li \$1,1024
-[ 0-9a-f]+: 7c2bffa3 prefe 0xb,-1\(\$1\)
-[ 0-9a-f]+: 2401f800 li \$1,-2048
-[ 0-9a-f]+: 002d0821 addu \$1,\$1,\$13
+[ 0-9a-f]+: 254103ff addiu \$1,\$10,1023
+[ 0-9a-f]+: 7c290023 prefe 0x9,0\(\$1\)
+[ 0-9a-f]+: 240103ff li \$1,1023
+[ 0-9a-f]+: 7c2b0023 prefe 0xb,0\(\$1\)
+[ 0-9a-f]+: 25a1f800 addiu \$1,\$13,-2048
[ 0-9a-f]+: 7c2c0023 prefe 0xc,0\(\$1\)
[ 0-9a-f]+: 2401f800 li \$1,-2048
[ 0-9a-f]+: 7c2e0023 prefe 0xe,0\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 00300821 addu \$1,\$1,\$16
-[ 0-9a-f]+: 7c2fffa3 prefe 0xf,-1\(\$1\)
-[ 0-9a-f]+: 24010800 li \$1,2048
-[ 0-9a-f]+: 7c31ffa3 prefe 0x11,-1\(\$1\)
-[ 0-9a-f]+: 2401f000 li \$1,-4096
-[ 0-9a-f]+: 00330821 addu \$1,\$1,\$19
+[ 0-9a-f]+: 260107ff addiu \$1,\$16,2047
+[ 0-9a-f]+: 7c2f0023 prefe 0xf,0\(\$1\)
+[ 0-9a-f]+: 240107ff li \$1,2047
+[ 0-9a-f]+: 7c310023 prefe 0x11,0\(\$1\)
+[ 0-9a-f]+: 2661f000 addiu \$1,\$19,-4096
[ 0-9a-f]+: 7c320023 prefe 0x12,0\(\$1\)
[ 0-9a-f]+: 2401f000 li \$1,-4096
[ 0-9a-f]+: 7c340023 prefe 0x14,0\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 00360821 addu \$1,\$1,\$22
-[ 0-9a-f]+: 7c35ffa3 prefe 0x15,-1\(\$1\)
-[ 0-9a-f]+: 24011000 li \$1,4096
-[ 0-9a-f]+: 7c37ffa3 prefe 0x17,-1\(\$1\)
-[ 0-9a-f]+: 24018000 li \$1,-32768
-[ 0-9a-f]+: 00390821 addu \$1,\$1,\$25
+[ 0-9a-f]+: 26c10fff addiu \$1,\$22,4095
+[ 0-9a-f]+: 7c350023 prefe 0x15,0\(\$1\)
+[ 0-9a-f]+: 24010fff li \$1,4095
+[ 0-9a-f]+: 7c370023 prefe 0x17,0\(\$1\)
+[ 0-9a-f]+: 27218000 addiu \$1,\$25,-32768
[ 0-9a-f]+: 7c380023 prefe 0x18,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 7c3a0023 prefe 0x1a,0\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 003c0821 addu \$1,\$1,\$28
-[ 0-9a-f]+: 7c3bffa3 prefe 0x1b,-1\(\$1\)
-[ 0-9a-f]+: 34018000 li \$1,0x8000
-[ 0-9a-f]+: 7c3dffa3 prefe 0x1d,-1\(\$1\)
+[ 0-9a-f]+: 27817fff addiu \$1,\$28,32767
+[ 0-9a-f]+: 7c3b0023 prefe 0x1b,0\(\$1\)
+[ 0-9a-f]+: 24017fff li \$1,32767
+[ 0-9a-f]+: 7c3d0023 prefe 0x1d,0\(\$1\)
[ 0-9a-f]+: 24018000 li \$1,-32768
[ 0-9a-f]+: 003f0821 addu \$1,\$1,\$31
[ 0-9a-f]+: 7c3effa3 prefe 0x1e,-1\(\$1\)
@@ -1442,4 +1257,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 24210000 addiu \$1,\$1,0
[ 0-9a-f]+: R_MIPS_LO16 MYDATA
[ 0-9a-f]+: 7c2d0023 prefe 0xd,0\(\$1\)
+[ 0-9a-f]+: 24c10000 addiu \$1,\$6,0
+ [ 0-9a-f]+: R_MIPS_LO16 foo
+[ 0-9a-f]+: 7c250023 prefe 0x5,0\(\$1\)
#pass
diff --git a/gas/testsuite/gas/mips/eva.s b/gas/testsuite/gas/mips/eva.s
index f002e35..f7bea00 100644
--- a/gas/testsuite/gas/mips/eva.s
+++ b/gas/testsuite/gas/mips/eva.s
@@ -610,3 +610,4 @@ test_eva:
prefe 10,2147483647
prefe 11,($12)
prefe 13,MYDATA
+ prefe 5,%lo(foo)($6)
diff --git a/gas/testsuite/gas/mips/l_d-reloc.d b/gas/testsuite/gas/mips/l_d-reloc.d
new file mode 100644
index 0000000..59c327b
--- /dev/null
+++ b/gas/testsuite/gas/mips/l_d-reloc.d
@@ -0,0 +1,86 @@
+#as: -32 -EB -mips1
+#objdump: -dr --prefix-addresses -Mgpr-names=numeric
+#name: LDC1 with relocation operators
+
+.*file format.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$5\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$5\)
+[0-9a-f]+ <[^>]*> lwc1 \$f5,32763\(\$5\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,32767\(\$5\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,32764
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,32767
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$1\)
+[0-9a-f]+ <[^>]*> lui \$1,0x1
+[0-9a-f]+ <[^>]*> addu \$1,\$5,\$1
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32768\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32764\(\$1\)
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> addu \$1,\$5,\$1
+[0-9a-f]+ <[^>]*> lwc1 \$f5,32763\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,32767\(\$1\)
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> ori \$1,\$1,0x7ffc
+[0-9a-f]+ <[^>]*> addu \$1,\$5,\$1
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$1\)
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> ori \$1,\$1,0x7fff
+[0-9a-f]+ <[^>]*> addu \$1,\$5,\$1
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$1\)
+[0-9a-f]+ <[^>]*> lui \$1,0x4
+[0-9a-f]+ <[^>]*> addu \$1,\$5,\$1
+[0-9a-f]+ <[^>]*> lwc1 \$f5,-32768\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,-32764\(\$1\)
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> li \$1,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$1\)
+[0-9a-f]+ <[^>]*> li \$1,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$0\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$0\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> li \$1,-30875
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$1\)
+[0-9a-f]+ <[^>]*> li \$1,4661
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$1\)
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$5\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$5\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,-30875
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,4661
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,-30875
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,4661
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lwc1 \$f5,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwc1 \$f4,4\(\$1\)
+#pass
diff --git a/gas/testsuite/gas/mips/l_d-reloc.s b/gas/testsuite/gas/mips/l_d-reloc.s
new file mode 100644
index 0000000..8608f13
--- /dev/null
+++ b/gas/testsuite/gas/mips/l_d-reloc.s
@@ -0,0 +1,26 @@
+ .ent func
+func:
+ l.d $f4,($5)
+ l.d $f4,0x7ffb($5)
+ l.d $f4,0x7ffc($5)
+ l.d $f4,0x7fff($5)
+ l.d $f4,0x8000($5)
+ l.d $f4,0x37ffb($5)
+ l.d $f4,0x37ffc($5)
+ l.d $f4,0x37fff($5)
+ l.d $f4,0x38000($5)
+
+ l.d $f4,%lo(foo)
+ l.d $f4,%hi(foo)
+ l.d $f4,%gp_rel(foo)
+ l.d $f4,%lo(0x12348765)
+ l.d $f4,%hi(0x12348765)
+
+ l.d $f4,%lo(foo)($5)
+ l.d $f4,%hi(foo)($5)
+ l.d $f4,%gp_rel(foo)($5)
+ l.d $f4,%lo(0x12348765)($5)
+ l.d $f4,%hi(0x12348765)($5)
+ l.d $f4,%lo(foo+0x12348765)($5)
+ l.d $f4,%hi(foo+0x12348765)($5)
+ .end func
diff --git a/gas/testsuite/gas/mips/ld-reloc.d b/gas/testsuite/gas/mips/ld-reloc.d
new file mode 100644
index 0000000..cd8804f
--- /dev/null
+++ b/gas/testsuite/gas/mips/ld-reloc.d
@@ -0,0 +1,114 @@
+#as: -32
+#objdump: -dr --prefix-addresses -Mgpr-names=numeric
+#name: LD with relocation operators
+
+.*file format.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$4\)
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$4\)
+[0-9a-f]+ <[^>]*> lw \$5,32767\(\$4\)
+[0-9a-f]+ <[^>]*> lw \$4,32763\(\$4\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,32764
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,32767
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> lui \$1,0x1
+[0-9a-f]+ <[^>]*> addu \$1,\$4,\$1
+[0-9a-f]+ <[^>]*> lw \$4,-32768\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,-32764\(\$1\)
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$5\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$5\)
+[0-9a-f]+ <[^>]*> lw \$4,32763\(\$5\)
+[0-9a-f]+ <[^>]*> lw \$5,32767\(\$5\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,32764
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,32767
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> lui \$1,0x1
+[0-9a-f]+ <[^>]*> addu \$1,\$5,\$1
+[0-9a-f]+ <[^>]*> lw \$4,-32768\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,-32764\(\$1\)
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> addu \$1,\$5,\$1
+[0-9a-f]+ <[^>]*> lw \$4,32763\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,32767\(\$1\)
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> ori \$1,\$1,0x7ffc
+[0-9a-f]+ <[^>]*> addu \$1,\$5,\$1
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> ori \$1,\$1,0x7fff
+[0-9a-f]+ <[^>]*> addu \$1,\$5,\$1
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> lui \$1,0x4
+[0-9a-f]+ <[^>]*> addu \$1,\$5,\$1
+[0-9a-f]+ <[^>]*> lw \$4,-32768\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,-32764\(\$1\)
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> li \$1,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> li \$1,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$0\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$0\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> li \$1,-30875
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> li \$1,4661
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$4\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$4\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$5\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$5\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,-30875
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,4661
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,-30875
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,4661
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lw \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lw \$5,4\(\$1\)
+#pass
diff --git a/gas/testsuite/gas/mips/ld-reloc.s b/gas/testsuite/gas/mips/ld-reloc.s
new file mode 100644
index 0000000..00bc7d9
--- /dev/null
+++ b/gas/testsuite/gas/mips/ld-reloc.s
@@ -0,0 +1,36 @@
+ .ent func
+func:
+ ld $4,($4)
+ ld $4,0x7ffb($4)
+ ld $4,0x7ffc($4)
+ ld $4,0x7fff($4)
+ ld $4,0x8000($4)
+
+ ld $4,($5)
+ ld $4,0x7ffb($5)
+ ld $4,0x7ffc($5)
+ ld $4,0x7fff($5)
+ ld $4,0x8000($5)
+ ld $4,0x37ffb($5)
+ ld $4,0x37ffc($5)
+ ld $4,0x37fff($5)
+ ld $4,0x38000($5)
+
+ ld $4,%lo(foo)
+ ld $4,%hi(foo)
+ ld $4,%gp_rel(foo)
+ ld $4,%lo(0x12348765)
+ ld $4,%hi(0x12348765)
+
+ ld $4,%lo(foo)($4)
+ ld $4,%hi(foo)($4)
+ ld $4,%gp_rel(foo)($4)
+
+ ld $4,%lo(foo)($5)
+ ld $4,%hi(foo)($5)
+ ld $4,%gp_rel(foo)($5)
+ ld $4,%lo(0x12348765)($5)
+ ld $4,%hi(0x12348765)($5)
+ ld $4,%lo(foo+0x12348765)($5)
+ ld $4,%hi(foo+0x12348765)($5)
+ .end func
diff --git a/gas/testsuite/gas/mips/ldstla-32-shared.d b/gas/testsuite/gas/mips/ldstla-32-shared.d
index 45f4772..3b2ff30 100644
--- a/gas/testsuite/gas/mips/ldstla-32-shared.d
+++ b/gas/testsuite/gas/mips/ldstla-32-shared.d
@@ -26,14 +26,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 00810821 addu at,a0,at
[ 0-9a-f]+: 8c224567 lw v0,17767\(at\)
[ 0-9a-f]+: 8c23456b lw v1,17771\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: 00810821 addu at,a0,at
-[ 0-9a-f]+: 8c220000 lw v0,0\(at\)
-[ 0-9a-f]+: 8c230004 lw v1,4\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: 00810821 addu at,a0,at
-[ 0-9a-f]+: 8c22ffff lw v0,-1\(at\)
-[ 0-9a-f]+: 8c230003 lw v1,3\(at\)
+[ 0-9a-f]+: 8c820000 lw v0,0\(a0\)
+[ 0-9a-f]+: 8c830004 lw v1,4\(a0\)
+[ 0-9a-f]+: 8c82ffff lw v0,-1\(a0\)
+[ 0-9a-f]+: 8c830003 lw v1,3\(a0\)
[ 0-9a-f]+: 3c01abce lui at,0xabce
[ 0-9a-f]+: 00810821 addu at,a0,at
[ 0-9a-f]+: 8c22ef01 lw v0,-4351\(at\)
@@ -66,12 +62,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 3c010123 lui at,0x123
[ 0-9a-f]+: 8c224567 lw v0,17767\(at\)
[ 0-9a-f]+: 8c23456b lw v1,17771\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: 8c220000 lw v0,0\(at\)
-[ 0-9a-f]+: 8c230004 lw v1,4\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: 8c22ffff lw v0,-1\(at\)
-[ 0-9a-f]+: 8c230003 lw v1,3\(at\)
+[ 0-9a-f]+: 8c020000 lw v0,0\(zero\)
+[ 0-9a-f]+: 8c030004 lw v1,4\(zero\)
+[ 0-9a-f]+: 8c02ffff lw v0,-1\(zero\)
+[ 0-9a-f]+: 8c030003 lw v1,3\(zero\)
[ 0-9a-f]+: 3c01abce lui at,0xabce
[ 0-9a-f]+: 8c22ef01 lw v0,-4351\(at\)
[ 0-9a-f]+: 8c23ef05 lw v1,-4347\(at\)
@@ -104,14 +98,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 00810821 addu at,a0,at
[ 0-9a-f]+: ac224567 sw v0,17767\(at\)
[ 0-9a-f]+: ac23456b sw v1,17771\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: 00810821 addu at,a0,at
-[ 0-9a-f]+: ac220000 sw v0,0\(at\)
-[ 0-9a-f]+: ac230004 sw v1,4\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: 00810821 addu at,a0,at
-[ 0-9a-f]+: ac22ffff sw v0,-1\(at\)
-[ 0-9a-f]+: ac230003 sw v1,3\(at\)
+[ 0-9a-f]+: ac820000 sw v0,0\(a0\)
+[ 0-9a-f]+: ac830004 sw v1,4\(a0\)
+[ 0-9a-f]+: ac82ffff sw v0,-1\(a0\)
+[ 0-9a-f]+: ac830003 sw v1,3\(a0\)
[ 0-9a-f]+: 3c01abce lui at,0xabce
[ 0-9a-f]+: 00810821 addu at,a0,at
[ 0-9a-f]+: ac22ef01 sw v0,-4351\(at\)
@@ -144,12 +134,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 3c010123 lui at,0x123
[ 0-9a-f]+: ac224567 sw v0,17767\(at\)
[ 0-9a-f]+: ac23456b sw v1,17771\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: ac220000 sw v0,0\(at\)
-[ 0-9a-f]+: ac230004 sw v1,4\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: ac22ffff sw v0,-1\(at\)
-[ 0-9a-f]+: ac230003 sw v1,3\(at\)
+[ 0-9a-f]+: ac020000 sw v0,0\(zero\)
+[ 0-9a-f]+: ac030004 sw v1,4\(zero\)
+[ 0-9a-f]+: ac02ffff sw v0,-1\(zero\)
+[ 0-9a-f]+: ac030003 sw v1,3\(zero\)
[ 0-9a-f]+: 3c01abce lui at,0xabce
[ 0-9a-f]+: ac22ef01 sw v0,-4351\(at\)
[ 0-9a-f]+: ac23ef05 sw v1,-4347\(at\)
diff --git a/gas/testsuite/gas/mips/ldstla-32.d b/gas/testsuite/gas/mips/ldstla-32.d
index 42ed481..b9a1f4b 100644
--- a/gas/testsuite/gas/mips/ldstla-32.d
+++ b/gas/testsuite/gas/mips/ldstla-32.d
@@ -26,14 +26,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 00810821 addu at,a0,at
[ 0-9a-f]+: 8c224567 lw v0,17767\(at\)
[ 0-9a-f]+: 8c23456b lw v1,17771\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: 00810821 addu at,a0,at
-[ 0-9a-f]+: 8c220000 lw v0,0\(at\)
-[ 0-9a-f]+: 8c230004 lw v1,4\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: 00810821 addu at,a0,at
-[ 0-9a-f]+: 8c22ffff lw v0,-1\(at\)
-[ 0-9a-f]+: 8c230003 lw v1,3\(at\)
+[ 0-9a-f]+: 8c820000 lw v0,0\(a0\)
+[ 0-9a-f]+: 8c830004 lw v1,4\(a0\)
+[ 0-9a-f]+: 8c82ffff lw v0,-1\(a0\)
+[ 0-9a-f]+: 8c830003 lw v1,3\(a0\)
[ 0-9a-f]+: 3c01abce lui at,0xabce
[ 0-9a-f]+: 00810821 addu at,a0,at
[ 0-9a-f]+: 8c22ef01 lw v0,-4351\(at\)
@@ -66,12 +62,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 3c010123 lui at,0x123
[ 0-9a-f]+: 8c224567 lw v0,17767\(at\)
[ 0-9a-f]+: 8c23456b lw v1,17771\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: 8c220000 lw v0,0\(at\)
-[ 0-9a-f]+: 8c230004 lw v1,4\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: 8c22ffff lw v0,-1\(at\)
-[ 0-9a-f]+: 8c230003 lw v1,3\(at\)
+[ 0-9a-f]+: 8c020000 lw v0,0\(zero\)
+[ 0-9a-f]+: 8c030004 lw v1,4\(zero\)
+[ 0-9a-f]+: 8c02ffff lw v0,-1\(zero\)
+[ 0-9a-f]+: 8c030003 lw v1,3\(zero\)
[ 0-9a-f]+: 3c01abce lui at,0xabce
[ 0-9a-f]+: 8c22ef01 lw v0,-4351\(at\)
[ 0-9a-f]+: 8c23ef05 lw v1,-4347\(at\)
@@ -104,14 +98,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 00810821 addu at,a0,at
[ 0-9a-f]+: ac224567 sw v0,17767\(at\)
[ 0-9a-f]+: ac23456b sw v1,17771\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: 00810821 addu at,a0,at
-[ 0-9a-f]+: ac220000 sw v0,0\(at\)
-[ 0-9a-f]+: ac230004 sw v1,4\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: 00810821 addu at,a0,at
-[ 0-9a-f]+: ac22ffff sw v0,-1\(at\)
-[ 0-9a-f]+: ac230003 sw v1,3\(at\)
+[ 0-9a-f]+: ac820000 sw v0,0\(a0\)
+[ 0-9a-f]+: ac830004 sw v1,4\(a0\)
+[ 0-9a-f]+: ac82ffff sw v0,-1\(a0\)
+[ 0-9a-f]+: ac830003 sw v1,3\(a0\)
[ 0-9a-f]+: 3c01abce lui at,0xabce
[ 0-9a-f]+: 00810821 addu at,a0,at
[ 0-9a-f]+: ac22ef01 sw v0,-4351\(at\)
@@ -144,12 +134,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 3c010123 lui at,0x123
[ 0-9a-f]+: ac224567 sw v0,17767\(at\)
[ 0-9a-f]+: ac23456b sw v1,17771\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: ac220000 sw v0,0\(at\)
-[ 0-9a-f]+: ac230004 sw v1,4\(at\)
-[ 0-9a-f]+: 3c010000 lui at,0x0
-[ 0-9a-f]+: ac22ffff sw v0,-1\(at\)
-[ 0-9a-f]+: ac230003 sw v1,3\(at\)
+[ 0-9a-f]+: ac020000 sw v0,0\(zero\)
+[ 0-9a-f]+: ac030004 sw v1,4\(zero\)
+[ 0-9a-f]+: ac02ffff sw v0,-1\(zero\)
+[ 0-9a-f]+: ac030003 sw v1,3\(zero\)
[ 0-9a-f]+: 3c01abce lui at,0xabce
[ 0-9a-f]+: ac22ef01 sw v0,-4351\(at\)
[ 0-9a-f]+: ac23ef05 sw v1,-4347\(at\)
diff --git a/gas/testsuite/gas/mips/mcu.d b/gas/testsuite/gas/mips/mcu.d
index 06e5bae..91410ed 100644
--- a/gas/testsuite/gas/mips/mcu.d
+++ b/gas/testsuite/gas/mips/mcu.d
@@ -23,17 +23,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 07e77000 aclr 0x7,0\(ra\)
[ 0-9a-f]+: 07e777ff aclr 0x7,2047\(ra\)
[ 0-9a-f]+: 07e77800 aclr 0x7,-2048\(ra\)
-[ 0-9a-f]+: 24011000 li at,4096
-[ 0-9a-f]+: 003f0821 addu at,at,ra
-[ 0-9a-f]+: 04277800 aclr 0x7,-2048\(at\)
-[ 0-9a-f]+: 2401f000 li at,-4096
-[ 0-9a-f]+: 003f0821 addu at,at,ra
-[ 0-9a-f]+: 042777ff aclr 0x7,2047\(at\)
-[ 0-9a-f]+: 34018000 li at,0x8000
-[ 0-9a-f]+: 003f0821 addu at,at,ra
-[ 0-9a-f]+: 04277fff aclr 0x7,-1\(at\)
-[ 0-9a-f]+: 24018000 li at,-32768
-[ 0-9a-f]+: 003f0821 addu at,at,ra
+[ 0-9a-f]+: 27e10800 addiu at,ra,2048
+[ 0-9a-f]+: 04277000 aclr 0x7,0\(at\)
+[ 0-9a-f]+: 27e1f7ff addiu at,ra,-2049
+[ 0-9a-f]+: 04277000 aclr 0x7,0\(at\)
+[ 0-9a-f]+: 27e17fff addiu at,ra,32767
+[ 0-9a-f]+: 04277000 aclr 0x7,0\(at\)
+[ 0-9a-f]+: 27e18000 addiu at,ra,-32768
[ 0-9a-f]+: 04277000 aclr 0x7,0\(at\)
[ 0-9a-f]+: 3c010001 lui at,0x1
[ 0-9a-f]+: 00240821 addu at,at,a0
@@ -44,15 +40,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 3c01ffff lui at,0xffff
[ 0-9a-f]+: 00240821 addu at,at,a0
[ 0-9a-f]+: 04277000 aclr 0x7,0\(at\)
-[ 0-9a-f]+: 24018000 li at,-32768
-[ 0-9a-f]+: 00240821 addu at,at,a0
+[ 0-9a-f]+: 24818000 addiu at,a0,-32768
[ 0-9a-f]+: 04277000 aclr 0x7,0\(at\)
[ 0-9a-f]+: 3c01ffff lui at,0xffff
[ 0-9a-f]+: 00240821 addu at,at,a0
[ 0-9a-f]+: 04277001 aclr 0x7,1\(at\)
-[ 0-9a-f]+: 24018000 li at,-32768
-[ 0-9a-f]+: 00240821 addu at,at,a0
-[ 0-9a-f]+: 04277001 aclr 0x7,1\(at\)
+[ 0-9a-f]+: 24818001 addiu at,a0,-32767
+[ 0-9a-f]+: 04277000 aclr 0x7,0\(at\)
[ 0-9a-f]+: 3c01f000 lui at,0xf000
[ 0-9a-f]+: 00240821 addu at,at,a0
[ 0-9a-f]+: 04277000 aclr 0x7,0\(at\)
@@ -81,17 +75,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 07e7f000 aset 0x7,0\(ra\)
[ 0-9a-f]+: 07e7f7ff aset 0x7,2047\(ra\)
[ 0-9a-f]+: 07e7f800 aset 0x7,-2048\(ra\)
-[ 0-9a-f]+: 24011000 li at,4096
-[ 0-9a-f]+: 003f0821 addu at,at,ra
-[ 0-9a-f]+: 0427f800 aset 0x7,-2048\(at\)
-[ 0-9a-f]+: 2401f000 li at,-4096
-[ 0-9a-f]+: 003f0821 addu at,at,ra
-[ 0-9a-f]+: 0427f7ff aset 0x7,2047\(at\)
-[ 0-9a-f]+: 34018000 li at,0x8000
-[ 0-9a-f]+: 003f0821 addu at,at,ra
-[ 0-9a-f]+: 0427ffff aset 0x7,-1\(at\)
-[ 0-9a-f]+: 24018000 li at,-32768
-[ 0-9a-f]+: 003f0821 addu at,at,ra
+[ 0-9a-f]+: 27e10800 addiu at,ra,2048
+[ 0-9a-f]+: 0427f000 aset 0x7,0\(at\)
+[ 0-9a-f]+: 27e1f7ff addiu at,ra,-2049
+[ 0-9a-f]+: 0427f000 aset 0x7,0\(at\)
+[ 0-9a-f]+: 27e17fff addiu at,ra,32767
+[ 0-9a-f]+: 0427f000 aset 0x7,0\(at\)
+[ 0-9a-f]+: 27e18000 addiu at,ra,-32768
[ 0-9a-f]+: 0427f000 aset 0x7,0\(at\)
[ 0-9a-f]+: 3c010001 lui at,0x1
[ 0-9a-f]+: 00240821 addu at,at,a0
@@ -102,15 +92,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 3c01ffff lui at,0xffff
[ 0-9a-f]+: 00240821 addu at,at,a0
[ 0-9a-f]+: 0427f000 aset 0x7,0\(at\)
-[ 0-9a-f]+: 24018000 li at,-32768
-[ 0-9a-f]+: 00240821 addu at,at,a0
+[ 0-9a-f]+: 24818000 addiu at,a0,-32768
[ 0-9a-f]+: 0427f000 aset 0x7,0\(at\)
[ 0-9a-f]+: 3c01ffff lui at,0xffff
[ 0-9a-f]+: 00240821 addu at,at,a0
[ 0-9a-f]+: 0427f001 aset 0x7,1\(at\)
-[ 0-9a-f]+: 24018000 li at,-32768
-[ 0-9a-f]+: 00240821 addu at,at,a0
-[ 0-9a-f]+: 0427f001 aset 0x7,1\(at\)
+[ 0-9a-f]+: 24818001 addiu at,a0,-32767
+[ 0-9a-f]+: 0427f000 aset 0x7,0\(at\)
[ 0-9a-f]+: 3c01f000 lui at,0xf000
[ 0-9a-f]+: 00240821 addu at,at,a0
[ 0-9a-f]+: 0427f000 aset 0x7,0\(at\)
diff --git a/gas/testsuite/gas/mips/micromips-insn32.d b/gas/testsuite/gas/mips/micromips-insn32.d
index 94d0f89..5725043 100644
--- a/gas/testsuite/gas/mips/micromips-insn32.d
+++ b/gas/testsuite/gas/mips/micromips-insn32.d
@@ -12,10 +12,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6000 2000 pref 0x0,0\(zero\)
[ 0-9a-f]+: 6000 27ff pref 0x0,2047\(zero\)
[ 0-9a-f]+: 6000 2800 pref 0x0,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 6001 2800 pref 0x0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 6001 27ff pref 0x0,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 6001 2000 pref 0x0,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 6001 2000 pref 0x0,0\(at\)
[ 0-9a-f]+: 6000 2000 pref 0x0,0\(zero\)
[ 0-9a-f]+: 6000 2000 pref 0x0,0\(zero\)
[ 0-9a-f]+: 6020 2000 pref 0x1,0\(zero\)
@@ -29,27 +29,23 @@ Disassembly of section \.text:
[ 0-9a-f]+: 60e0 2e00 pref 0x7,-512\(zero\)
[ 0-9a-f]+: 63e0 27ff pref 0x1f,2047\(zero\)
[ 0-9a-f]+: 63e0 2800 pref 0x1f,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 63e1 2800 pref 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 63e1 27ff pref 0x1f,2047\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 2fff pref 0x3,-1\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
[ 0-9a-f]+: 63e2 27ff pref 0x1f,2047\(v0\)
[ 0-9a-f]+: 63e2 2800 pref 0x1f,-2048\(v0\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 63e1 2800 pref 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 63e1 27ff pref 0x1f,2047\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 6061 2fff pref 0x3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
+[ 0-9a-f]+: 3022 0800 addiu at,v0,2048
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3022 f7ff addiu at,v0,-2049
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3022 7fff addiu at,v0,32767
+[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
+[ 0-9a-f]+: 3022 8000 addiu at,v0,-32768
[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
[ 0-9a-f]+: 0000 0000 nop
[ 0-9a-f]+: 0000 0000 nop
@@ -805,19 +801,17 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2000 6000 cache 0x0,0\(zero\)
[ 0-9a-f]+: 2000 6800 cache 0x0,-2048\(zero\)
[ 0-9a-f]+: 2000 67ff cache 0x0,2047\(zero\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 2001 67ff cache 0x0,2047\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 2001 6800 cache 0x0,-2048\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
[ 0-9a-f]+: 2002 6000 cache 0x0,0\(v0\)
[ 0-9a-f]+: 2002 6800 cache 0x0,-2048\(v0\)
[ 0-9a-f]+: 2002 67ff cache 0x0,2047\(v0\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 2001 67ff cache 0x0,2047\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 2001 6800 cache 0x0,-2048\(at\)
+[ 0-9a-f]+: 3022 f7ff addiu at,v0,-2049
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
+[ 0-9a-f]+: 3022 0800 addiu at,v0,2048
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
[ 0-9a-f]+: 2000 6000 cache 0x0,0\(zero\)
[ 0-9a-f]+: 2000 6000 cache 0x0,0\(zero\)
[ 0-9a-f]+: 2020 6000 cache 0x1,0\(zero\)
@@ -834,12 +828,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 23e1 6800 cache 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 23e1 67ff cache 0x1f,2047\(at\)
+[ 0-9a-f]+: 3023 0800 addiu at,v1,2048
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
+[ 0-9a-f]+: 3023 f7ff addiu at,v1,-2049
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 23e1 6001 cache 0x1f,1\(at\)
@@ -855,10 +847,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 23e1 6fff cache 0x1f,-1\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 23e1 6800 cache 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 23e1 67ff cache 0x1f,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 23e1 6001 cache 0x1f,1\(at\)
[ 0-9a-f]+: 23e0 6fff cache 0x1f,-1\(zero\)
@@ -1443,8 +1435,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 3000 ll v1,0\(zero\)
[ 0-9a-f]+: 6060 3004 ll v1,4\(zero\)
[ 0-9a-f]+: 6060 3004 ll v1,4\(zero\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 6063 3fff ll v1,-1\(v1\)
+[ 0-9a-f]+: 3060 7fff li v1,32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 3060 8000 li v1,-32768
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
@@ -1455,8 +1447,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 ffff lui v1,0xffff
[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
+[ 0-9a-f]+: 3060 8001 li v1,-32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 f000 lui v1,0xf000
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 6060 3fff ll v1,-1\(zero\)
@@ -1466,11 +1458,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 3000 ll v1,0\(a0\)
[ 0-9a-f]+: 6064 3000 ll v1,0\(a0\)
[ 0-9a-f]+: 6064 3004 ll v1,4\(a0\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
-[ 0-9a-f]+: 6063 3fff ll v1,-1\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
+[ 0-9a-f]+: 3064 7fff addiu v1,a0,32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
+[ 0-9a-f]+: 3064 8000 addiu v1,a0,-32768
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
@@ -1478,15 +1468,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a3 ffff lui v1,0xffff
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
+[ 0-9a-f]+: 3064 8000 addiu v1,a0,-32768
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 ffff lui v1,0xffff
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
-[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
+[ 0-9a-f]+: 3064 8001 addiu v1,a0,-32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 f000 lui v1,0xf000
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
@@ -1650,17 +1638,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2325 5000 lwm s0-s7,s8,ra,0\(a1\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2021 5fff lwm s0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
[ 0-9a-f]+: 2020 5000 lwm s0,0\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2021 5fff lwm s0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 5fff lwm s0,-1\(at\)
[ 0-9a-f]+: 203d 5000 lwm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -1671,20 +1657,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 205d 1000 lwp v0,0\(sp\)
[ 0-9a-f]+: 2043 1800 lwp v0,-2048\(v1\)
[ 0-9a-f]+: 2043 17ff lwp v0,2047\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 2041 1000 lwp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 2041 1000 lwp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 1fff lwp v0,-1\(at\)
[ 0-9a-f]+: 2043 1000 lwp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 2041 1fff lwp v0,-1\(at\)
[ 0-9a-f]+: 3060 8000 li v1,-32768
[ 0-9a-f]+: 2043 1000 lwp v0,0\(v1\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 2043 1fff lwp v0,-1\(v1\)
+[ 0-9a-f]+: 3060 7fff li v1,32767
+[ 0-9a-f]+: 2043 1000 lwp v0,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
[ 0-9a-f]+: 2043 1fff lwp v0,-1\(v1\)
[ 0-9a-f]+: 6060 0004 lwl v1,4\(zero\)
@@ -1693,8 +1677,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 0000 lwl v1,0\(zero\)
[ 0-9a-f]+: 6060 07ff lwl v1,2047\(zero\)
[ 0-9a-f]+: 6060 0800 lwl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1705,8 +1689,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6060 0fff lwl v1,-1\(zero\)
@@ -1717,11 +1701,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 0000 lwl v1,0\(a0\)
[ 0-9a-f]+: 6064 07ff lwl v1,2047\(a0\)
[ 0-9a-f]+: 6064 0800 lwl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1729,15 +1711,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
@@ -1752,8 +1732,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 0000 lwl v1,0\(zero\)
[ 0-9a-f]+: 6060 07ff lwl v1,2047\(zero\)
[ 0-9a-f]+: 6060 0800 lwl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1764,8 +1744,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6060 0fff lwl v1,-1\(zero\)
@@ -1776,11 +1756,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 0000 lwl v1,0\(a0\)
[ 0-9a-f]+: 6064 07ff lwl v1,2047\(a0\)
[ 0-9a-f]+: 6064 0800 lwl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1788,15 +1766,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
@@ -1811,8 +1787,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 1000 lwr v1,0\(zero\)
[ 0-9a-f]+: 6060 17ff lwr v1,2047\(zero\)
[ 0-9a-f]+: 6060 1800 lwr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1823,8 +1799,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 6060 1fff lwr v1,-1\(zero\)
@@ -1835,11 +1811,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 1000 lwr v1,0\(a0\)
[ 0-9a-f]+: 6064 17ff lwr v1,2047\(a0\)
[ 0-9a-f]+: 6064 1800 lwr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1847,15 +1821,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
@@ -1870,8 +1842,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 1000 lwr v1,0\(zero\)
[ 0-9a-f]+: 6060 17ff lwr v1,2047\(zero\)
[ 0-9a-f]+: 6060 1800 lwr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1882,8 +1854,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 6060 1fff lwr v1,-1\(zero\)
@@ -1894,11 +1866,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 1000 lwr v1,0\(a0\)
[ 0-9a-f]+: 6064 17ff lwr v1,2047\(a0\)
[ 0-9a-f]+: 6064 1800 lwr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1906,15 +1876,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
@@ -2445,8 +2413,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 b004 sc v1,4\(zero\)
[ 0-9a-f]+: 6060 b7ff sc v1,2047\(zero\)
[ 0-9a-f]+: 6060 b800 sc v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 bfff sc v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -2457,8 +2425,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 6060 bfff sc v1,-1\(zero\)
@@ -2469,11 +2437,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 b000 sc v1,0\(a0\)
[ 0-9a-f]+: 6064 b7ff sc v1,2047\(a0\)
[ 0-9a-f]+: 6064 b800 sc v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 bfff sc v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -2481,15 +2447,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
@@ -3016,8 +2980,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 8004 swl v1,4\(zero\)
[ 0-9a-f]+: 6060 87ff swl v1,2047\(zero\)
[ 0-9a-f]+: 6060 8800 swl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3028,8 +2992,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6060 8fff swl v1,-1\(zero\)
@@ -3040,11 +3004,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 8000 swl v1,0\(a0\)
[ 0-9a-f]+: 6064 87ff swl v1,2047\(a0\)
[ 0-9a-f]+: 6064 8800 swl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3052,15 +3014,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
@@ -3073,8 +3033,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 9004 swr v1,4\(zero\)
[ 0-9a-f]+: 6060 97ff swr v1,2047\(zero\)
[ 0-9a-f]+: 6060 9800 swr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3085,8 +3045,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 6060 9fff swr v1,-1\(zero\)
@@ -3097,11 +3057,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 9000 swr v1,0\(a0\)
[ 0-9a-f]+: 6064 97ff swr v1,2047\(a0\)
[ 0-9a-f]+: 6064 9800 swr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3109,15 +3067,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
@@ -3130,8 +3086,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 8004 swl v1,4\(zero\)
[ 0-9a-f]+: 6060 87ff swl v1,2047\(zero\)
[ 0-9a-f]+: 6060 8800 swl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3142,8 +3098,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6060 8fff swl v1,-1\(zero\)
@@ -3154,11 +3110,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 8000 swl v1,0\(a0\)
[ 0-9a-f]+: 6064 87ff swl v1,2047\(a0\)
[ 0-9a-f]+: 6064 8800 swl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3166,15 +3120,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
@@ -3187,8 +3139,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 9004 swr v1,4\(zero\)
[ 0-9a-f]+: 6060 97ff swr v1,2047\(zero\)
[ 0-9a-f]+: 6060 9800 swr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3199,8 +3151,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 6060 9fff swr v1,-1\(zero\)
@@ -3211,11 +3163,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 9000 swr v1,0\(a0\)
[ 0-9a-f]+: 6064 97ff swr v1,2047\(a0\)
[ 0-9a-f]+: 6064 9800 swr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3223,15 +3173,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
@@ -3268,19 +3216,17 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2020 d004 swm s0,4\(zero\)
[ 0-9a-f]+: 2020 d7ff swm s0,2047\(zero\)
[ 0-9a-f]+: 2020 d800 swm s0,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 2021 d800 swm s0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 2021 d7ff swm s0,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
[ 0-9a-f]+: 2025 d000 swm s0,0\(a1\)
[ 0-9a-f]+: 2025 d7ff swm s0,2047\(a1\)
[ 0-9a-f]+: 2025 d800 swm s0,-2048\(a1\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 00a1 0950 addu at,at,a1
-[ 0-9a-f]+: 2021 d800 swm s0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 00a1 0950 addu at,at,a1
-[ 0-9a-f]+: 2021 d7ff swm s0,2047\(at\)
+[ 0-9a-f]+: 3025 0800 addiu at,a1,2048
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
+[ 0-9a-f]+: 3025 f7ff addiu at,a1,-2049
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
[ 0-9a-f]+: 2045 d7ff swm s0-s1,2047\(a1\)
[ 0-9a-f]+: 2065 d7ff swm s0-s2,2047\(a1\)
[ 0-9a-f]+: 2085 d7ff swm s0-s3,2047\(a1\)
@@ -3299,12 +3245,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 22e5 d000 swm s0-s6,ra,0\(a1\)
[ 0-9a-f]+: 2305 d000 swm s0-s7,ra,0\(a1\)
[ 0-9a-f]+: 2325 d000 swm s0-s7,s8,ra,0\(a1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 dfff swm s0,-1\(at\)
[ 0-9a-f]+: 203d d000 swm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -3313,25 +3257,21 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2040 9004 swp v0,4\(zero\)
[ 0-9a-f]+: 2040 97ff swp v0,2047\(zero\)
[ 0-9a-f]+: 2040 9800 swp v0,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 2041 9800 swp v0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 2041 97ff swp v0,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
[ 0-9a-f]+: 205d 9000 swp v0,0\(sp\)
[ 0-9a-f]+: 205d 9000 swp v0,0\(sp\)
[ 0-9a-f]+: 2043 97ff swp v0,2047\(v1\)
[ 0-9a-f]+: 2043 9800 swp v0,-2048\(v1\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 9800 swp v0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 97ff swp v0,2047\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 9fff swp v0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 0800 addiu at,v1,2048
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3023 f7ff addiu at,v1,-2049
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
[ 0-9a-f]+: 2043 9000 swp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3499,11 +3439,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1c61 0000 lb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1c24 8000 lb at,-32768\(a0\)
+[ 0-9a-f]+: 1464 8001 lbu v1,-32767\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 5021 0001 ori at,at,0x1
@@ -3512,11 +3450,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1c61 0000 lb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1c24 8001 lb at,-32767\(a0\)
+[ 0-9a-f]+: 1464 8002 lbu v1,-32766\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3524,11 +3460,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1c61 0000 lb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1c24 ffff lb at,-1\(a0\)
+[ 0-9a-f]+: 1464 0000 lbu v1,0\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 1420 0004 lbu at,4\(zero\)
[ 0-9a-f]+: 1460 0005 lbu v1,5\(zero\)
@@ -3566,11 +3500,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1461 0000 lbu v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1424 8000 lbu at,-32768\(a0\)
+[ 0-9a-f]+: 1464 8001 lbu v1,-32767\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 5021 0001 ori at,at,0x1
@@ -3579,11 +3511,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1461 0000 lbu v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1424 8001 lbu at,-32767\(a0\)
+[ 0-9a-f]+: 1464 8002 lbu v1,-32766\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3591,11 +3521,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1461 0000 lbu v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1424 ffff lbu at,-1\(a0\)
+[ 0-9a-f]+: 1464 0000 lbu v1,0\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 6060 0000 lwl v1,0\(zero\)
[ 0-9a-f]+: 6060 1003 lwr v1,3\(zero\)
@@ -3641,9 +3569,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
+[ 0-9a-f]+: 6060 0fff lwl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 1002 lwr v1,2\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
@@ -3677,8 +3604,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -3686,18 +3612,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
+[ 0-9a-f]+: 6064 0fff lwl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 1002 lwr v1,2\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3737,14 +3660,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
-[ 0-9a-f]+: 0063 4040 srl v1,v1,0x8
-[ 0-9a-f]+: 1861 0000 sb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
-[ 0-9a-f]+: 0023 1a90 or v1,v1,at
+[ 0-9a-f]+: 1864 8001 sb v1,-32767\(a0\)
+[ 0-9a-f]+: 0023 4040 srl at,v1,0x8
+[ 0-9a-f]+: 1824 8000 sb at,-32768\(a0\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 5021 0001 ori at,at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3754,14 +3672,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
-[ 0-9a-f]+: 0063 4040 srl v1,v1,0x8
-[ 0-9a-f]+: 1861 0000 sb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
-[ 0-9a-f]+: 0023 1a90 or v1,v1,at
+[ 0-9a-f]+: 1864 8002 sb v1,-32766\(a0\)
+[ 0-9a-f]+: 0023 4040 srl at,v1,0x8
+[ 0-9a-f]+: 1824 8001 sb at,-32767\(a0\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
@@ -3770,14 +3683,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
-[ 0-9a-f]+: 0063 4040 srl v1,v1,0x8
-[ 0-9a-f]+: 1861 0000 sb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
-[ 0-9a-f]+: 0023 1a90 or v1,v1,at
+[ 0-9a-f]+: 1864 0000 sb v1,0\(a0\)
+[ 0-9a-f]+: 0023 4040 srl at,v1,0x8
+[ 0-9a-f]+: 1824 ffff sb at,-1\(a0\)
[ 0-9a-f]+: 6060 8000 swl v1,0\(zero\)
[ 0-9a-f]+: 6060 9003 swr v1,3\(zero\)
[ 0-9a-f]+: 6060 8000 swl v1,0\(zero\)
@@ -3822,9 +3730,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
+[ 0-9a-f]+: 6060 8fff swl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 9002 swr v1,2\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
@@ -3858,8 +3765,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -3867,18 +3773,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
+[ 0-9a-f]+: 6064 8fff swl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 9002 swr v1,2\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -4706,8 +4609,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: f880 0008 sw a0,8\(zero\)
[ 0-9a-f]+: f860 0004 sw v1,4\(zero\)
[ 0-9a-f]+: f880 0008 sw a0,8\(zero\)
-[ 0-9a-f]+: f860 7fff sw v1,32767\(zero\)
-[ 0-9a-f]+: f880 8003 sw a0,-32765\(zero\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
+[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
[ 0-9a-f]+: f860 8000 sw v1,-32768\(zero\)
[ 0-9a-f]+: f880 8004 sw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4716,21 +4620,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: f861 8000 sw v1,-32768\(at\)
-[ 0-9a-f]+: f881 8004 sw a0,-32764\(at\)
+[ 0-9a-f]+: f860 8000 sw v1,-32768\(zero\)
+[ 0-9a-f]+: f880 8004 sw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: f861 0001 sw v1,1\(at\)
[ 0-9a-f]+: f881 0005 sw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: f861 8001 sw v1,-32767\(at\)
-[ 0-9a-f]+: f881 8005 sw a0,-32763\(at\)
+[ 0-9a-f]+: f860 8001 sw v1,-32767\(zero\)
+[ 0-9a-f]+: f880 8005 sw a0,-32763\(zero\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: f861 ffff sw v1,-1\(at\)
-[ 0-9a-f]+: f881 0003 sw a0,3\(at\)
+[ 0-9a-f]+: f860 ffff sw v1,-1\(zero\)
+[ 0-9a-f]+: f880 0003 sw a0,3\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: f861 5678 sw v1,22136\(at\)
[ 0-9a-f]+: f881 567c sw a0,22140\(at\)
@@ -4738,8 +4639,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: f884 0004 sw a0,4\(a0\)
[ 0-9a-f]+: f864 0000 sw v1,0\(a0\)
[ 0-9a-f]+: f884 0004 sw a0,4\(a0\)
-[ 0-9a-f]+: f864 7fff sw v1,32767\(a0\)
-[ 0-9a-f]+: f884 8003 sw a0,-32765\(a0\)
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
+[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
[ 0-9a-f]+: f864 8000 sw v1,-32768\(a0\)
[ 0-9a-f]+: f884 8004 sw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4750,26 +4652,20 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: f861 8000 sw v1,-32768\(at\)
-[ 0-9a-f]+: f881 8004 sw a0,-32764\(at\)
+[ 0-9a-f]+: f864 8000 sw v1,-32768\(a0\)
+[ 0-9a-f]+: f884 8004 sw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 0001 sw v1,1\(at\)
[ 0-9a-f]+: f881 0005 sw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: f861 8001 sw v1,-32767\(at\)
-[ 0-9a-f]+: f881 8005 sw a0,-32763\(at\)
+[ 0-9a-f]+: f864 8001 sw v1,-32767\(a0\)
+[ 0-9a-f]+: f884 8005 sw a0,-32763\(a0\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: f861 ffff sw v1,-1\(at\)
-[ 0-9a-f]+: f881 0003 sw a0,3\(at\)
+[ 0-9a-f]+: f864 ffff sw v1,-1\(a0\)
+[ 0-9a-f]+: f884 0003 sw a0,3\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 5678 sw v1,22136\(at\)
@@ -4778,8 +4674,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: fc80 0008 lw a0,8\(zero\)
[ 0-9a-f]+: fc60 0004 lw v1,4\(zero\)
[ 0-9a-f]+: fc80 0008 lw a0,8\(zero\)
-[ 0-9a-f]+: fc60 7fff lw v1,32767\(zero\)
-[ 0-9a-f]+: fc80 8003 lw a0,-32765\(zero\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
+[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
[ 0-9a-f]+: fc60 8000 lw v1,-32768\(zero\)
[ 0-9a-f]+: fc80 8004 lw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4788,21 +4685,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: fc61 8000 lw v1,-32768\(at\)
-[ 0-9a-f]+: fc81 8004 lw a0,-32764\(at\)
+[ 0-9a-f]+: fc60 8000 lw v1,-32768\(zero\)
+[ 0-9a-f]+: fc80 8004 lw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: fc61 0001 lw v1,1\(at\)
[ 0-9a-f]+: fc81 0005 lw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: fc61 8001 lw v1,-32767\(at\)
-[ 0-9a-f]+: fc81 8005 lw a0,-32763\(at\)
+[ 0-9a-f]+: fc60 8001 lw v1,-32767\(zero\)
+[ 0-9a-f]+: fc80 8005 lw a0,-32763\(zero\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: fc61 ffff lw v1,-1\(at\)
-[ 0-9a-f]+: fc81 0003 lw a0,3\(at\)
+[ 0-9a-f]+: fc60 ffff lw v1,-1\(zero\)
+[ 0-9a-f]+: fc80 0003 lw a0,3\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: fc61 5678 lw v1,22136\(at\)
[ 0-9a-f]+: fc81 567c lw a0,22140\(at\)
@@ -4810,8 +4704,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: fc84 0004 lw a0,4\(a0\)
[ 0-9a-f]+: fc64 0000 lw v1,0\(a0\)
[ 0-9a-f]+: fc84 0004 lw a0,4\(a0\)
-[ 0-9a-f]+: fc64 7fff lw v1,32767\(a0\)
-[ 0-9a-f]+: fc84 8003 lw a0,-32765\(a0\)
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
+[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
[ 0-9a-f]+: fc64 8000 lw v1,-32768\(a0\)
[ 0-9a-f]+: fc84 8004 lw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4822,26 +4717,20 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: fc61 8000 lw v1,-32768\(at\)
-[ 0-9a-f]+: fc81 8004 lw a0,-32764\(at\)
+[ 0-9a-f]+: fc64 8000 lw v1,-32768\(a0\)
+[ 0-9a-f]+: fc84 8004 lw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 0001 lw v1,1\(at\)
[ 0-9a-f]+: fc81 0005 lw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: fc61 8001 lw v1,-32767\(at\)
-[ 0-9a-f]+: fc81 8005 lw a0,-32763\(at\)
+[ 0-9a-f]+: fc64 8001 lw v1,-32767\(a0\)
+[ 0-9a-f]+: fc84 8005 lw a0,-32763\(a0\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: fc61 ffff lw v1,-1\(at\)
-[ 0-9a-f]+: fc81 0003 lw a0,3\(at\)
+[ 0-9a-f]+: fc64 ffff lw v1,-1\(a0\)
+[ 0-9a-f]+: fc84 0003 lw a0,3\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 5678 lw v1,22136\(at\)
@@ -4878,11 +4767,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 2004 ldc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 2000 ldc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 2000 ldc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 2fff ldc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -4890,15 +4777,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 2001 ldc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 2001 ldc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
@@ -4913,11 +4798,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 0004 lwc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 0000 lwc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 0000 lwc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 0fff lwc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -4925,15 +4808,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 0001 lwc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 0001 lwc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
@@ -5076,11 +4957,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 a004 sdc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 a000 sdc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 a000 sdc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 afff sdc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -5088,15 +4967,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 a001 sdc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 a001 sdc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
@@ -5111,11 +4988,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 8004 swc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 8000 swc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 8000 swc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 8fff swc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -5123,15 +4998,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 8001 swc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 8001 swc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
@@ -5195,7 +5068,6 @@ Disassembly of section \.text:
[ 0-9a-f]+: 03ff 937c wait 0x3ff
[ 0-9a-f]+: 03ff 8b7c syscall 0x3ff
[ 0-9a-f]+: 03ff fffa cop2 0x7fffff
-[ 0-9a-f]+: 0000 0000 nop
[0-9a-f]+ <fp_test>:
[ 0-9a-f]+: 5400 01a0 prefx 0x0,zero\(zero\)
@@ -7257,8 +7129,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 4004 ldl v0,4\(v1\)
[ 0-9a-f]+: 6043 4e00 ldl v0,-512\(v1\)
[ 0-9a-f]+: 6043 41ff ldl v0,511\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 6041 4000 ldl v0,0\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
@@ -7272,8 +7143,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 5004 ldr v0,4\(v1\)
[ 0-9a-f]+: 6043 5e00 ldr v0,-512\(v1\)
[ 0-9a-f]+: 6043 51ff ldr v0,511\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 6041 5000 ldr v0,0\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
@@ -7287,8 +7157,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 7004 lld v0,4\(v1\)
[ 0-9a-f]+: 6043 7e00 lld v0,-512\(v1\)
[ 0-9a-f]+: 6043 71ff lld v0,511\(v1\)
-[ 0-9a-f]+: 3040 8000 li v0,-32768
-[ 0-9a-f]+: 0062 1150 addu v0,v0,v1
+[ 0-9a-f]+: 3043 8000 addiu v0,v1,-32768
[ 0-9a-f]+: 6042 7000 lld v0,0\(v0\)
[ 0-9a-f]+: 41a2 1234 lui v0,0x1234
[ 0-9a-f]+: 5042 5000 ori v0,v0,0x5000
@@ -7302,8 +7171,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 e004 lwu v0,4\(v1\)
[ 0-9a-f]+: 6043 ee00 lwu v0,-512\(v1\)
[ 0-9a-f]+: 6043 e1ff lwu v0,511\(v1\)
-[ 0-9a-f]+: 3040 8000 li v0,-32768
-[ 0-9a-f]+: 0062 1150 addu v0,v0,v1
+[ 0-9a-f]+: 3043 8000 addiu v0,v1,-32768
[ 0-9a-f]+: 6042 e000 lwu v0,0\(v0\)
[ 0-9a-f]+: 41a2 1234 lui v0,0x1234
[ 0-9a-f]+: 5042 5000 ori v0,v0,0x5000
@@ -7317,8 +7185,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 f004 scd v0,4\(v1\)
[ 0-9a-f]+: 6043 fe00 scd v0,-512\(v1\)
[ 0-9a-f]+: 6043 f1ff scd v0,511\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 6041 f000 scd v0,0\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
@@ -7338,12 +7205,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6040 c000 sdl v0,0\(zero\)
[ 0-9a-f]+: 6040 c004 sdl v0,4\(zero\)
[ 0-9a-f]+: 6043 c004 sdl v0,4\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 6041 c000 sdl v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 6041 c000 sdl v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 6041 cfff sdl v0,-1\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
[ 0-9a-f]+: 0061 0950 addu at,at,v1
@@ -7354,12 +7219,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6040 d000 sdr v0,0\(zero\)
[ 0-9a-f]+: 6040 d004 sdr v0,4\(zero\)
[ 0-9a-f]+: 6043 d004 sdr v0,4\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 6041 d000 sdr v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 6041 d000 sdr v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 6041 dfff sdr v0,-1\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
[ 0-9a-f]+: 0061 0950 addu at,at,v1
@@ -7388,17 +7251,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2325 7000 ldm s0-s7,s8,ra,0\(a1\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2021 7fff ldm s0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
[ 0-9a-f]+: 2020 7000 ldm s0,0\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2021 7fff ldm s0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 7fff ldm s0,-1\(at\)
[ 0-9a-f]+: 203d 7000 ldm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -7413,20 +7274,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 205d 4000 ldp v0,0\(sp\)
[ 0-9a-f]+: 2043 4800 ldp v0,-2048\(v1\)
[ 0-9a-f]+: 2043 47ff ldp v0,2047\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 2041 4000 ldp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 2041 4000 ldp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 4fff ldp v0,-1\(at\)
[ 0-9a-f]+: 2043 4000 ldp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 2041 4fff ldp v0,-1\(at\)
[ 0-9a-f]+: 3060 8000 li v1,-32768
[ 0-9a-f]+: 2043 4000 ldp v0,0\(v1\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 2043 4fff ldp v0,-1\(v1\)
+[ 0-9a-f]+: 3060 7fff li v1,32767
+[ 0-9a-f]+: 2043 4000 ldp v0,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
[ 0-9a-f]+: 2043 4fff ldp v0,-1\(v1\)
[ 0-9a-f]+: 41a3 1234 lui v1,0x1234
@@ -7456,17 +7315,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2325 f000 sdm s0-s7,s8,ra,0\(a1\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2021 ffff sdm s0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
[ 0-9a-f]+: 2020 f000 sdm s0,0\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2021 ffff sdm s0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 ffff sdm s0,-1\(at\)
[ 0-9a-f]+: 203d f000 sdm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -7481,20 +7338,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 205d c000 sdp v0,0\(sp\)
[ 0-9a-f]+: 2043 c800 sdp v0,-2048\(v1\)
[ 0-9a-f]+: 2043 c7ff sdp v0,2047\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
[ 0-9a-f]+: 2043 c000 sdp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
@@ -7544,9 +7399,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
-[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
+[ 0-9a-f]+: 6060 4fff ldl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 5006 ldr v1,6\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
@@ -7580,8 +7434,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -7589,18 +7442,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
-[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
+[ 0-9a-f]+: 6064 4fff ldl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 5006 ldr v1,6\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -7650,9 +7500,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
-[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
+[ 0-9a-f]+: 6060 cfff sdl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 d006 sdr v1,6\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
@@ -7686,8 +7535,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -7695,18 +7543,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
-[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
+[ 0-9a-f]+: 6064 cfff sdl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 d006 sdr v1,6\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
diff --git a/gas/testsuite/gas/mips/micromips-noinsn32.d b/gas/testsuite/gas/mips/micromips-noinsn32.d
index 34f281d..22bb62a 100644
--- a/gas/testsuite/gas/mips/micromips-noinsn32.d
+++ b/gas/testsuite/gas/mips/micromips-noinsn32.d
@@ -12,10 +12,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6000 2000 pref 0x0,0\(zero\)
[ 0-9a-f]+: 6000 27ff pref 0x0,2047\(zero\)
[ 0-9a-f]+: 6000 2800 pref 0x0,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 6001 2800 pref 0x0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 6001 27ff pref 0x0,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 6001 2000 pref 0x0,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 6001 2000 pref 0x0,0\(at\)
[ 0-9a-f]+: 6000 2000 pref 0x0,0\(zero\)
[ 0-9a-f]+: 6000 2000 pref 0x0,0\(zero\)
[ 0-9a-f]+: 6020 2000 pref 0x1,0\(zero\)
@@ -29,27 +29,23 @@ Disassembly of section \.text:
[ 0-9a-f]+: 60e0 2e00 pref 0x7,-512\(zero\)
[ 0-9a-f]+: 63e0 27ff pref 0x1f,2047\(zero\)
[ 0-9a-f]+: 63e0 2800 pref 0x1f,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 63e1 2800 pref 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 63e1 27ff pref 0x1f,2047\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 2fff pref 0x3,-1\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
[ 0-9a-f]+: 63e2 27ff pref 0x1f,2047\(v0\)
[ 0-9a-f]+: 63e2 2800 pref 0x1f,-2048\(v0\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 63e1 2800 pref 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 63e1 27ff pref 0x1f,2047\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 6061 2fff pref 0x3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
+[ 0-9a-f]+: 3022 0800 addiu at,v0,2048
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3022 f7ff addiu at,v0,-2049
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3022 7fff addiu at,v0,32767
+[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
+[ 0-9a-f]+: 3022 8000 addiu at,v0,-32768
[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
[ 0-9a-f]+: 0c00 nop
[ 0-9a-f]+: 0000 0000 nop
@@ -805,19 +801,17 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2000 6000 cache 0x0,0\(zero\)
[ 0-9a-f]+: 2000 6800 cache 0x0,-2048\(zero\)
[ 0-9a-f]+: 2000 67ff cache 0x0,2047\(zero\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 2001 67ff cache 0x0,2047\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 2001 6800 cache 0x0,-2048\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
[ 0-9a-f]+: 2002 6000 cache 0x0,0\(v0\)
[ 0-9a-f]+: 2002 6800 cache 0x0,-2048\(v0\)
[ 0-9a-f]+: 2002 67ff cache 0x0,2047\(v0\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 2001 67ff cache 0x0,2047\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 2001 6800 cache 0x0,-2048\(at\)
+[ 0-9a-f]+: 3022 f7ff addiu at,v0,-2049
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
+[ 0-9a-f]+: 3022 0800 addiu at,v0,2048
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
[ 0-9a-f]+: 2000 6000 cache 0x0,0\(zero\)
[ 0-9a-f]+: 2000 6000 cache 0x0,0\(zero\)
[ 0-9a-f]+: 2020 6000 cache 0x1,0\(zero\)
@@ -834,12 +828,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 23e1 6800 cache 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 23e1 67ff cache 0x1f,2047\(at\)
+[ 0-9a-f]+: 3023 0800 addiu at,v1,2048
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
+[ 0-9a-f]+: 3023 f7ff addiu at,v1,-2049
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 23e1 6001 cache 0x1f,1\(at\)
@@ -855,10 +847,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 23e1 6fff cache 0x1f,-1\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 23e1 6800 cache 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 23e1 67ff cache 0x1f,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 23e1 6001 cache 0x1f,1\(at\)
[ 0-9a-f]+: 23e0 6fff cache 0x1f,-1\(zero\)
@@ -1433,8 +1425,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 3000 ll v1,0\(zero\)
[ 0-9a-f]+: 6060 3004 ll v1,4\(zero\)
[ 0-9a-f]+: 6060 3004 ll v1,4\(zero\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 6063 3fff ll v1,-1\(v1\)
+[ 0-9a-f]+: 3060 7fff li v1,32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 3060 8000 li v1,-32768
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
@@ -1445,8 +1437,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 ffff lui v1,0xffff
[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
+[ 0-9a-f]+: 3060 8001 li v1,-32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 f000 lui v1,0xf000
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 6060 3fff ll v1,-1\(zero\)
@@ -1456,11 +1448,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 3000 ll v1,0\(a0\)
[ 0-9a-f]+: 6064 3000 ll v1,0\(a0\)
[ 0-9a-f]+: 6064 3004 ll v1,4\(a0\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
-[ 0-9a-f]+: 6063 3fff ll v1,-1\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
+[ 0-9a-f]+: 3064 7fff addiu v1,a0,32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
+[ 0-9a-f]+: 3064 8000 addiu v1,a0,-32768
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
@@ -1468,15 +1458,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a3 ffff lui v1,0xffff
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
+[ 0-9a-f]+: 3064 8000 addiu v1,a0,-32768
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 ffff lui v1,0xffff
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
-[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
+[ 0-9a-f]+: 3064 8001 addiu v1,a0,-32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 f000 lui v1,0xf000
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
@@ -1640,17 +1628,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2325 5000 lwm s0-s7,s8,ra,0\(a1\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2021 5fff lwm s0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
[ 0-9a-f]+: 2020 5000 lwm s0,0\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2021 5fff lwm s0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 5fff lwm s0,-1\(at\)
[ 0-9a-f]+: 203d 5000 lwm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -1661,20 +1647,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 205d 1000 lwp v0,0\(sp\)
[ 0-9a-f]+: 2043 1800 lwp v0,-2048\(v1\)
[ 0-9a-f]+: 2043 17ff lwp v0,2047\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 2041 1000 lwp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 2041 1000 lwp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 1fff lwp v0,-1\(at\)
[ 0-9a-f]+: 2043 1000 lwp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 2041 1fff lwp v0,-1\(at\)
[ 0-9a-f]+: 3060 8000 li v1,-32768
[ 0-9a-f]+: 2043 1000 lwp v0,0\(v1\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 2043 1fff lwp v0,-1\(v1\)
+[ 0-9a-f]+: 3060 7fff li v1,32767
+[ 0-9a-f]+: 2043 1000 lwp v0,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
[ 0-9a-f]+: 2043 1fff lwp v0,-1\(v1\)
[ 0-9a-f]+: 6060 0004 lwl v1,4\(zero\)
@@ -1683,8 +1667,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 0000 lwl v1,0\(zero\)
[ 0-9a-f]+: 6060 07ff lwl v1,2047\(zero\)
[ 0-9a-f]+: 6060 0800 lwl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1695,8 +1679,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6060 0fff lwl v1,-1\(zero\)
@@ -1707,11 +1691,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 0000 lwl v1,0\(a0\)
[ 0-9a-f]+: 6064 07ff lwl v1,2047\(a0\)
[ 0-9a-f]+: 6064 0800 lwl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1719,15 +1701,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
@@ -1742,8 +1722,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 0000 lwl v1,0\(zero\)
[ 0-9a-f]+: 6060 07ff lwl v1,2047\(zero\)
[ 0-9a-f]+: 6060 0800 lwl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1754,8 +1734,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6060 0fff lwl v1,-1\(zero\)
@@ -1766,11 +1746,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 0000 lwl v1,0\(a0\)
[ 0-9a-f]+: 6064 07ff lwl v1,2047\(a0\)
[ 0-9a-f]+: 6064 0800 lwl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1778,15 +1756,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
@@ -1801,8 +1777,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 1000 lwr v1,0\(zero\)
[ 0-9a-f]+: 6060 17ff lwr v1,2047\(zero\)
[ 0-9a-f]+: 6060 1800 lwr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1813,8 +1789,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 6060 1fff lwr v1,-1\(zero\)
@@ -1825,11 +1801,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 1000 lwr v1,0\(a0\)
[ 0-9a-f]+: 6064 17ff lwr v1,2047\(a0\)
[ 0-9a-f]+: 6064 1800 lwr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1837,15 +1811,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
@@ -1860,8 +1832,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 1000 lwr v1,0\(zero\)
[ 0-9a-f]+: 6060 17ff lwr v1,2047\(zero\)
[ 0-9a-f]+: 6060 1800 lwr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1872,8 +1844,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 6060 1fff lwr v1,-1\(zero\)
@@ -1884,11 +1856,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 1000 lwr v1,0\(a0\)
[ 0-9a-f]+: 6064 17ff lwr v1,2047\(a0\)
[ 0-9a-f]+: 6064 1800 lwr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1896,15 +1866,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
@@ -2435,8 +2403,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 b004 sc v1,4\(zero\)
[ 0-9a-f]+: 6060 b7ff sc v1,2047\(zero\)
[ 0-9a-f]+: 6060 b800 sc v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 bfff sc v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -2447,8 +2415,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 6060 bfff sc v1,-1\(zero\)
@@ -2459,11 +2427,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 b000 sc v1,0\(a0\)
[ 0-9a-f]+: 6064 b7ff sc v1,2047\(a0\)
[ 0-9a-f]+: 6064 b800 sc v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 bfff sc v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -2471,15 +2437,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
@@ -3006,8 +2970,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 8004 swl v1,4\(zero\)
[ 0-9a-f]+: 6060 87ff swl v1,2047\(zero\)
[ 0-9a-f]+: 6060 8800 swl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3018,8 +2982,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6060 8fff swl v1,-1\(zero\)
@@ -3030,11 +2994,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 8000 swl v1,0\(a0\)
[ 0-9a-f]+: 6064 87ff swl v1,2047\(a0\)
[ 0-9a-f]+: 6064 8800 swl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3042,15 +3004,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
@@ -3063,8 +3023,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 9004 swr v1,4\(zero\)
[ 0-9a-f]+: 6060 97ff swr v1,2047\(zero\)
[ 0-9a-f]+: 6060 9800 swr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3075,8 +3035,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 6060 9fff swr v1,-1\(zero\)
@@ -3087,11 +3047,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 9000 swr v1,0\(a0\)
[ 0-9a-f]+: 6064 97ff swr v1,2047\(a0\)
[ 0-9a-f]+: 6064 9800 swr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3099,15 +3057,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
@@ -3120,8 +3076,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 8004 swl v1,4\(zero\)
[ 0-9a-f]+: 6060 87ff swl v1,2047\(zero\)
[ 0-9a-f]+: 6060 8800 swl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3132,8 +3088,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6060 8fff swl v1,-1\(zero\)
@@ -3144,11 +3100,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 8000 swl v1,0\(a0\)
[ 0-9a-f]+: 6064 87ff swl v1,2047\(a0\)
[ 0-9a-f]+: 6064 8800 swl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3156,15 +3110,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
@@ -3177,8 +3129,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 9004 swr v1,4\(zero\)
[ 0-9a-f]+: 6060 97ff swr v1,2047\(zero\)
[ 0-9a-f]+: 6060 9800 swr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3189,8 +3141,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 6060 9fff swr v1,-1\(zero\)
@@ -3201,11 +3153,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 9000 swr v1,0\(a0\)
[ 0-9a-f]+: 6064 97ff swr v1,2047\(a0\)
[ 0-9a-f]+: 6064 9800 swr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3213,15 +3163,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
@@ -3258,19 +3206,17 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2020 d004 swm s0,4\(zero\)
[ 0-9a-f]+: 2020 d7ff swm s0,2047\(zero\)
[ 0-9a-f]+: 2020 d800 swm s0,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 2021 d800 swm s0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 2021 d7ff swm s0,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
[ 0-9a-f]+: 2025 d000 swm s0,0\(a1\)
[ 0-9a-f]+: 2025 d7ff swm s0,2047\(a1\)
[ 0-9a-f]+: 2025 d800 swm s0,-2048\(a1\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 00a1 0950 addu at,at,a1
-[ 0-9a-f]+: 2021 d800 swm s0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 00a1 0950 addu at,at,a1
-[ 0-9a-f]+: 2021 d7ff swm s0,2047\(at\)
+[ 0-9a-f]+: 3025 0800 addiu at,a1,2048
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
+[ 0-9a-f]+: 3025 f7ff addiu at,a1,-2049
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
[ 0-9a-f]+: 2045 d7ff swm s0-s1,2047\(a1\)
[ 0-9a-f]+: 2065 d7ff swm s0-s2,2047\(a1\)
[ 0-9a-f]+: 2085 d7ff swm s0-s3,2047\(a1\)
@@ -3289,12 +3235,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 22e5 d000 swm s0-s6,ra,0\(a1\)
[ 0-9a-f]+: 2305 d000 swm s0-s7,ra,0\(a1\)
[ 0-9a-f]+: 2325 d000 swm s0-s7,s8,ra,0\(a1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 dfff swm s0,-1\(at\)
[ 0-9a-f]+: 203d d000 swm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -3303,25 +3247,21 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2040 9004 swp v0,4\(zero\)
[ 0-9a-f]+: 2040 97ff swp v0,2047\(zero\)
[ 0-9a-f]+: 2040 9800 swp v0,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 2041 9800 swp v0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 2041 97ff swp v0,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
[ 0-9a-f]+: 205d 9000 swp v0,0\(sp\)
[ 0-9a-f]+: 205d 9000 swp v0,0\(sp\)
[ 0-9a-f]+: 2043 97ff swp v0,2047\(v1\)
[ 0-9a-f]+: 2043 9800 swp v0,-2048\(v1\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 9800 swp v0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 97ff swp v0,2047\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 9fff swp v0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 0800 addiu at,v1,2048
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3023 f7ff addiu at,v1,-2049
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
[ 0-9a-f]+: 2043 9000 swp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3489,11 +3429,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1c61 0000 lb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1c24 8000 lb at,-32768\(a0\)
+[ 0-9a-f]+: 1464 8001 lbu v1,-32767\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 5021 0001 ori at,at,0x1
@@ -3502,11 +3440,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1c61 0000 lb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1c24 8001 lb at,-32767\(a0\)
+[ 0-9a-f]+: 1464 8002 lbu v1,-32766\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3514,11 +3450,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1c61 0000 lb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1c24 ffff lb at,-1\(a0\)
+[ 0-9a-f]+: 1464 0000 lbu v1,0\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 1420 0004 lbu at,4\(zero\)
[ 0-9a-f]+: 1460 0005 lbu v1,5\(zero\)
@@ -3556,11 +3490,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1461 0000 lbu v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1424 8000 lbu at,-32768\(a0\)
+[ 0-9a-f]+: 1464 8001 lbu v1,-32767\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 5021 0001 ori at,at,0x1
@@ -3569,11 +3501,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1461 0000 lbu v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1424 8001 lbu at,-32767\(a0\)
+[ 0-9a-f]+: 1464 8002 lbu v1,-32766\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3581,11 +3511,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1461 0000 lbu v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1424 ffff lbu at,-1\(a0\)
+[ 0-9a-f]+: 1464 0000 lbu v1,0\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 6060 0000 lwl v1,0\(zero\)
[ 0-9a-f]+: 6060 1003 lwr v1,3\(zero\)
@@ -3631,9 +3559,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
+[ 0-9a-f]+: 6060 0fff lwl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 1002 lwr v1,2\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
@@ -3667,8 +3594,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -3676,18 +3602,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
+[ 0-9a-f]+: 6064 0fff lwl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 1002 lwr v1,2\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3727,14 +3650,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
-[ 0-9a-f]+: 0063 4040 srl v1,v1,0x8
-[ 0-9a-f]+: 1861 0000 sb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
-[ 0-9a-f]+: 0023 1a90 or v1,v1,at
+[ 0-9a-f]+: 1864 8001 sb v1,-32767\(a0\)
+[ 0-9a-f]+: 0023 4040 srl at,v1,0x8
+[ 0-9a-f]+: 1824 8000 sb at,-32768\(a0\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 5021 0001 ori at,at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3744,14 +3662,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
-[ 0-9a-f]+: 0063 4040 srl v1,v1,0x8
-[ 0-9a-f]+: 1861 0000 sb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
-[ 0-9a-f]+: 0023 1a90 or v1,v1,at
+[ 0-9a-f]+: 1864 8002 sb v1,-32766\(a0\)
+[ 0-9a-f]+: 0023 4040 srl at,v1,0x8
+[ 0-9a-f]+: 1824 8001 sb at,-32767\(a0\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
@@ -3760,14 +3673,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
-[ 0-9a-f]+: 0063 4040 srl v1,v1,0x8
-[ 0-9a-f]+: 1861 0000 sb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
-[ 0-9a-f]+: 0023 1a90 or v1,v1,at
+[ 0-9a-f]+: 1864 0000 sb v1,0\(a0\)
+[ 0-9a-f]+: 0023 4040 srl at,v1,0x8
+[ 0-9a-f]+: 1824 ffff sb at,-1\(a0\)
[ 0-9a-f]+: 6060 8000 swl v1,0\(zero\)
[ 0-9a-f]+: 6060 9003 swr v1,3\(zero\)
[ 0-9a-f]+: 6060 8000 swl v1,0\(zero\)
@@ -3812,9 +3720,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
+[ 0-9a-f]+: 6060 8fff swl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 9002 swr v1,2\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
@@ -3848,8 +3755,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -3857,18 +3763,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
+[ 0-9a-f]+: 6064 8fff swl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 9002 swr v1,2\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -4696,8 +4599,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: f880 0008 sw a0,8\(zero\)
[ 0-9a-f]+: f860 0004 sw v1,4\(zero\)
[ 0-9a-f]+: f880 0008 sw a0,8\(zero\)
-[ 0-9a-f]+: f860 7fff sw v1,32767\(zero\)
-[ 0-9a-f]+: f880 8003 sw a0,-32765\(zero\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
+[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
[ 0-9a-f]+: f860 8000 sw v1,-32768\(zero\)
[ 0-9a-f]+: f880 8004 sw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4706,21 +4610,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: f861 8000 sw v1,-32768\(at\)
-[ 0-9a-f]+: f881 8004 sw a0,-32764\(at\)
+[ 0-9a-f]+: f860 8000 sw v1,-32768\(zero\)
+[ 0-9a-f]+: f880 8004 sw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: f861 0001 sw v1,1\(at\)
[ 0-9a-f]+: f881 0005 sw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: f861 8001 sw v1,-32767\(at\)
-[ 0-9a-f]+: f881 8005 sw a0,-32763\(at\)
+[ 0-9a-f]+: f860 8001 sw v1,-32767\(zero\)
+[ 0-9a-f]+: f880 8005 sw a0,-32763\(zero\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: f861 ffff sw v1,-1\(at\)
-[ 0-9a-f]+: f881 0003 sw a0,3\(at\)
+[ 0-9a-f]+: f860 ffff sw v1,-1\(zero\)
+[ 0-9a-f]+: f880 0003 sw a0,3\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: f861 5678 sw v1,22136\(at\)
[ 0-9a-f]+: f881 567c sw a0,22140\(at\)
@@ -4728,8 +4629,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: f884 0004 sw a0,4\(a0\)
[ 0-9a-f]+: f864 0000 sw v1,0\(a0\)
[ 0-9a-f]+: f884 0004 sw a0,4\(a0\)
-[ 0-9a-f]+: f864 7fff sw v1,32767\(a0\)
-[ 0-9a-f]+: f884 8003 sw a0,-32765\(a0\)
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
+[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
[ 0-9a-f]+: f864 8000 sw v1,-32768\(a0\)
[ 0-9a-f]+: f884 8004 sw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4740,26 +4642,20 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: f861 8000 sw v1,-32768\(at\)
-[ 0-9a-f]+: f881 8004 sw a0,-32764\(at\)
+[ 0-9a-f]+: f864 8000 sw v1,-32768\(a0\)
+[ 0-9a-f]+: f884 8004 sw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 0001 sw v1,1\(at\)
[ 0-9a-f]+: f881 0005 sw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: f861 8001 sw v1,-32767\(at\)
-[ 0-9a-f]+: f881 8005 sw a0,-32763\(at\)
+[ 0-9a-f]+: f864 8001 sw v1,-32767\(a0\)
+[ 0-9a-f]+: f884 8005 sw a0,-32763\(a0\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: f861 ffff sw v1,-1\(at\)
-[ 0-9a-f]+: f881 0003 sw a0,3\(at\)
+[ 0-9a-f]+: f864 ffff sw v1,-1\(a0\)
+[ 0-9a-f]+: f884 0003 sw a0,3\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 5678 sw v1,22136\(at\)
@@ -4768,8 +4664,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: fc80 0008 lw a0,8\(zero\)
[ 0-9a-f]+: fc60 0004 lw v1,4\(zero\)
[ 0-9a-f]+: fc80 0008 lw a0,8\(zero\)
-[ 0-9a-f]+: fc60 7fff lw v1,32767\(zero\)
-[ 0-9a-f]+: fc80 8003 lw a0,-32765\(zero\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
+[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
[ 0-9a-f]+: fc60 8000 lw v1,-32768\(zero\)
[ 0-9a-f]+: fc80 8004 lw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4778,21 +4675,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: fc61 8000 lw v1,-32768\(at\)
-[ 0-9a-f]+: fc81 8004 lw a0,-32764\(at\)
+[ 0-9a-f]+: fc60 8000 lw v1,-32768\(zero\)
+[ 0-9a-f]+: fc80 8004 lw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: fc61 0001 lw v1,1\(at\)
[ 0-9a-f]+: fc81 0005 lw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: fc61 8001 lw v1,-32767\(at\)
-[ 0-9a-f]+: fc81 8005 lw a0,-32763\(at\)
+[ 0-9a-f]+: fc60 8001 lw v1,-32767\(zero\)
+[ 0-9a-f]+: fc80 8005 lw a0,-32763\(zero\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: fc61 ffff lw v1,-1\(at\)
-[ 0-9a-f]+: fc81 0003 lw a0,3\(at\)
+[ 0-9a-f]+: fc60 ffff lw v1,-1\(zero\)
+[ 0-9a-f]+: fc80 0003 lw a0,3\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: fc61 5678 lw v1,22136\(at\)
[ 0-9a-f]+: fc81 567c lw a0,22140\(at\)
@@ -4800,8 +4694,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: fc84 0004 lw a0,4\(a0\)
[ 0-9a-f]+: fc64 0000 lw v1,0\(a0\)
[ 0-9a-f]+: fc84 0004 lw a0,4\(a0\)
-[ 0-9a-f]+: fc64 7fff lw v1,32767\(a0\)
-[ 0-9a-f]+: fc84 8003 lw a0,-32765\(a0\)
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
+[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
[ 0-9a-f]+: fc64 8000 lw v1,-32768\(a0\)
[ 0-9a-f]+: fc84 8004 lw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4812,26 +4707,20 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: fc61 8000 lw v1,-32768\(at\)
-[ 0-9a-f]+: fc81 8004 lw a0,-32764\(at\)
+[ 0-9a-f]+: fc64 8000 lw v1,-32768\(a0\)
+[ 0-9a-f]+: fc84 8004 lw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 0001 lw v1,1\(at\)
[ 0-9a-f]+: fc81 0005 lw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: fc61 8001 lw v1,-32767\(at\)
-[ 0-9a-f]+: fc81 8005 lw a0,-32763\(at\)
+[ 0-9a-f]+: fc64 8001 lw v1,-32767\(a0\)
+[ 0-9a-f]+: fc84 8005 lw a0,-32763\(a0\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: fc61 ffff lw v1,-1\(at\)
-[ 0-9a-f]+: fc81 0003 lw a0,3\(at\)
+[ 0-9a-f]+: fc64 ffff lw v1,-1\(a0\)
+[ 0-9a-f]+: fc84 0003 lw a0,3\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 5678 lw v1,22136\(at\)
@@ -4855,11 +4744,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 2004 ldc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 2000 ldc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 2000 ldc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 2fff ldc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -4867,15 +4754,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 2001 ldc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 2001 ldc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
@@ -4890,11 +4775,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 0004 lwc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 0000 lwc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 0000 lwc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 0fff lwc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -4902,15 +4785,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 0001 lwc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 0001 lwc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
@@ -5053,11 +4934,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 a004 sdc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 a000 sdc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 a000 sdc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 afff sdc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -5065,15 +4944,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 a001 sdc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 a001 sdc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
@@ -5088,11 +4965,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 8004 swc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 8000 swc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 8000 swc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 8fff swc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -5100,15 +4975,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 8001 swc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 8001 swc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
@@ -5173,6 +5046,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 03ff 8b7c syscall 0x3ff
[ 0-9a-f]+: 03ff fffa cop2 0x7fffff
[ 0-9a-f]+: 0c00 nop
+[ 0-9a-f]+: 0000 0000 nop
[0-9a-f]+ <fp_test>:
[ 0-9a-f]+: 5400 01a0 prefx 0x0,zero\(zero\)
@@ -7234,8 +7108,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 4004 ldl v0,4\(v1\)
[ 0-9a-f]+: 6043 4e00 ldl v0,-512\(v1\)
[ 0-9a-f]+: 6043 41ff ldl v0,511\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 6041 4000 ldl v0,0\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
@@ -7249,8 +7122,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 5004 ldr v0,4\(v1\)
[ 0-9a-f]+: 6043 5e00 ldr v0,-512\(v1\)
[ 0-9a-f]+: 6043 51ff ldr v0,511\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 6041 5000 ldr v0,0\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
@@ -7264,8 +7136,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 7004 lld v0,4\(v1\)
[ 0-9a-f]+: 6043 7e00 lld v0,-512\(v1\)
[ 0-9a-f]+: 6043 71ff lld v0,511\(v1\)
-[ 0-9a-f]+: 3040 8000 li v0,-32768
-[ 0-9a-f]+: 0062 1150 addu v0,v0,v1
+[ 0-9a-f]+: 3043 8000 addiu v0,v1,-32768
[ 0-9a-f]+: 6042 7000 lld v0,0\(v0\)
[ 0-9a-f]+: 41a2 1234 lui v0,0x1234
[ 0-9a-f]+: 5042 5000 ori v0,v0,0x5000
@@ -7279,8 +7150,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 e004 lwu v0,4\(v1\)
[ 0-9a-f]+: 6043 ee00 lwu v0,-512\(v1\)
[ 0-9a-f]+: 6043 e1ff lwu v0,511\(v1\)
-[ 0-9a-f]+: 3040 8000 li v0,-32768
-[ 0-9a-f]+: 0062 1150 addu v0,v0,v1
+[ 0-9a-f]+: 3043 8000 addiu v0,v1,-32768
[ 0-9a-f]+: 6042 e000 lwu v0,0\(v0\)
[ 0-9a-f]+: 41a2 1234 lui v0,0x1234
[ 0-9a-f]+: 5042 5000 ori v0,v0,0x5000
@@ -7294,8 +7164,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 f004 scd v0,4\(v1\)
[ 0-9a-f]+: 6043 fe00 scd v0,-512\(v1\)
[ 0-9a-f]+: 6043 f1ff scd v0,511\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 6041 f000 scd v0,0\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
@@ -7315,12 +7184,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6040 c000 sdl v0,0\(zero\)
[ 0-9a-f]+: 6040 c004 sdl v0,4\(zero\)
[ 0-9a-f]+: 6043 c004 sdl v0,4\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 6041 c000 sdl v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 6041 c000 sdl v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 6041 cfff sdl v0,-1\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
[ 0-9a-f]+: 0061 0950 addu at,at,v1
@@ -7331,12 +7198,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6040 d000 sdr v0,0\(zero\)
[ 0-9a-f]+: 6040 d004 sdr v0,4\(zero\)
[ 0-9a-f]+: 6043 d004 sdr v0,4\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 6041 d000 sdr v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 6041 d000 sdr v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 6041 dfff sdr v0,-1\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
[ 0-9a-f]+: 0061 0950 addu at,at,v1
@@ -7365,17 +7230,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2325 7000 ldm s0-s7,s8,ra,0\(a1\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2021 7fff ldm s0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
[ 0-9a-f]+: 2020 7000 ldm s0,0\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2021 7fff ldm s0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 7fff ldm s0,-1\(at\)
[ 0-9a-f]+: 203d 7000 ldm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -7390,20 +7253,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 205d 4000 ldp v0,0\(sp\)
[ 0-9a-f]+: 2043 4800 ldp v0,-2048\(v1\)
[ 0-9a-f]+: 2043 47ff ldp v0,2047\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 2041 4000 ldp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 2041 4000 ldp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 4fff ldp v0,-1\(at\)
[ 0-9a-f]+: 2043 4000 ldp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 2041 4fff ldp v0,-1\(at\)
[ 0-9a-f]+: 3060 8000 li v1,-32768
[ 0-9a-f]+: 2043 4000 ldp v0,0\(v1\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 2043 4fff ldp v0,-1\(v1\)
+[ 0-9a-f]+: 3060 7fff li v1,32767
+[ 0-9a-f]+: 2043 4000 ldp v0,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
[ 0-9a-f]+: 2043 4fff ldp v0,-1\(v1\)
[ 0-9a-f]+: 41a3 1234 lui v1,0x1234
@@ -7433,17 +7294,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2325 f000 sdm s0-s7,s8,ra,0\(a1\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2021 ffff sdm s0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
[ 0-9a-f]+: 2020 f000 sdm s0,0\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2021 ffff sdm s0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 ffff sdm s0,-1\(at\)
[ 0-9a-f]+: 203d f000 sdm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -7458,20 +7317,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 205d c000 sdp v0,0\(sp\)
[ 0-9a-f]+: 2043 c800 sdp v0,-2048\(v1\)
[ 0-9a-f]+: 2043 c7ff sdp v0,2047\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
[ 0-9a-f]+: 2043 c000 sdp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
@@ -7521,9 +7378,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
-[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
+[ 0-9a-f]+: 6060 4fff ldl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 5006 ldr v1,6\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
@@ -7557,8 +7413,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -7566,18 +7421,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
-[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
+[ 0-9a-f]+: 6064 4fff ldl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 5006 ldr v1,6\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -7627,9 +7479,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
-[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
+[ 0-9a-f]+: 6060 cfff sdl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 d006 sdr v1,6\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
@@ -7663,8 +7514,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -7672,18 +7522,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
-[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
+[ 0-9a-f]+: 6064 cfff sdl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 d006 sdr v1,6\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
diff --git a/gas/testsuite/gas/mips/micromips-trap.d b/gas/testsuite/gas/mips/micromips-trap.d
index bafc4a1..8c59ec5 100644
--- a/gas/testsuite/gas/mips/micromips-trap.d
+++ b/gas/testsuite/gas/mips/micromips-trap.d
@@ -12,10 +12,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6000 2000 pref 0x0,0\(zero\)
[ 0-9a-f]+: 6000 27ff pref 0x0,2047\(zero\)
[ 0-9a-f]+: 6000 2800 pref 0x0,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 6001 2800 pref 0x0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 6001 27ff pref 0x0,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 6001 2000 pref 0x0,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 6001 2000 pref 0x0,0\(at\)
[ 0-9a-f]+: 6000 2000 pref 0x0,0\(zero\)
[ 0-9a-f]+: 6000 2000 pref 0x0,0\(zero\)
[ 0-9a-f]+: 6020 2000 pref 0x1,0\(zero\)
@@ -29,27 +29,23 @@ Disassembly of section \.text:
[ 0-9a-f]+: 60e0 2e00 pref 0x7,-512\(zero\)
[ 0-9a-f]+: 63e0 27ff pref 0x1f,2047\(zero\)
[ 0-9a-f]+: 63e0 2800 pref 0x1f,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 63e1 2800 pref 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 63e1 27ff pref 0x1f,2047\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 2fff pref 0x3,-1\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
[ 0-9a-f]+: 63e2 27ff pref 0x1f,2047\(v0\)
[ 0-9a-f]+: 63e2 2800 pref 0x1f,-2048\(v0\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 63e1 2800 pref 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 63e1 27ff pref 0x1f,2047\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 6061 2fff pref 0x3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
+[ 0-9a-f]+: 3022 0800 addiu at,v0,2048
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3022 f7ff addiu at,v0,-2049
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3022 7fff addiu at,v0,32767
+[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
+[ 0-9a-f]+: 3022 8000 addiu at,v0,-32768
[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
[ 0-9a-f]+: 0c00 nop
[ 0-9a-f]+: 0c00 nop
@@ -825,19 +821,17 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2000 6000 cache 0x0,0\(zero\)
[ 0-9a-f]+: 2000 6800 cache 0x0,-2048\(zero\)
[ 0-9a-f]+: 2000 67ff cache 0x0,2047\(zero\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 2001 67ff cache 0x0,2047\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 2001 6800 cache 0x0,-2048\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
[ 0-9a-f]+: 2002 6000 cache 0x0,0\(v0\)
[ 0-9a-f]+: 2002 6800 cache 0x0,-2048\(v0\)
[ 0-9a-f]+: 2002 67ff cache 0x0,2047\(v0\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 2001 67ff cache 0x0,2047\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 2001 6800 cache 0x0,-2048\(at\)
+[ 0-9a-f]+: 3022 f7ff addiu at,v0,-2049
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
+[ 0-9a-f]+: 3022 0800 addiu at,v0,2048
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
[ 0-9a-f]+: 2000 6000 cache 0x0,0\(zero\)
[ 0-9a-f]+: 2000 6000 cache 0x0,0\(zero\)
[ 0-9a-f]+: 2020 6000 cache 0x1,0\(zero\)
@@ -854,12 +848,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 23e1 6800 cache 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 23e1 67ff cache 0x1f,2047\(at\)
+[ 0-9a-f]+: 3023 0800 addiu at,v1,2048
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
+[ 0-9a-f]+: 3023 f7ff addiu at,v1,-2049
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 23e1 6001 cache 0x1f,1\(at\)
@@ -875,10 +867,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 23e1 6fff cache 0x1f,-1\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 23e1 6800 cache 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 23e1 67ff cache 0x1f,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 23e1 6001 cache 0x1f,1\(at\)
[ 0-9a-f]+: 23e0 6fff cache 0x1f,-1\(zero\)
@@ -1438,8 +1430,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 3000 ll v1,0\(zero\)
[ 0-9a-f]+: 6060 3004 ll v1,4\(zero\)
[ 0-9a-f]+: 6060 3004 ll v1,4\(zero\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 6063 3fff ll v1,-1\(v1\)
+[ 0-9a-f]+: 3060 7fff li v1,32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 3060 8000 li v1,-32768
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
@@ -1450,8 +1442,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 ffff lui v1,0xffff
[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
+[ 0-9a-f]+: 3060 8001 li v1,-32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 f000 lui v1,0xf000
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 6060 3fff ll v1,-1\(zero\)
@@ -1461,11 +1453,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 3000 ll v1,0\(a0\)
[ 0-9a-f]+: 6064 3000 ll v1,0\(a0\)
[ 0-9a-f]+: 6064 3004 ll v1,4\(a0\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
-[ 0-9a-f]+: 6063 3fff ll v1,-1\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
+[ 0-9a-f]+: 3064 7fff addiu v1,a0,32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
+[ 0-9a-f]+: 3064 8000 addiu v1,a0,-32768
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
@@ -1473,15 +1463,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a3 ffff lui v1,0xffff
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
+[ 0-9a-f]+: 3064 8000 addiu v1,a0,-32768
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 ffff lui v1,0xffff
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
-[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
+[ 0-9a-f]+: 3064 8001 addiu v1,a0,-32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 f000 lui v1,0xf000
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
@@ -1645,17 +1633,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2325 5000 lwm s0-s7,s8,ra,0\(a1\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2021 5fff lwm s0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
[ 0-9a-f]+: 2020 5000 lwm s0,0\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2021 5fff lwm s0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 5fff lwm s0,-1\(at\)
[ 0-9a-f]+: 203d 5000 lwm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -1666,20 +1652,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 205d 1000 lwp v0,0\(sp\)
[ 0-9a-f]+: 2043 1800 lwp v0,-2048\(v1\)
[ 0-9a-f]+: 2043 17ff lwp v0,2047\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 2041 1000 lwp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 2041 1000 lwp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 1fff lwp v0,-1\(at\)
[ 0-9a-f]+: 2043 1000 lwp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 2041 1fff lwp v0,-1\(at\)
[ 0-9a-f]+: 3060 8000 li v1,-32768
[ 0-9a-f]+: 2043 1000 lwp v0,0\(v1\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 2043 1fff lwp v0,-1\(v1\)
+[ 0-9a-f]+: 3060 7fff li v1,32767
+[ 0-9a-f]+: 2043 1000 lwp v0,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
[ 0-9a-f]+: 2043 1fff lwp v0,-1\(v1\)
[ 0-9a-f]+: 6060 0004 lwl v1,4\(zero\)
@@ -1688,8 +1672,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 0000 lwl v1,0\(zero\)
[ 0-9a-f]+: 6060 07ff lwl v1,2047\(zero\)
[ 0-9a-f]+: 6060 0800 lwl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1700,8 +1684,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6060 0fff lwl v1,-1\(zero\)
@@ -1712,11 +1696,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 0000 lwl v1,0\(a0\)
[ 0-9a-f]+: 6064 07ff lwl v1,2047\(a0\)
[ 0-9a-f]+: 6064 0800 lwl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1724,15 +1706,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
@@ -1747,8 +1727,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 0000 lwl v1,0\(zero\)
[ 0-9a-f]+: 6060 07ff lwl v1,2047\(zero\)
[ 0-9a-f]+: 6060 0800 lwl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1759,8 +1739,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6060 0fff lwl v1,-1\(zero\)
@@ -1771,11 +1751,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 0000 lwl v1,0\(a0\)
[ 0-9a-f]+: 6064 07ff lwl v1,2047\(a0\)
[ 0-9a-f]+: 6064 0800 lwl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1783,15 +1761,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
@@ -1806,8 +1782,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 1000 lwr v1,0\(zero\)
[ 0-9a-f]+: 6060 17ff lwr v1,2047\(zero\)
[ 0-9a-f]+: 6060 1800 lwr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1818,8 +1794,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 6060 1fff lwr v1,-1\(zero\)
@@ -1830,11 +1806,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 1000 lwr v1,0\(a0\)
[ 0-9a-f]+: 6064 17ff lwr v1,2047\(a0\)
[ 0-9a-f]+: 6064 1800 lwr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1842,15 +1816,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
@@ -1865,8 +1837,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 1000 lwr v1,0\(zero\)
[ 0-9a-f]+: 6060 17ff lwr v1,2047\(zero\)
[ 0-9a-f]+: 6060 1800 lwr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1877,8 +1849,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 6060 1fff lwr v1,-1\(zero\)
@@ -1889,11 +1861,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 1000 lwr v1,0\(a0\)
[ 0-9a-f]+: 6064 17ff lwr v1,2047\(a0\)
[ 0-9a-f]+: 6064 1800 lwr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1901,15 +1871,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
@@ -2383,8 +2351,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 b004 sc v1,4\(zero\)
[ 0-9a-f]+: 6060 b7ff sc v1,2047\(zero\)
[ 0-9a-f]+: 6060 b800 sc v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 bfff sc v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -2395,8 +2363,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 6060 bfff sc v1,-1\(zero\)
@@ -2407,11 +2375,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 b000 sc v1,0\(a0\)
[ 0-9a-f]+: 6064 b7ff sc v1,2047\(a0\)
[ 0-9a-f]+: 6064 b800 sc v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 bfff sc v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -2419,15 +2385,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
@@ -2954,8 +2918,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 8004 swl v1,4\(zero\)
[ 0-9a-f]+: 6060 87ff swl v1,2047\(zero\)
[ 0-9a-f]+: 6060 8800 swl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -2966,8 +2930,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6060 8fff swl v1,-1\(zero\)
@@ -2978,11 +2942,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 8000 swl v1,0\(a0\)
[ 0-9a-f]+: 6064 87ff swl v1,2047\(a0\)
[ 0-9a-f]+: 6064 8800 swl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -2990,15 +2952,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
@@ -3011,8 +2971,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 9004 swr v1,4\(zero\)
[ 0-9a-f]+: 6060 97ff swr v1,2047\(zero\)
[ 0-9a-f]+: 6060 9800 swr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3023,8 +2983,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 6060 9fff swr v1,-1\(zero\)
@@ -3035,11 +2995,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 9000 swr v1,0\(a0\)
[ 0-9a-f]+: 6064 97ff swr v1,2047\(a0\)
[ 0-9a-f]+: 6064 9800 swr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3047,15 +3005,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
@@ -3068,8 +3024,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 8004 swl v1,4\(zero\)
[ 0-9a-f]+: 6060 87ff swl v1,2047\(zero\)
[ 0-9a-f]+: 6060 8800 swl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3080,8 +3036,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6060 8fff swl v1,-1\(zero\)
@@ -3092,11 +3048,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 8000 swl v1,0\(a0\)
[ 0-9a-f]+: 6064 87ff swl v1,2047\(a0\)
[ 0-9a-f]+: 6064 8800 swl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3104,15 +3058,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
@@ -3125,8 +3077,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 9004 swr v1,4\(zero\)
[ 0-9a-f]+: 6060 97ff swr v1,2047\(zero\)
[ 0-9a-f]+: 6060 9800 swr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3137,8 +3089,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 6060 9fff swr v1,-1\(zero\)
@@ -3149,11 +3101,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 9000 swr v1,0\(a0\)
[ 0-9a-f]+: 6064 97ff swr v1,2047\(a0\)
[ 0-9a-f]+: 6064 9800 swr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3161,15 +3111,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
@@ -3206,19 +3154,17 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2020 d004 swm s0,4\(zero\)
[ 0-9a-f]+: 2020 d7ff swm s0,2047\(zero\)
[ 0-9a-f]+: 2020 d800 swm s0,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 2021 d800 swm s0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 2021 d7ff swm s0,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
[ 0-9a-f]+: 2025 d000 swm s0,0\(a1\)
[ 0-9a-f]+: 2025 d7ff swm s0,2047\(a1\)
[ 0-9a-f]+: 2025 d800 swm s0,-2048\(a1\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 00a1 0950 addu at,at,a1
-[ 0-9a-f]+: 2021 d800 swm s0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 00a1 0950 addu at,at,a1
-[ 0-9a-f]+: 2021 d7ff swm s0,2047\(at\)
+[ 0-9a-f]+: 3025 0800 addiu at,a1,2048
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
+[ 0-9a-f]+: 3025 f7ff addiu at,a1,-2049
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
[ 0-9a-f]+: 2045 d7ff swm s0-s1,2047\(a1\)
[ 0-9a-f]+: 2065 d7ff swm s0-s2,2047\(a1\)
[ 0-9a-f]+: 2085 d7ff swm s0-s3,2047\(a1\)
@@ -3237,12 +3183,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 22e5 d000 swm s0-s6,ra,0\(a1\)
[ 0-9a-f]+: 2305 d000 swm s0-s7,ra,0\(a1\)
[ 0-9a-f]+: 2325 d000 swm s0-s7,s8,ra,0\(a1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 dfff swm s0,-1\(at\)
[ 0-9a-f]+: 203d d000 swm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -3251,25 +3195,21 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2040 9004 swp v0,4\(zero\)
[ 0-9a-f]+: 2040 97ff swp v0,2047\(zero\)
[ 0-9a-f]+: 2040 9800 swp v0,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 2041 9800 swp v0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 2041 97ff swp v0,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
[ 0-9a-f]+: 205d 9000 swp v0,0\(sp\)
[ 0-9a-f]+: 205d 9000 swp v0,0\(sp\)
[ 0-9a-f]+: 2043 97ff swp v0,2047\(v1\)
[ 0-9a-f]+: 2043 9800 swp v0,-2048\(v1\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 9800 swp v0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 97ff swp v0,2047\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 9fff swp v0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 0800 addiu at,v1,2048
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3023 f7ff addiu at,v1,-2049
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
[ 0-9a-f]+: 2043 9000 swp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3437,11 +3377,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1c61 0000 lb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1c24 8000 lb at,-32768\(a0\)
+[ 0-9a-f]+: 1464 8001 lbu v1,-32767\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 5021 0001 ori at,at,0x1
@@ -3450,11 +3388,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1c61 0000 lb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1c24 8001 lb at,-32767\(a0\)
+[ 0-9a-f]+: 1464 8002 lbu v1,-32766\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3462,11 +3398,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1c61 0000 lb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1c24 ffff lb at,-1\(a0\)
+[ 0-9a-f]+: 1464 0000 lbu v1,0\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 1420 0004 lbu at,4\(zero\)
[ 0-9a-f]+: 1460 0005 lbu v1,5\(zero\)
@@ -3504,11 +3438,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1461 0000 lbu v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1424 8000 lbu at,-32768\(a0\)
+[ 0-9a-f]+: 1464 8001 lbu v1,-32767\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 5021 0001 ori at,at,0x1
@@ -3517,11 +3449,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1461 0000 lbu v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1424 8001 lbu at,-32767\(a0\)
+[ 0-9a-f]+: 1464 8002 lbu v1,-32766\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3529,11 +3459,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1461 0000 lbu v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1424 ffff lbu at,-1\(a0\)
+[ 0-9a-f]+: 1464 0000 lbu v1,0\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 6060 0000 lwl v1,0\(zero\)
[ 0-9a-f]+: 6060 1003 lwr v1,3\(zero\)
@@ -3579,9 +3507,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
+[ 0-9a-f]+: 6060 0fff lwl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 1002 lwr v1,2\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
@@ -3615,8 +3542,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -3624,18 +3550,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
+[ 0-9a-f]+: 6064 0fff lwl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 1002 lwr v1,2\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3675,14 +3598,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
-[ 0-9a-f]+: 0063 4040 srl v1,v1,0x8
-[ 0-9a-f]+: 1861 0000 sb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
-[ 0-9a-f]+: 0023 1a90 or v1,v1,at
+[ 0-9a-f]+: 1864 8001 sb v1,-32767\(a0\)
+[ 0-9a-f]+: 0023 4040 srl at,v1,0x8
+[ 0-9a-f]+: 1824 8000 sb at,-32768\(a0\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 5021 0001 ori at,at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3692,14 +3610,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
-[ 0-9a-f]+: 0063 4040 srl v1,v1,0x8
-[ 0-9a-f]+: 1861 0000 sb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
-[ 0-9a-f]+: 0023 1a90 or v1,v1,at
+[ 0-9a-f]+: 1864 8002 sb v1,-32766\(a0\)
+[ 0-9a-f]+: 0023 4040 srl at,v1,0x8
+[ 0-9a-f]+: 1824 8001 sb at,-32767\(a0\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
@@ -3708,14 +3621,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
-[ 0-9a-f]+: 0063 4040 srl v1,v1,0x8
-[ 0-9a-f]+: 1861 0000 sb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
-[ 0-9a-f]+: 0023 1a90 or v1,v1,at
+[ 0-9a-f]+: 1864 0000 sb v1,0\(a0\)
+[ 0-9a-f]+: 0023 4040 srl at,v1,0x8
+[ 0-9a-f]+: 1824 ffff sb at,-1\(a0\)
[ 0-9a-f]+: 6060 8000 swl v1,0\(zero\)
[ 0-9a-f]+: 6060 9003 swr v1,3\(zero\)
[ 0-9a-f]+: 6060 8000 swl v1,0\(zero\)
@@ -3760,9 +3668,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
+[ 0-9a-f]+: 6060 8fff swl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 9002 swr v1,2\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
@@ -3796,8 +3703,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -3805,18 +3711,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
+[ 0-9a-f]+: 6064 8fff swl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 9002 swr v1,2\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -4703,8 +4606,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: f880 0008 sw a0,8\(zero\)
[ 0-9a-f]+: f860 0004 sw v1,4\(zero\)
[ 0-9a-f]+: f880 0008 sw a0,8\(zero\)
-[ 0-9a-f]+: f860 7fff sw v1,32767\(zero\)
-[ 0-9a-f]+: f880 8003 sw a0,-32765\(zero\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
+[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
[ 0-9a-f]+: f860 8000 sw v1,-32768\(zero\)
[ 0-9a-f]+: f880 8004 sw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4713,21 +4617,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: f861 8000 sw v1,-32768\(at\)
-[ 0-9a-f]+: f881 8004 sw a0,-32764\(at\)
+[ 0-9a-f]+: f860 8000 sw v1,-32768\(zero\)
+[ 0-9a-f]+: f880 8004 sw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: f861 0001 sw v1,1\(at\)
[ 0-9a-f]+: f881 0005 sw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: f861 8001 sw v1,-32767\(at\)
-[ 0-9a-f]+: f881 8005 sw a0,-32763\(at\)
+[ 0-9a-f]+: f860 8001 sw v1,-32767\(zero\)
+[ 0-9a-f]+: f880 8005 sw a0,-32763\(zero\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: f861 ffff sw v1,-1\(at\)
-[ 0-9a-f]+: f881 0003 sw a0,3\(at\)
+[ 0-9a-f]+: f860 ffff sw v1,-1\(zero\)
+[ 0-9a-f]+: f880 0003 sw a0,3\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: f861 5678 sw v1,22136\(at\)
[ 0-9a-f]+: f881 567c sw a0,22140\(at\)
@@ -4735,8 +4636,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: f884 0004 sw a0,4\(a0\)
[ 0-9a-f]+: f864 0000 sw v1,0\(a0\)
[ 0-9a-f]+: f884 0004 sw a0,4\(a0\)
-[ 0-9a-f]+: f864 7fff sw v1,32767\(a0\)
-[ 0-9a-f]+: f884 8003 sw a0,-32765\(a0\)
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
+[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
[ 0-9a-f]+: f864 8000 sw v1,-32768\(a0\)
[ 0-9a-f]+: f884 8004 sw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4747,26 +4649,20 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: f861 8000 sw v1,-32768\(at\)
-[ 0-9a-f]+: f881 8004 sw a0,-32764\(at\)
+[ 0-9a-f]+: f864 8000 sw v1,-32768\(a0\)
+[ 0-9a-f]+: f884 8004 sw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 0001 sw v1,1\(at\)
[ 0-9a-f]+: f881 0005 sw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: f861 8001 sw v1,-32767\(at\)
-[ 0-9a-f]+: f881 8005 sw a0,-32763\(at\)
+[ 0-9a-f]+: f864 8001 sw v1,-32767\(a0\)
+[ 0-9a-f]+: f884 8005 sw a0,-32763\(a0\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: f861 ffff sw v1,-1\(at\)
-[ 0-9a-f]+: f881 0003 sw a0,3\(at\)
+[ 0-9a-f]+: f864 ffff sw v1,-1\(a0\)
+[ 0-9a-f]+: f884 0003 sw a0,3\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 5678 sw v1,22136\(at\)
@@ -4775,8 +4671,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: fc80 0008 lw a0,8\(zero\)
[ 0-9a-f]+: fc60 0004 lw v1,4\(zero\)
[ 0-9a-f]+: fc80 0008 lw a0,8\(zero\)
-[ 0-9a-f]+: fc60 7fff lw v1,32767\(zero\)
-[ 0-9a-f]+: fc80 8003 lw a0,-32765\(zero\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
+[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
[ 0-9a-f]+: fc60 8000 lw v1,-32768\(zero\)
[ 0-9a-f]+: fc80 8004 lw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4785,21 +4682,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: fc61 8000 lw v1,-32768\(at\)
-[ 0-9a-f]+: fc81 8004 lw a0,-32764\(at\)
+[ 0-9a-f]+: fc60 8000 lw v1,-32768\(zero\)
+[ 0-9a-f]+: fc80 8004 lw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: fc61 0001 lw v1,1\(at\)
[ 0-9a-f]+: fc81 0005 lw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: fc61 8001 lw v1,-32767\(at\)
-[ 0-9a-f]+: fc81 8005 lw a0,-32763\(at\)
+[ 0-9a-f]+: fc60 8001 lw v1,-32767\(zero\)
+[ 0-9a-f]+: fc80 8005 lw a0,-32763\(zero\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: fc61 ffff lw v1,-1\(at\)
-[ 0-9a-f]+: fc81 0003 lw a0,3\(at\)
+[ 0-9a-f]+: fc60 ffff lw v1,-1\(zero\)
+[ 0-9a-f]+: fc80 0003 lw a0,3\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: fc61 5678 lw v1,22136\(at\)
[ 0-9a-f]+: fc81 567c lw a0,22140\(at\)
@@ -4807,8 +4701,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: fc84 0004 lw a0,4\(a0\)
[ 0-9a-f]+: fc64 0000 lw v1,0\(a0\)
[ 0-9a-f]+: fc84 0004 lw a0,4\(a0\)
-[ 0-9a-f]+: fc64 7fff lw v1,32767\(a0\)
-[ 0-9a-f]+: fc84 8003 lw a0,-32765\(a0\)
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
+[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
[ 0-9a-f]+: fc64 8000 lw v1,-32768\(a0\)
[ 0-9a-f]+: fc84 8004 lw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4819,26 +4714,20 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: fc61 8000 lw v1,-32768\(at\)
-[ 0-9a-f]+: fc81 8004 lw a0,-32764\(at\)
+[ 0-9a-f]+: fc64 8000 lw v1,-32768\(a0\)
+[ 0-9a-f]+: fc84 8004 lw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 0001 lw v1,1\(at\)
[ 0-9a-f]+: fc81 0005 lw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: fc61 8001 lw v1,-32767\(at\)
-[ 0-9a-f]+: fc81 8005 lw a0,-32763\(at\)
+[ 0-9a-f]+: fc64 8001 lw v1,-32767\(a0\)
+[ 0-9a-f]+: fc84 8005 lw a0,-32763\(a0\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: fc61 ffff lw v1,-1\(at\)
-[ 0-9a-f]+: fc81 0003 lw a0,3\(at\)
+[ 0-9a-f]+: fc64 ffff lw v1,-1\(a0\)
+[ 0-9a-f]+: fc84 0003 lw a0,3\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 5678 lw v1,22136\(at\)
@@ -4862,11 +4751,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 2004 ldc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 2000 ldc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 2000 ldc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 2fff ldc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -4874,15 +4761,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 2001 ldc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 2001 ldc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
@@ -4897,11 +4782,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 0004 lwc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 0000 lwc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 0000 lwc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 0fff lwc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -4909,15 +4792,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 0001 lwc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 0001 lwc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
@@ -5060,11 +4941,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 a004 sdc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 a000 sdc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 a000 sdc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 afff sdc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -5072,15 +4951,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 a001 sdc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 a001 sdc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
@@ -5095,11 +4972,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 8004 swc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 8000 swc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 8000 swc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 8fff swc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -5107,15 +4982,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 8001 swc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 8001 swc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
@@ -5180,7 +5053,6 @@ Disassembly of section \.text:
[ 0-9a-f]+: 03ff 8b7c syscall 0x3ff
[ 0-9a-f]+: 03ff fffa cop2 0x7fffff
[ 0-9a-f]+: 0c00 nop
-[ 0-9a-f]+: 0000 0000 nop
[0-9a-f]+ <fp_test>:
[ 0-9a-f]+: 5400 01a0 prefx 0x0,zero\(zero\)
@@ -7185,8 +7057,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 4004 ldl v0,4\(v1\)
[ 0-9a-f]+: 6043 4e00 ldl v0,-512\(v1\)
[ 0-9a-f]+: 6043 41ff ldl v0,511\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 6041 4000 ldl v0,0\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
@@ -7200,8 +7071,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 5004 ldr v0,4\(v1\)
[ 0-9a-f]+: 6043 5e00 ldr v0,-512\(v1\)
[ 0-9a-f]+: 6043 51ff ldr v0,511\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 6041 5000 ldr v0,0\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
@@ -7215,8 +7085,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 7004 lld v0,4\(v1\)
[ 0-9a-f]+: 6043 7e00 lld v0,-512\(v1\)
[ 0-9a-f]+: 6043 71ff lld v0,511\(v1\)
-[ 0-9a-f]+: 3040 8000 li v0,-32768
-[ 0-9a-f]+: 0062 1150 addu v0,v0,v1
+[ 0-9a-f]+: 3043 8000 addiu v0,v1,-32768
[ 0-9a-f]+: 6042 7000 lld v0,0\(v0\)
[ 0-9a-f]+: 41a2 1234 lui v0,0x1234
[ 0-9a-f]+: 5042 5000 ori v0,v0,0x5000
@@ -7230,8 +7099,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 e004 lwu v0,4\(v1\)
[ 0-9a-f]+: 6043 ee00 lwu v0,-512\(v1\)
[ 0-9a-f]+: 6043 e1ff lwu v0,511\(v1\)
-[ 0-9a-f]+: 3040 8000 li v0,-32768
-[ 0-9a-f]+: 0062 1150 addu v0,v0,v1
+[ 0-9a-f]+: 3043 8000 addiu v0,v1,-32768
[ 0-9a-f]+: 6042 e000 lwu v0,0\(v0\)
[ 0-9a-f]+: 41a2 1234 lui v0,0x1234
[ 0-9a-f]+: 5042 5000 ori v0,v0,0x5000
@@ -7245,8 +7113,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 f004 scd v0,4\(v1\)
[ 0-9a-f]+: 6043 fe00 scd v0,-512\(v1\)
[ 0-9a-f]+: 6043 f1ff scd v0,511\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 6041 f000 scd v0,0\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
@@ -7266,12 +7133,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6040 c000 sdl v0,0\(zero\)
[ 0-9a-f]+: 6040 c004 sdl v0,4\(zero\)
[ 0-9a-f]+: 6043 c004 sdl v0,4\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 6041 c000 sdl v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 6041 c000 sdl v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 6041 cfff sdl v0,-1\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
[ 0-9a-f]+: 0061 0950 addu at,at,v1
@@ -7282,12 +7147,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6040 d000 sdr v0,0\(zero\)
[ 0-9a-f]+: 6040 d004 sdr v0,4\(zero\)
[ 0-9a-f]+: 6043 d004 sdr v0,4\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 6041 d000 sdr v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 6041 d000 sdr v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 6041 dfff sdr v0,-1\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
[ 0-9a-f]+: 0061 0950 addu at,at,v1
@@ -7316,17 +7179,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2325 7000 ldm s0-s7,s8,ra,0\(a1\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2021 7fff ldm s0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
[ 0-9a-f]+: 2020 7000 ldm s0,0\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2021 7fff ldm s0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 7fff ldm s0,-1\(at\)
[ 0-9a-f]+: 203d 7000 ldm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -7341,20 +7202,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 205d 4000 ldp v0,0\(sp\)
[ 0-9a-f]+: 2043 4800 ldp v0,-2048\(v1\)
[ 0-9a-f]+: 2043 47ff ldp v0,2047\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 2041 4000 ldp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 2041 4000 ldp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 4fff ldp v0,-1\(at\)
[ 0-9a-f]+: 2043 4000 ldp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 2041 4fff ldp v0,-1\(at\)
[ 0-9a-f]+: 3060 8000 li v1,-32768
[ 0-9a-f]+: 2043 4000 ldp v0,0\(v1\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 2043 4fff ldp v0,-1\(v1\)
+[ 0-9a-f]+: 3060 7fff li v1,32767
+[ 0-9a-f]+: 2043 4000 ldp v0,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
[ 0-9a-f]+: 2043 4fff ldp v0,-1\(v1\)
[ 0-9a-f]+: 41a3 1234 lui v1,0x1234
@@ -7384,17 +7243,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2325 f000 sdm s0-s7,s8,ra,0\(a1\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2021 ffff sdm s0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
[ 0-9a-f]+: 2020 f000 sdm s0,0\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2021 ffff sdm s0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 ffff sdm s0,-1\(at\)
[ 0-9a-f]+: 203d f000 sdm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -7409,20 +7266,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 205d c000 sdp v0,0\(sp\)
[ 0-9a-f]+: 2043 c800 sdp v0,-2048\(v1\)
[ 0-9a-f]+: 2043 c7ff sdp v0,2047\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
[ 0-9a-f]+: 2043 c000 sdp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
@@ -7472,9 +7327,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
-[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
+[ 0-9a-f]+: 6060 4fff ldl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 5006 ldr v1,6\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
@@ -7508,8 +7362,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -7517,18 +7370,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
-[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
+[ 0-9a-f]+: 6064 4fff ldl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 5006 ldr v1,6\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -7578,9 +7428,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
-[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
+[ 0-9a-f]+: 6060 cfff sdl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 d006 sdr v1,6\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
@@ -7614,8 +7463,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -7623,18 +7471,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
-[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
+[ 0-9a-f]+: 6064 cfff sdl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 d006 sdr v1,6\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
diff --git a/gas/testsuite/gas/mips/micromips.d b/gas/testsuite/gas/mips/micromips.d
index 29af148..6bd6bfa 100644
--- a/gas/testsuite/gas/mips/micromips.d
+++ b/gas/testsuite/gas/mips/micromips.d
@@ -12,10 +12,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6000 2000 pref 0x0,0\(zero\)
[ 0-9a-f]+: 6000 27ff pref 0x0,2047\(zero\)
[ 0-9a-f]+: 6000 2800 pref 0x0,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 6001 2800 pref 0x0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 6001 27ff pref 0x0,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 6001 2000 pref 0x0,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 6001 2000 pref 0x0,0\(at\)
[ 0-9a-f]+: 6000 2000 pref 0x0,0\(zero\)
[ 0-9a-f]+: 6000 2000 pref 0x0,0\(zero\)
[ 0-9a-f]+: 6020 2000 pref 0x1,0\(zero\)
@@ -29,27 +29,23 @@ Disassembly of section \.text:
[ 0-9a-f]+: 60e0 2e00 pref 0x7,-512\(zero\)
[ 0-9a-f]+: 63e0 27ff pref 0x1f,2047\(zero\)
[ 0-9a-f]+: 63e0 2800 pref 0x1f,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 63e1 2800 pref 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 63e1 27ff pref 0x1f,2047\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 2fff pref 0x3,-1\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
[ 0-9a-f]+: 63e2 27ff pref 0x1f,2047\(v0\)
[ 0-9a-f]+: 63e2 2800 pref 0x1f,-2048\(v0\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 63e1 2800 pref 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 63e1 27ff pref 0x1f,2047\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 6061 2fff pref 0x3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
+[ 0-9a-f]+: 3022 0800 addiu at,v0,2048
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3022 f7ff addiu at,v0,-2049
+[ 0-9a-f]+: 63e1 2000 pref 0x1f,0\(at\)
+[ 0-9a-f]+: 3022 7fff addiu at,v0,32767
+[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
+[ 0-9a-f]+: 3022 8000 addiu at,v0,-32768
[ 0-9a-f]+: 6061 2000 pref 0x3,0\(at\)
[ 0-9a-f]+: 0c00 nop
[ 0-9a-f]+: 0c00 nop
@@ -825,19 +821,17 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2000 6000 cache 0x0,0\(zero\)
[ 0-9a-f]+: 2000 6800 cache 0x0,-2048\(zero\)
[ 0-9a-f]+: 2000 67ff cache 0x0,2047\(zero\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 2001 67ff cache 0x0,2047\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 2001 6800 cache 0x0,-2048\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
[ 0-9a-f]+: 2002 6000 cache 0x0,0\(v0\)
[ 0-9a-f]+: 2002 6800 cache 0x0,-2048\(v0\)
[ 0-9a-f]+: 2002 67ff cache 0x0,2047\(v0\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 2001 67ff cache 0x0,2047\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0041 0950 addu at,at,v0
-[ 0-9a-f]+: 2001 6800 cache 0x0,-2048\(at\)
+[ 0-9a-f]+: 3022 f7ff addiu at,v0,-2049
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
+[ 0-9a-f]+: 3022 0800 addiu at,v0,2048
+[ 0-9a-f]+: 2001 6000 cache 0x0,0\(at\)
[ 0-9a-f]+: 2000 6000 cache 0x0,0\(zero\)
[ 0-9a-f]+: 2000 6000 cache 0x0,0\(zero\)
[ 0-9a-f]+: 2020 6000 cache 0x1,0\(zero\)
@@ -854,12 +848,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 23e1 6800 cache 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 23e1 67ff cache 0x1f,2047\(at\)
+[ 0-9a-f]+: 3023 0800 addiu at,v1,2048
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
+[ 0-9a-f]+: 3023 f7ff addiu at,v1,-2049
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 23e1 6001 cache 0x1f,1\(at\)
@@ -875,10 +867,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 23e1 6fff cache 0x1f,-1\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 23e1 6800 cache 0x1f,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 23e1 67ff cache 0x1f,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 23e1 6000 cache 0x1f,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 23e1 6001 cache 0x1f,1\(at\)
[ 0-9a-f]+: 23e0 6fff cache 0x1f,-1\(zero\)
@@ -1453,8 +1445,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 3000 ll v1,0\(zero\)
[ 0-9a-f]+: 6060 3004 ll v1,4\(zero\)
[ 0-9a-f]+: 6060 3004 ll v1,4\(zero\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 6063 3fff ll v1,-1\(v1\)
+[ 0-9a-f]+: 3060 7fff li v1,32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 3060 8000 li v1,-32768
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
@@ -1465,8 +1457,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 ffff lui v1,0xffff
[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
+[ 0-9a-f]+: 3060 8001 li v1,-32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 f000 lui v1,0xf000
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 6060 3fff ll v1,-1\(zero\)
@@ -1476,11 +1468,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 3000 ll v1,0\(a0\)
[ 0-9a-f]+: 6064 3000 ll v1,0\(a0\)
[ 0-9a-f]+: 6064 3004 ll v1,4\(a0\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
-[ 0-9a-f]+: 6063 3fff ll v1,-1\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
+[ 0-9a-f]+: 3064 7fff addiu v1,a0,32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
+[ 0-9a-f]+: 3064 8000 addiu v1,a0,-32768
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
@@ -1488,15 +1478,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a3 ffff lui v1,0xffff
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
+[ 0-9a-f]+: 3064 8000 addiu v1,a0,-32768
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 ffff lui v1,0xffff
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
-[ 0-9a-f]+: 3060 8000 li v1,-32768
-[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
-[ 0-9a-f]+: 6063 3001 ll v1,1\(v1\)
+[ 0-9a-f]+: 3064 8001 addiu v1,a0,-32767
+[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
[ 0-9a-f]+: 41a3 f000 lui v1,0xf000
[ 0-9a-f]+: 0083 1950 addu v1,v1,a0
[ 0-9a-f]+: 6063 3000 ll v1,0\(v1\)
@@ -1660,17 +1648,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2325 5000 lwm s0-s7,s8,ra,0\(a1\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2021 5fff lwm s0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
[ 0-9a-f]+: 2020 5000 lwm s0,0\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2021 5fff lwm s0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 5000 lwm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 5fff lwm s0,-1\(at\)
[ 0-9a-f]+: 203d 5000 lwm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -1681,20 +1667,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 205d 1000 lwp v0,0\(sp\)
[ 0-9a-f]+: 2043 1800 lwp v0,-2048\(v1\)
[ 0-9a-f]+: 2043 17ff lwp v0,2047\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 2041 1000 lwp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 2041 1000 lwp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 1fff lwp v0,-1\(at\)
[ 0-9a-f]+: 2043 1000 lwp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 2041 1fff lwp v0,-1\(at\)
[ 0-9a-f]+: 3060 8000 li v1,-32768
[ 0-9a-f]+: 2043 1000 lwp v0,0\(v1\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 2043 1fff lwp v0,-1\(v1\)
+[ 0-9a-f]+: 3060 7fff li v1,32767
+[ 0-9a-f]+: 2043 1000 lwp v0,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
[ 0-9a-f]+: 2043 1fff lwp v0,-1\(v1\)
[ 0-9a-f]+: 6060 0004 lwl v1,4\(zero\)
@@ -1703,8 +1687,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 0000 lwl v1,0\(zero\)
[ 0-9a-f]+: 6060 07ff lwl v1,2047\(zero\)
[ 0-9a-f]+: 6060 0800 lwl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1715,8 +1699,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6060 0fff lwl v1,-1\(zero\)
@@ -1727,11 +1711,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 0000 lwl v1,0\(a0\)
[ 0-9a-f]+: 6064 07ff lwl v1,2047\(a0\)
[ 0-9a-f]+: 6064 0800 lwl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1739,15 +1721,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
@@ -1762,8 +1742,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 0000 lwl v1,0\(zero\)
[ 0-9a-f]+: 6060 07ff lwl v1,2047\(zero\)
[ 0-9a-f]+: 6060 0800 lwl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1774,8 +1754,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6060 0fff lwl v1,-1\(zero\)
@@ -1786,11 +1766,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 0000 lwl v1,0\(a0\)
[ 0-9a-f]+: 6064 07ff lwl v1,2047\(a0\)
[ 0-9a-f]+: 6064 0800 lwl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0fff lwl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1798,15 +1776,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0001 lwl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
@@ -1821,8 +1797,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 1000 lwr v1,0\(zero\)
[ 0-9a-f]+: 6060 17ff lwr v1,2047\(zero\)
[ 0-9a-f]+: 6060 1800 lwr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1833,8 +1809,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 6060 1fff lwr v1,-1\(zero\)
@@ -1845,11 +1821,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 1000 lwr v1,0\(a0\)
[ 0-9a-f]+: 6064 17ff lwr v1,2047\(a0\)
[ 0-9a-f]+: 6064 1800 lwr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1857,15 +1831,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
@@ -1880,8 +1852,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 1000 lwr v1,0\(zero\)
[ 0-9a-f]+: 6060 17ff lwr v1,2047\(zero\)
[ 0-9a-f]+: 6060 1800 lwr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -1892,8 +1864,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 6060 1fff lwr v1,-1\(zero\)
@@ -1904,11 +1876,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 1000 lwr v1,0\(a0\)
[ 0-9a-f]+: 6064 17ff lwr v1,2047\(a0\)
[ 0-9a-f]+: 6064 1800 lwr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1fff lwr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -1916,15 +1886,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 1001 lwr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 1000 lwr v1,0\(at\)
@@ -2455,8 +2423,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 b004 sc v1,4\(zero\)
[ 0-9a-f]+: 6060 b7ff sc v1,2047\(zero\)
[ 0-9a-f]+: 6060 b800 sc v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 bfff sc v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -2467,8 +2435,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 6060 bfff sc v1,-1\(zero\)
@@ -2479,11 +2447,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 b000 sc v1,0\(a0\)
[ 0-9a-f]+: 6064 b7ff sc v1,2047\(a0\)
[ 0-9a-f]+: 6064 b800 sc v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 bfff sc v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -2491,15 +2457,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 b001 sc v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 b000 sc v1,0\(at\)
@@ -3026,8 +2990,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 8004 swl v1,4\(zero\)
[ 0-9a-f]+: 6060 87ff swl v1,2047\(zero\)
[ 0-9a-f]+: 6060 8800 swl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3038,8 +3002,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6060 8fff swl v1,-1\(zero\)
@@ -3050,11 +3014,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 8000 swl v1,0\(a0\)
[ 0-9a-f]+: 6064 87ff swl v1,2047\(a0\)
[ 0-9a-f]+: 6064 8800 swl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3062,15 +3024,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
@@ -3083,8 +3043,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 9004 swr v1,4\(zero\)
[ 0-9a-f]+: 6060 97ff swr v1,2047\(zero\)
[ 0-9a-f]+: 6060 9800 swr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3095,8 +3055,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 6060 9fff swr v1,-1\(zero\)
@@ -3107,11 +3067,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 9000 swr v1,0\(a0\)
[ 0-9a-f]+: 6064 97ff swr v1,2047\(a0\)
[ 0-9a-f]+: 6064 9800 swr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3119,15 +3077,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
@@ -3140,8 +3096,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 8004 swl v1,4\(zero\)
[ 0-9a-f]+: 6060 87ff swl v1,2047\(zero\)
[ 0-9a-f]+: 6060 8800 swl v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3152,8 +3108,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6060 8fff swl v1,-1\(zero\)
@@ -3164,11 +3120,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 8000 swl v1,0\(a0\)
[ 0-9a-f]+: 6064 87ff swl v1,2047\(a0\)
[ 0-9a-f]+: 6064 8800 swl v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8fff swl v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3176,15 +3130,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8001 swl v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
@@ -3197,8 +3149,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 9004 swr v1,4\(zero\)
[ 0-9a-f]+: 6060 97ff swr v1,2047\(zero\)
[ 0-9a-f]+: 6060 9800 swr v1,-2048\(zero\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3209,8 +3161,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3020 8001 li at,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 6060 9fff swr v1,-1\(zero\)
@@ -3221,11 +3173,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6064 9000 swr v1,0\(a0\)
[ 0-9a-f]+: 6064 97ff swr v1,2047\(a0\)
[ 0-9a-f]+: 6064 9800 swr v1,-2048\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9fff swr v1,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3233,15 +3183,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 9001 swr v1,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 9000 swr v1,0\(at\)
@@ -3278,19 +3226,17 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2020 d004 swm s0,4\(zero\)
[ 0-9a-f]+: 2020 d7ff swm s0,2047\(zero\)
[ 0-9a-f]+: 2020 d800 swm s0,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 2021 d800 swm s0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 2021 d7ff swm s0,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
[ 0-9a-f]+: 2025 d000 swm s0,0\(a1\)
[ 0-9a-f]+: 2025 d7ff swm s0,2047\(a1\)
[ 0-9a-f]+: 2025 d800 swm s0,-2048\(a1\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 00a1 0950 addu at,at,a1
-[ 0-9a-f]+: 2021 d800 swm s0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 00a1 0950 addu at,at,a1
-[ 0-9a-f]+: 2021 d7ff swm s0,2047\(at\)
+[ 0-9a-f]+: 3025 0800 addiu at,a1,2048
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
+[ 0-9a-f]+: 3025 f7ff addiu at,a1,-2049
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
[ 0-9a-f]+: 2045 d7ff swm s0-s1,2047\(a1\)
[ 0-9a-f]+: 2065 d7ff swm s0-s2,2047\(a1\)
[ 0-9a-f]+: 2085 d7ff swm s0-s3,2047\(a1\)
@@ -3309,12 +3255,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 22e5 d000 swm s0-s6,ra,0\(a1\)
[ 0-9a-f]+: 2305 d000 swm s0-s7,ra,0\(a1\)
[ 0-9a-f]+: 2325 d000 swm s0-s7,s8,ra,0\(a1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 d000 swm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 dfff swm s0,-1\(at\)
[ 0-9a-f]+: 203d d000 swm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -3323,25 +3267,21 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2040 9004 swp v0,4\(zero\)
[ 0-9a-f]+: 2040 97ff swp v0,2047\(zero\)
[ 0-9a-f]+: 2040 9800 swp v0,-2048\(zero\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 2041 9800 swp v0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 2041 97ff swp v0,2047\(at\)
+[ 0-9a-f]+: 3020 0800 li at,2048
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3020 f7ff li at,-2049
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
[ 0-9a-f]+: 205d 9000 swp v0,0\(sp\)
[ 0-9a-f]+: 205d 9000 swp v0,0\(sp\)
[ 0-9a-f]+: 2043 97ff swp v0,2047\(v1\)
[ 0-9a-f]+: 2043 9800 swp v0,-2048\(v1\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 9800 swp v0,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 97ff swp v0,2047\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 9fff swp v0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 0800 addiu at,v1,2048
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3023 f7ff addiu at,v1,-2049
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
+[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 2041 9000 swp v0,0\(at\)
[ 0-9a-f]+: 2043 9000 swp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -3509,11 +3449,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1c61 0000 lb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1c24 8000 lb at,-32768\(a0\)
+[ 0-9a-f]+: 1464 8001 lbu v1,-32767\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 5021 0001 ori at,at,0x1
@@ -3522,11 +3460,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1c61 0000 lb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1c24 8001 lb at,-32767\(a0\)
+[ 0-9a-f]+: 1464 8002 lbu v1,-32766\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3534,11 +3470,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1c61 0000 lb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1c24 ffff lb at,-1\(a0\)
+[ 0-9a-f]+: 1464 0000 lbu v1,0\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 1420 0004 lbu at,4\(zero\)
[ 0-9a-f]+: 1460 0005 lbu v1,5\(zero\)
@@ -3576,11 +3510,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1461 0000 lbu v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1424 8000 lbu at,-32768\(a0\)
+[ 0-9a-f]+: 1464 8001 lbu v1,-32767\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 5021 0001 ori at,at,0x1
@@ -3589,11 +3521,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1461 0000 lbu v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1424 8001 lbu at,-32767\(a0\)
+[ 0-9a-f]+: 1464 8002 lbu v1,-32766\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3601,11 +3531,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1461 0000 lbu v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
+[ 0-9a-f]+: 1424 ffff lbu at,-1\(a0\)
+[ 0-9a-f]+: 1464 0000 lbu v1,0\(a0\)
+[ 0-9a-f]+: 0021 4000 sll at,at,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
[ 0-9a-f]+: 6060 0000 lwl v1,0\(zero\)
[ 0-9a-f]+: 6060 1003 lwr v1,3\(zero\)
@@ -3651,9 +3579,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
+[ 0-9a-f]+: 6060 0fff lwl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 1002 lwr v1,2\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
@@ -3687,8 +3614,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -3696,18 +3622,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 0000 lwl v1,0\(at\)
-[ 0-9a-f]+: 6061 1003 lwr v1,3\(at\)
+[ 0-9a-f]+: 6064 0fff lwl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 1002 lwr v1,2\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3747,14 +3670,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
-[ 0-9a-f]+: 0063 4040 srl v1,v1,0x8
-[ 0-9a-f]+: 1861 0000 sb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
-[ 0-9a-f]+: 0023 1a90 or v1,v1,at
+[ 0-9a-f]+: 1864 8001 sb v1,-32767\(a0\)
+[ 0-9a-f]+: 0023 4040 srl at,v1,0x8
+[ 0-9a-f]+: 1824 8000 sb at,-32768\(a0\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 5021 0001 ori at,at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -3764,14 +3682,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
-[ 0-9a-f]+: 0063 4040 srl v1,v1,0x8
-[ 0-9a-f]+: 1861 0000 sb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
-[ 0-9a-f]+: 0023 1a90 or v1,v1,at
+[ 0-9a-f]+: 1864 8002 sb v1,-32766\(a0\)
+[ 0-9a-f]+: 0023 4040 srl at,v1,0x8
+[ 0-9a-f]+: 1824 8001 sb at,-32767\(a0\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
@@ -3780,14 +3693,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
[ 0-9a-f]+: 0023 1a90 or v1,v1,at
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 1861 0001 sb v1,1\(at\)
-[ 0-9a-f]+: 0063 4040 srl v1,v1,0x8
-[ 0-9a-f]+: 1861 0000 sb v1,0\(at\)
-[ 0-9a-f]+: 1421 0001 lbu at,1\(at\)
-[ 0-9a-f]+: 0063 4000 sll v1,v1,0x8
-[ 0-9a-f]+: 0023 1a90 or v1,v1,at
+[ 0-9a-f]+: 1864 0000 sb v1,0\(a0\)
+[ 0-9a-f]+: 0023 4040 srl at,v1,0x8
+[ 0-9a-f]+: 1824 ffff sb at,-1\(a0\)
[ 0-9a-f]+: 6060 8000 swl v1,0\(zero\)
[ 0-9a-f]+: 6060 9003 swr v1,3\(zero\)
[ 0-9a-f]+: 6060 8000 swl v1,0\(zero\)
@@ -3832,9 +3740,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
+[ 0-9a-f]+: 6060 8fff swl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 9002 swr v1,2\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
@@ -3868,8 +3775,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -3877,18 +3783,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 8000 swl v1,0\(at\)
-[ 0-9a-f]+: 6061 9003 swr v1,3\(at\)
+[ 0-9a-f]+: 6064 8fff swl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 9002 swr v1,2\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -4775,8 +4678,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: f880 0008 sw a0,8\(zero\)
[ 0-9a-f]+: f860 0004 sw v1,4\(zero\)
[ 0-9a-f]+: f880 0008 sw a0,8\(zero\)
-[ 0-9a-f]+: f860 7fff sw v1,32767\(zero\)
-[ 0-9a-f]+: f880 8003 sw a0,-32765\(zero\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
+[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
[ 0-9a-f]+: f860 8000 sw v1,-32768\(zero\)
[ 0-9a-f]+: f880 8004 sw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4785,21 +4689,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: f861 8000 sw v1,-32768\(at\)
-[ 0-9a-f]+: f881 8004 sw a0,-32764\(at\)
+[ 0-9a-f]+: f860 8000 sw v1,-32768\(zero\)
+[ 0-9a-f]+: f880 8004 sw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: f861 0001 sw v1,1\(at\)
[ 0-9a-f]+: f881 0005 sw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: f861 8001 sw v1,-32767\(at\)
-[ 0-9a-f]+: f881 8005 sw a0,-32763\(at\)
+[ 0-9a-f]+: f860 8001 sw v1,-32767\(zero\)
+[ 0-9a-f]+: f880 8005 sw a0,-32763\(zero\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: f861 ffff sw v1,-1\(at\)
-[ 0-9a-f]+: f881 0003 sw a0,3\(at\)
+[ 0-9a-f]+: f860 ffff sw v1,-1\(zero\)
+[ 0-9a-f]+: f880 0003 sw a0,3\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: f861 5678 sw v1,22136\(at\)
[ 0-9a-f]+: f881 567c sw a0,22140\(at\)
@@ -4807,8 +4708,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: f884 0004 sw a0,4\(a0\)
[ 0-9a-f]+: f864 0000 sw v1,0\(a0\)
[ 0-9a-f]+: f884 0004 sw a0,4\(a0\)
-[ 0-9a-f]+: f864 7fff sw v1,32767\(a0\)
-[ 0-9a-f]+: f884 8003 sw a0,-32765\(a0\)
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
+[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
[ 0-9a-f]+: f864 8000 sw v1,-32768\(a0\)
[ 0-9a-f]+: f884 8004 sw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4819,26 +4721,20 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: f861 8000 sw v1,-32768\(at\)
-[ 0-9a-f]+: f881 8004 sw a0,-32764\(at\)
+[ 0-9a-f]+: f864 8000 sw v1,-32768\(a0\)
+[ 0-9a-f]+: f884 8004 sw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 0001 sw v1,1\(at\)
[ 0-9a-f]+: f881 0005 sw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: f861 8001 sw v1,-32767\(at\)
-[ 0-9a-f]+: f881 8005 sw a0,-32763\(at\)
+[ 0-9a-f]+: f864 8001 sw v1,-32767\(a0\)
+[ 0-9a-f]+: f884 8005 sw a0,-32763\(a0\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 0000 sw v1,0\(at\)
[ 0-9a-f]+: f881 0004 sw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: f861 ffff sw v1,-1\(at\)
-[ 0-9a-f]+: f881 0003 sw a0,3\(at\)
+[ 0-9a-f]+: f864 ffff sw v1,-1\(a0\)
+[ 0-9a-f]+: f884 0003 sw a0,3\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: f861 5678 sw v1,22136\(at\)
@@ -4847,8 +4743,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: fc80 0008 lw a0,8\(zero\)
[ 0-9a-f]+: fc60 0004 lw v1,4\(zero\)
[ 0-9a-f]+: fc80 0008 lw a0,8\(zero\)
-[ 0-9a-f]+: fc60 7fff lw v1,32767\(zero\)
-[ 0-9a-f]+: fc80 8003 lw a0,-32765\(zero\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
+[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
[ 0-9a-f]+: fc60 8000 lw v1,-32768\(zero\)
[ 0-9a-f]+: fc80 8004 lw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4857,21 +4754,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: fc61 8000 lw v1,-32768\(at\)
-[ 0-9a-f]+: fc81 8004 lw a0,-32764\(at\)
+[ 0-9a-f]+: fc60 8000 lw v1,-32768\(zero\)
+[ 0-9a-f]+: fc80 8004 lw a0,-32764\(zero\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: fc61 0001 lw v1,1\(at\)
[ 0-9a-f]+: fc81 0005 lw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: fc61 8001 lw v1,-32767\(at\)
-[ 0-9a-f]+: fc81 8005 lw a0,-32763\(at\)
+[ 0-9a-f]+: fc60 8001 lw v1,-32767\(zero\)
+[ 0-9a-f]+: fc80 8005 lw a0,-32763\(zero\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: fc61 ffff lw v1,-1\(at\)
-[ 0-9a-f]+: fc81 0003 lw a0,3\(at\)
+[ 0-9a-f]+: fc60 ffff lw v1,-1\(zero\)
+[ 0-9a-f]+: fc80 0003 lw a0,3\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: fc61 5678 lw v1,22136\(at\)
[ 0-9a-f]+: fc81 567c lw a0,22140\(at\)
@@ -4879,8 +4773,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: fc84 0004 lw a0,4\(a0\)
[ 0-9a-f]+: fc64 0000 lw v1,0\(a0\)
[ 0-9a-f]+: fc84 0004 lw a0,4\(a0\)
-[ 0-9a-f]+: fc64 7fff lw v1,32767\(a0\)
-[ 0-9a-f]+: fc84 8003 lw a0,-32765\(a0\)
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
+[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
[ 0-9a-f]+: fc64 8000 lw v1,-32768\(a0\)
[ 0-9a-f]+: fc84 8004 lw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
@@ -4891,26 +4786,20 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: fc61 8000 lw v1,-32768\(at\)
-[ 0-9a-f]+: fc81 8004 lw a0,-32764\(at\)
+[ 0-9a-f]+: fc64 8000 lw v1,-32768\(a0\)
+[ 0-9a-f]+: fc84 8004 lw a0,-32764\(a0\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 0001 lw v1,1\(at\)
[ 0-9a-f]+: fc81 0005 lw a0,5\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: fc61 8001 lw v1,-32767\(at\)
-[ 0-9a-f]+: fc81 8005 lw a0,-32763\(at\)
+[ 0-9a-f]+: fc64 8001 lw v1,-32767\(a0\)
+[ 0-9a-f]+: fc84 8005 lw a0,-32763\(a0\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 0000 lw v1,0\(at\)
[ 0-9a-f]+: fc81 0004 lw a0,4\(at\)
-[ 0-9a-f]+: 41a1 0000 lui at,0x0
-[ 0-9a-f]+: 0024 0950 addu at,a0,at
-[ 0-9a-f]+: fc61 ffff lw v1,-1\(at\)
-[ 0-9a-f]+: fc81 0003 lw a0,3\(at\)
+[ 0-9a-f]+: fc64 ffff lw v1,-1\(a0\)
+[ 0-9a-f]+: fc84 0003 lw a0,3\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 0024 0950 addu at,a0,at
[ 0-9a-f]+: fc61 5678 lw v1,22136\(at\)
@@ -4934,11 +4823,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 2004 ldc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 2000 ldc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 2000 ldc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 2fff ldc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -4946,15 +4833,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 2001 ldc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 2001 ldc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 2000 ldc2 \$3,0\(at\)
@@ -4969,11 +4854,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 0004 lwc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 0000 lwc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 0000 lwc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 0fff lwc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -4981,15 +4864,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 0001 lwc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 0001 lwc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 0000 lwc2 \$3,0\(at\)
@@ -5132,11 +5013,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 a004 sdc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 a000 sdc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 a000 sdc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 afff sdc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -5144,15 +5023,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 a001 sdc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 a001 sdc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 a000 sdc2 \$3,0\(at\)
@@ -5167,11 +5044,9 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2060 8004 swc2 \$3,4\(zero\)
[ 0-9a-f]+: 2064 8000 swc2 \$3,0\(a0\)
[ 0-9a-f]+: 2064 8000 swc2 \$3,0\(a0\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 8fff swc2 \$3,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 7fff addiu at,a0,32767
+[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -5179,15 +5054,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 8001 swc2 \$3,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 2061 8001 swc2 \$3,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 2061 8000 swc2 \$3,0\(at\)
@@ -5252,7 +5125,6 @@ Disassembly of section \.text:
[ 0-9a-f]+: 03ff 8b7c syscall 0x3ff
[ 0-9a-f]+: 03ff fffa cop2 0x7fffff
[ 0-9a-f]+: 0c00 nop
-[ 0-9a-f]+: 0000 0000 nop
[0-9a-f]+ <fp_test>:
[ 0-9a-f]+: 5400 01a0 prefx 0x0,zero\(zero\)
@@ -7314,8 +7186,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 4004 ldl v0,4\(v1\)
[ 0-9a-f]+: 6043 4e00 ldl v0,-512\(v1\)
[ 0-9a-f]+: 6043 41ff ldl v0,511\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 6041 4000 ldl v0,0\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
@@ -7329,8 +7200,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 5004 ldr v0,4\(v1\)
[ 0-9a-f]+: 6043 5e00 ldr v0,-512\(v1\)
[ 0-9a-f]+: 6043 51ff ldr v0,511\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 6041 5000 ldr v0,0\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
@@ -7344,8 +7214,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 7004 lld v0,4\(v1\)
[ 0-9a-f]+: 6043 7e00 lld v0,-512\(v1\)
[ 0-9a-f]+: 6043 71ff lld v0,511\(v1\)
-[ 0-9a-f]+: 3040 8000 li v0,-32768
-[ 0-9a-f]+: 0062 1150 addu v0,v0,v1
+[ 0-9a-f]+: 3043 8000 addiu v0,v1,-32768
[ 0-9a-f]+: 6042 7000 lld v0,0\(v0\)
[ 0-9a-f]+: 41a2 1234 lui v0,0x1234
[ 0-9a-f]+: 5042 5000 ori v0,v0,0x5000
@@ -7359,8 +7228,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 e004 lwu v0,4\(v1\)
[ 0-9a-f]+: 6043 ee00 lwu v0,-512\(v1\)
[ 0-9a-f]+: 6043 e1ff lwu v0,511\(v1\)
-[ 0-9a-f]+: 3040 8000 li v0,-32768
-[ 0-9a-f]+: 0062 1150 addu v0,v0,v1
+[ 0-9a-f]+: 3043 8000 addiu v0,v1,-32768
[ 0-9a-f]+: 6042 e000 lwu v0,0\(v0\)
[ 0-9a-f]+: 41a2 1234 lui v0,0x1234
[ 0-9a-f]+: 5042 5000 ori v0,v0,0x5000
@@ -7374,8 +7242,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6043 f004 scd v0,4\(v1\)
[ 0-9a-f]+: 6043 fe00 scd v0,-512\(v1\)
[ 0-9a-f]+: 6043 f1ff scd v0,511\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
[ 0-9a-f]+: 6041 f000 scd v0,0\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
@@ -7395,12 +7262,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6040 c000 sdl v0,0\(zero\)
[ 0-9a-f]+: 6040 c004 sdl v0,4\(zero\)
[ 0-9a-f]+: 6043 c004 sdl v0,4\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 6041 c000 sdl v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 6041 c000 sdl v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 6041 cfff sdl v0,-1\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
[ 0-9a-f]+: 0061 0950 addu at,at,v1
@@ -7411,12 +7276,10 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6040 d000 sdr v0,0\(zero\)
[ 0-9a-f]+: 6040 d004 sdr v0,4\(zero\)
[ 0-9a-f]+: 6043 d004 sdr v0,4\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 6041 d000 sdr v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 6041 d000 sdr v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 6041 dfff sdr v0,-1\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5000 ori at,at,0x5000
[ 0-9a-f]+: 0061 0950 addu at,at,v1
@@ -7445,17 +7308,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2325 7000 ldm s0-s7,s8,ra,0\(a1\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2021 7fff ldm s0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
[ 0-9a-f]+: 2020 7000 ldm s0,0\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2021 7fff ldm s0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 7000 ldm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 7fff ldm s0,-1\(at\)
[ 0-9a-f]+: 203d 7000 ldm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -7470,20 +7331,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 205d 4000 ldp v0,0\(sp\)
[ 0-9a-f]+: 2043 4800 ldp v0,-2048\(v1\)
[ 0-9a-f]+: 2043 47ff ldp v0,2047\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 2041 4000 ldp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 2041 4000 ldp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 4fff ldp v0,-1\(at\)
[ 0-9a-f]+: 2043 4000 ldp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 2041 4fff ldp v0,-1\(at\)
[ 0-9a-f]+: 3060 8000 li v1,-32768
[ 0-9a-f]+: 2043 4000 ldp v0,0\(v1\)
-[ 0-9a-f]+: 5060 8000 li v1,0x8000
-[ 0-9a-f]+: 2043 4fff ldp v0,-1\(v1\)
+[ 0-9a-f]+: 3060 7fff li v1,32767
+[ 0-9a-f]+: 2043 4000 ldp v0,0\(v1\)
[ 0-9a-f]+: 41a3 0001 lui v1,0x1
[ 0-9a-f]+: 2043 4fff ldp v0,-1\(v1\)
[ 0-9a-f]+: 41a3 1234 lui v1,0x1234
@@ -7513,17 +7372,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 2325 f000 sdm s0-s7,s8,ra,0\(a1\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2021 ffff sdm s0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
[ 0-9a-f]+: 2020 f000 sdm s0,0\(zero\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2021 ffff sdm s0,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
+[ 0-9a-f]+: 303d 8000 addiu at,sp,-32768
+[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
+[ 0-9a-f]+: 303d 7fff addiu at,sp,32767
[ 0-9a-f]+: 2021 f000 sdm s0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03a1 0950 addu at,at,sp
-[ 0-9a-f]+: 2021 ffff sdm s0,-1\(at\)
[ 0-9a-f]+: 203d f000 sdm s0,0\(sp\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 03a1 0950 addu at,at,sp
@@ -7538,20 +7395,18 @@ Disassembly of section \.text:
[ 0-9a-f]+: 205d c000 sdp v0,0\(sp\)
[ 0-9a-f]+: 2043 c800 sdp v0,-2048\(v1\)
[ 0-9a-f]+: 2043 c7ff sdp v0,2047\(v1\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
+[ 0-9a-f]+: 3023 8000 addiu at,v1,-32768
+[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
+[ 0-9a-f]+: 3023 7fff addiu at,v1,32767
[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 0061 0950 addu at,at,v1
-[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
[ 0-9a-f]+: 2043 c000 sdp v0,0\(v1\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0061 0950 addu at,at,v1
[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
[ 0-9a-f]+: 3020 8000 li at,-32768
[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
+[ 0-9a-f]+: 3020 7fff li at,32767
+[ 0-9a-f]+: 2041 c000 sdp v0,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 2041 cfff sdp v0,-1\(at\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
@@ -7601,9 +7456,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
-[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
+[ 0-9a-f]+: 6060 4fff ldl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 5006 ldr v1,6\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
@@ -7637,8 +7491,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -7646,18 +7499,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 4000 ldl v1,0\(at\)
-[ 0-9a-f]+: 6061 5007 ldr v1,7\(at\)
+[ 0-9a-f]+: 6064 4fff ldl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 5006 ldr v1,6\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -7707,9 +7557,8 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
-[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
+[ 0-9a-f]+: 6060 cfff sdl v1,-1\(zero\)
+[ 0-9a-f]+: 6060 d006 sdr v1,6\(zero\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
@@ -7743,8 +7592,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
@@ -7752,18 +7600,15 @@ Disassembly of section \.text:
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 8001 li at,-32767
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
-[ 0-9a-f]+: 3020 ffff li at,-1
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 6061 c000 sdl v1,0\(at\)
-[ 0-9a-f]+: 6061 d007 sdr v1,7\(at\)
+[ 0-9a-f]+: 6064 cfff sdl v1,-1\(a0\)
+[ 0-9a-f]+: 6064 d006 sdr v1,6\(a0\)
[ 0-9a-f]+: 41a1 1234 lui at,0x1234
[ 0-9a-f]+: 5021 5678 ori at,at,0x5678
[ 0-9a-f]+: 0081 0950 addu at,at,a0
diff --git a/gas/testsuite/gas/mips/micromips@cache.d b/gas/testsuite/gas/mips/micromips@cache.d
index eb3964a..226ac48 100644
--- a/gas/testsuite/gas/mips/micromips@cache.d
+++ b/gas/testsuite/gas/mips/micromips@cache.d
@@ -10,17 +10,13 @@
Disassembly of section \.text:
[0-9a-f]+ <[^>]*> 20a2 67ff cache 0x5,2047\(v0\)
[0-9a-f]+ <[^>]*> 20a3 6800 cache 0x5,-2048\(v1\)
-[0-9a-f]+ <[^>]*> 3020 1000 li at,4096
-[0-9a-f]+ <[^>]*> 0081 0950 addu at,at,a0
-[0-9a-f]+ <[^>]*> 20a1 6800 cache 0x5,-2048\(at\)
-[0-9a-f]+ <[^>]*> 3020 f000 li at,-4096
-[0-9a-f]+ <[^>]*> 00a1 0950 addu at,at,a1
-[0-9a-f]+ <[^>]*> 20a1 67ff cache 0x5,2047\(at\)
-[0-9a-f]+ <[^>]*> 5020 8000 li at,0x8000
-[0-9a-f]+ <[^>]*> 00c1 0950 addu at,at,a2
-[0-9a-f]+ <[^>]*> 20a1 6fff cache 0x5,-1\(at\)
-[0-9a-f]+ <[^>]*> 3020 8000 li at,-32768
-[0-9a-f]+ <[^>]*> 00e1 0950 addu at,at,a3
+[0-9a-f]+ <[^>]*> 3024 0800 addiu at,a0,2048
+[0-9a-f]+ <[^>]*> 20a1 6000 cache 0x5,0\(at\)
+[0-9a-f]+ <[^>]*> 3025 f7ff addiu at,a1,-2049
+[0-9a-f]+ <[^>]*> 20a1 6000 cache 0x5,0\(at\)
+[0-9a-f]+ <[^>]*> 3026 7fff addiu at,a2,32767
+[0-9a-f]+ <[^>]*> 20a1 6000 cache 0x5,0\(at\)
+[0-9a-f]+ <[^>]*> 3027 8000 addiu at,a3,-32768
[0-9a-f]+ <[^>]*> 20a1 6000 cache 0x5,0\(at\)
[0-9a-f]+ <[^>]*> 5020 8000 li at,0x8000
[0-9a-f]+ <[^>]*> 0101 0950 addu at,at,t0
diff --git a/gas/testsuite/gas/mips/micromips@eva.d b/gas/testsuite/gas/mips/micromips@eva.d
index fc3caa1..d528f09 100644
--- a/gas/testsuite/gas/mips/micromips@eva.d
+++ b/gas/testsuite/gas/mips/micromips@eva.d
@@ -13,65 +13,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6060 6100 lbue \$3,-256\(\$0\)
[ 0-9a-f]+: 6085 60ff lbue \$4,255\(\$5\)
[ 0-9a-f]+: 60c0 60ff lbue \$6,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0101 0950 addu \$1,\$1,\$8
-[ 0-9a-f]+: 60e1 60ff lbue \$7,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 6121 60ff lbue \$9,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0161 0950 addu \$1,\$1,\$11
-[ 0-9a-f]+: 6141 6100 lbue \$10,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6181 6100 lbue \$12,-256\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 01c1 0950 addu \$1,\$1,\$14
+[ 0-9a-f]+: 3028 feff addiu \$1,\$8,-257
+[ 0-9a-f]+: 60e1 6000 lbue \$7,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 6121 6000 lbue \$9,0\(\$1\)
+[ 0-9a-f]+: 302b 0100 addiu \$1,\$11,256
+[ 0-9a-f]+: 6141 6000 lbue \$10,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 6181 6000 lbue \$12,0\(\$1\)
+[ 0-9a-f]+: 302e fe00 addiu \$1,\$14,-512
[ 0-9a-f]+: 61a1 6000 lbue \$13,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 61e1 6000 lbue \$15,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0221 0950 addu \$1,\$1,\$17
-[ 0-9a-f]+: 6201 61ff lbue \$16,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6241 61ff lbue \$18,-1\(\$1\)
-[ 0-9a-f]+: 3020 fc00 li \$1,-1024
-[ 0-9a-f]+: 0281 0950 addu \$1,\$1,\$20
+[ 0-9a-f]+: 3031 01ff addiu \$1,\$17,511
+[ 0-9a-f]+: 6201 6000 lbue \$16,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 6241 6000 lbue \$18,0\(\$1\)
+[ 0-9a-f]+: 3034 fc00 addiu \$1,\$20,-1024
[ 0-9a-f]+: 6261 6000 lbue \$19,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 62a1 6000 lbue \$21,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 02e1 0950 addu \$1,\$1,\$23
-[ 0-9a-f]+: 62c1 61ff lbue \$22,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 6301 61ff lbue \$24,-1\(\$1\)
-[ 0-9a-f]+: 3020 f800 li \$1,-2048
-[ 0-9a-f]+: 0341 0950 addu \$1,\$1,\$26
+[ 0-9a-f]+: 3037 03ff addiu \$1,\$23,1023
+[ 0-9a-f]+: 62c1 6000 lbue \$22,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 6301 6000 lbue \$24,0\(\$1\)
+[ 0-9a-f]+: 303a f800 addiu \$1,\$26,-2048
[ 0-9a-f]+: 6321 6000 lbue \$25,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 6361 6000 lbue \$27,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 03a1 0950 addu \$1,\$1,\$29
-[ 0-9a-f]+: 6381 61ff lbue \$28,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 63c1 61ff lbue \$30,-1\(\$1\)
+[ 0-9a-f]+: 303d 07ff addiu \$1,\$29,2047
+[ 0-9a-f]+: 6381 6000 lbue \$28,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 63c1 6000 lbue \$30,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 63e1 6000 lbue \$31,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 6041 6000 lbue \$2,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 0081 0950 addu \$1,\$1,\$4
-[ 0-9a-f]+: 6061 61ff lbue \$3,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 60a1 61ff lbue \$5,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 00e1 0950 addu \$1,\$1,\$7
+[ 0-9a-f]+: 3024 0fff addiu \$1,\$4,4095
+[ 0-9a-f]+: 6061 6000 lbue \$3,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 60a1 6000 lbue \$5,0\(\$1\)
+[ 0-9a-f]+: 3027 8000 addiu \$1,\$7,-32768
[ 0-9a-f]+: 60c1 6000 lbue \$6,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 6101 6000 lbue \$8,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 0141 0950 addu \$1,\$1,\$10
-[ 0-9a-f]+: 6121 61ff lbue \$9,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 6161 61ff lbue \$11,-1\(\$1\)
+[ 0-9a-f]+: 302a 7fff addiu \$1,\$10,32767
+[ 0-9a-f]+: 6121 6000 lbue \$9,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 6161 6000 lbue \$11,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 01a1 0950 addu \$1,\$1,\$13
[ 0-9a-f]+: 6181 61ff lbue \$12,-1\(\$1\)
@@ -102,66 +91,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 63a0 6300 lhue \$29,-256\(\$0\)
[ 0-9a-f]+: 63df 62ff lhue \$30,255\(\$31\)
[ 0-9a-f]+: 6000 62ff lhue \$0,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0061 0950 addu \$1,\$1,\$3
-[ 0-9a-f]+: 6041 62ff lhue \$2,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 6081 62ff lhue \$4,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 00c1 0950 addu \$1,\$1,\$6
-[ 0-9a-f]+: 60a1 6300 lhue \$5,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 60e1 6300 lhue \$7,-256\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0121 0950 addu \$1,\$1,\$9
+[ 0-9a-f]+: 3023 feff addiu \$1,\$3,-257
+[ 0-9a-f]+: 6041 6200 lhue \$2,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 6081 6200 lhue \$4,0\(\$1\)
+[ 0-9a-f]+: 3026 0100 addiu \$1,\$6,256
+[ 0-9a-f]+: 60a1 6200 lhue \$5,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 60e1 6200 lhue \$7,0\(\$1\)
+[ 0-9a-f]+: 3029 fe00 addiu \$1,\$9,-512
[ 0-9a-f]+: 6101 6200 lhue \$8,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 6141 6200 lhue \$10,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0181 0950 addu \$1,\$1,\$12
-[ 0-9a-f]+: 6161 63ff lhue \$11,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 61a1 63ff lhue \$13,-1\(\$1\)
-[ 0-9a-f]+: 3020 fc00 li \$1,-1024
-[ 0-9a-f]+: 01e1 0950 addu \$1,\$1,\$15
+[ 0-9a-f]+: 302c 01ff addiu \$1,\$12,511
+[ 0-9a-f]+: 6161 6200 lhue \$11,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 61a1 6200 lhue \$13,0\(\$1\)
+[ 0-9a-f]+: 302f fc00 addiu \$1,\$15,-1024
[ 0-9a-f]+: 61c1 6200 lhue \$14,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 6201 6200 lhue \$16,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 0241 0950 addu \$1,\$1,\$18
-[ 0-9a-f]+: 6221 63ff lhue \$17,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 6261 63ff lhue \$19,-1\(\$1\)
-[ 0-9a-f]+: 3020 f800 li \$1,-2048
-[ 0-9a-f]+: 02a1 0950 addu \$1,\$1,\$21
+[ 0-9a-f]+: 3032 03ff addiu \$1,\$18,1023
+[ 0-9a-f]+: 6221 6200 lhue \$17,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 6261 6200 lhue \$19,0\(\$1\)
+[ 0-9a-f]+: 3035 f800 addiu \$1,\$21,-2048
[ 0-9a-f]+: 6281 6200 lhue \$20,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 62c1 6200 lhue \$22,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 0301 0950 addu \$1,\$1,\$24
-[ 0-9a-f]+: 62e1 63ff lhue \$23,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 6321 63ff lhue \$25,-1\(\$1\)
-[ 0-9a-f]+: 3020 f000 li \$1,-4096
-[ 0-9a-f]+: 0361 0950 addu \$1,\$1,\$27
+[ 0-9a-f]+: 3038 07ff addiu \$1,\$24,2047
+[ 0-9a-f]+: 62e1 6200 lhue \$23,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 6321 6200 lhue \$25,0\(\$1\)
+[ 0-9a-f]+: 303b f000 addiu \$1,\$27,-4096
[ 0-9a-f]+: 6341 6200 lhue \$26,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 6381 6200 lhue \$28,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 03c1 0950 addu \$1,\$1,\$30
-[ 0-9a-f]+: 63a1 63ff lhue \$29,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 63e1 63ff lhue \$31,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 0041 0950 addu \$1,\$1,\$2
+[ 0-9a-f]+: 303e 0fff addiu \$1,\$30,4095
+[ 0-9a-f]+: 63a1 6200 lhue \$29,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 63e1 6200 lhue \$31,0\(\$1\)
+[ 0-9a-f]+: 3022 8000 addiu \$1,\$2,-32768
[ 0-9a-f]+: 6001 6200 lhue \$0,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 6061 6200 lhue \$3,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 00a1 0950 addu \$1,\$1,\$5
-[ 0-9a-f]+: 6081 63ff lhue \$4,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 60c1 63ff lhue \$6,-1\(\$1\)
+[ 0-9a-f]+: 3025 7fff addiu \$1,\$5,32767
+[ 0-9a-f]+: 6081 6200 lhue \$4,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 60c1 6200 lhue \$6,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 0101 0950 addu \$1,\$1,\$8
[ 0-9a-f]+: 60e1 63ff lhue \$7,-1\(\$1\)
@@ -192,65 +169,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6300 6900 lbe \$24,-256\(\$0\)
[ 0-9a-f]+: 633a 68ff lbe \$25,255\(\$26\)
[ 0-9a-f]+: 6360 68ff lbe \$27,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 03a1 0950 addu \$1,\$1,\$29
-[ 0-9a-f]+: 6381 68ff lbe \$28,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 63c1 68ff lbe \$30,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 63e1 6900 lbe \$31,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6041 6900 lbe \$2,-256\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0081 0950 addu \$1,\$1,\$4
+[ 0-9a-f]+: 303d feff addiu \$1,\$29,-257
+[ 0-9a-f]+: 6381 6800 lbe \$28,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 63c1 6800 lbe \$30,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 63e1 6800 lbe \$31,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 6041 6800 lbe \$2,0\(\$1\)
+[ 0-9a-f]+: 3024 fe00 addiu \$1,\$4,-512
[ 0-9a-f]+: 6061 6800 lbe \$3,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 60a1 6800 lbe \$5,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 00e1 0950 addu \$1,\$1,\$7
-[ 0-9a-f]+: 60c1 69ff lbe \$6,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6101 69ff lbe \$8,-1\(\$1\)
-[ 0-9a-f]+: 3020 fc00 li \$1,-1024
-[ 0-9a-f]+: 0141 0950 addu \$1,\$1,\$10
+[ 0-9a-f]+: 3027 01ff addiu \$1,\$7,511
+[ 0-9a-f]+: 60c1 6800 lbe \$6,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 6101 6800 lbe \$8,0\(\$1\)
+[ 0-9a-f]+: 302a fc00 addiu \$1,\$10,-1024
[ 0-9a-f]+: 6121 6800 lbe \$9,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 6161 6800 lbe \$11,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 01a1 0950 addu \$1,\$1,\$13
-[ 0-9a-f]+: 6181 69ff lbe \$12,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 61c1 69ff lbe \$14,-1\(\$1\)
-[ 0-9a-f]+: 3020 f800 li \$1,-2048
-[ 0-9a-f]+: 0201 0950 addu \$1,\$1,\$16
+[ 0-9a-f]+: 302d 03ff addiu \$1,\$13,1023
+[ 0-9a-f]+: 6181 6800 lbe \$12,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 61c1 6800 lbe \$14,0\(\$1\)
+[ 0-9a-f]+: 3030 f800 addiu \$1,\$16,-2048
[ 0-9a-f]+: 61e1 6800 lbe \$15,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 6221 6800 lbe \$17,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 0261 0950 addu \$1,\$1,\$19
-[ 0-9a-f]+: 6241 69ff lbe \$18,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 6281 69ff lbe \$20,-1\(\$1\)
-[ 0-9a-f]+: 3020 f000 li \$1,-4096
-[ 0-9a-f]+: 02c1 0950 addu \$1,\$1,\$22
+[ 0-9a-f]+: 3033 07ff addiu \$1,\$19,2047
+[ 0-9a-f]+: 6241 6800 lbe \$18,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 6281 6800 lbe \$20,0\(\$1\)
+[ 0-9a-f]+: 3036 f000 addiu \$1,\$22,-4096
[ 0-9a-f]+: 62a1 6800 lbe \$21,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 62e1 6800 lbe \$23,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 0321 0950 addu \$1,\$1,\$25
-[ 0-9a-f]+: 6301 69ff lbe \$24,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 6341 69ff lbe \$26,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 0381 0950 addu \$1,\$1,\$28
+[ 0-9a-f]+: 3039 0fff addiu \$1,\$25,4095
+[ 0-9a-f]+: 6301 6800 lbe \$24,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 6341 6800 lbe \$26,0\(\$1\)
+[ 0-9a-f]+: 303c 8000 addiu \$1,\$28,-32768
[ 0-9a-f]+: 6361 6800 lbe \$27,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 63a1 6800 lbe \$29,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 03e1 0950 addu \$1,\$1,\$31
-[ 0-9a-f]+: 63c1 69ff lbe \$30,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 6001 69ff lbe \$0,-1\(\$1\)
+[ 0-9a-f]+: 303f 7fff addiu \$1,\$31,32767
+[ 0-9a-f]+: 63c1 6800 lbe \$30,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 6001 6800 lbe \$0,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 0061 0950 addu \$1,\$1,\$3
[ 0-9a-f]+: 6041 69ff lbe \$2,-1\(\$1\)
@@ -281,66 +247,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6260 6b00 lhe \$19,-256\(\$0\)
[ 0-9a-f]+: 6295 6aff lhe \$20,255\(\$21\)
[ 0-9a-f]+: 62c0 6aff lhe \$22,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0301 0950 addu \$1,\$1,\$24
-[ 0-9a-f]+: 62e1 6aff lhe \$23,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 6321 6aff lhe \$25,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0361 0950 addu \$1,\$1,\$27
-[ 0-9a-f]+: 6341 6b00 lhe \$26,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6381 6b00 lhe \$28,-256\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 03c1 0950 addu \$1,\$1,\$30
+[ 0-9a-f]+: 3038 feff addiu \$1,\$24,-257
+[ 0-9a-f]+: 62e1 6a00 lhe \$23,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 6321 6a00 lhe \$25,0\(\$1\)
+[ 0-9a-f]+: 303b 0100 addiu \$1,\$27,256
+[ 0-9a-f]+: 6341 6a00 lhe \$26,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 6381 6a00 lhe \$28,0\(\$1\)
+[ 0-9a-f]+: 303e fe00 addiu \$1,\$30,-512
[ 0-9a-f]+: 63a1 6a00 lhe \$29,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 63e1 6a00 lhe \$31,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0041 0950 addu \$1,\$1,\$2
-[ 0-9a-f]+: 6001 6bff lhe \$0,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6061 6bff lhe \$3,-1\(\$1\)
-[ 0-9a-f]+: 3020 fc00 li \$1,-1024
-[ 0-9a-f]+: 00a1 0950 addu \$1,\$1,\$5
+[ 0-9a-f]+: 3022 01ff addiu \$1,\$2,511
+[ 0-9a-f]+: 6001 6a00 lhe \$0,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 6061 6a00 lhe \$3,0\(\$1\)
+[ 0-9a-f]+: 3025 fc00 addiu \$1,\$5,-1024
[ 0-9a-f]+: 6081 6a00 lhe \$4,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 60c1 6a00 lhe \$6,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 0101 0950 addu \$1,\$1,\$8
-[ 0-9a-f]+: 60e1 6bff lhe \$7,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 6121 6bff lhe \$9,-1\(\$1\)
-[ 0-9a-f]+: 3020 f800 li \$1,-2048
-[ 0-9a-f]+: 0161 0950 addu \$1,\$1,\$11
+[ 0-9a-f]+: 3028 03ff addiu \$1,\$8,1023
+[ 0-9a-f]+: 60e1 6a00 lhe \$7,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 6121 6a00 lhe \$9,0\(\$1\)
+[ 0-9a-f]+: 302b f800 addiu \$1,\$11,-2048
[ 0-9a-f]+: 6141 6a00 lhe \$10,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 6181 6a00 lhe \$12,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 01c1 0950 addu \$1,\$1,\$14
-[ 0-9a-f]+: 61a1 6bff lhe \$13,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 61e1 6bff lhe \$15,-1\(\$1\)
-[ 0-9a-f]+: 3020 f000 li \$1,-4096
-[ 0-9a-f]+: 0221 0950 addu \$1,\$1,\$17
+[ 0-9a-f]+: 302e 07ff addiu \$1,\$14,2047
+[ 0-9a-f]+: 61a1 6a00 lhe \$13,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 61e1 6a00 lhe \$15,0\(\$1\)
+[ 0-9a-f]+: 3031 f000 addiu \$1,\$17,-4096
[ 0-9a-f]+: 6201 6a00 lhe \$16,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 6241 6a00 lhe \$18,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 0281 0950 addu \$1,\$1,\$20
-[ 0-9a-f]+: 6261 6bff lhe \$19,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 62a1 6bff lhe \$21,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 02e1 0950 addu \$1,\$1,\$23
+[ 0-9a-f]+: 3034 0fff addiu \$1,\$20,4095
+[ 0-9a-f]+: 6261 6a00 lhe \$19,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 62a1 6a00 lhe \$21,0\(\$1\)
+[ 0-9a-f]+: 3037 8000 addiu \$1,\$23,-32768
[ 0-9a-f]+: 62c1 6a00 lhe \$22,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 6301 6a00 lhe \$24,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 0341 0950 addu \$1,\$1,\$26
-[ 0-9a-f]+: 6321 6bff lhe \$25,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 6361 6bff lhe \$27,-1\(\$1\)
+[ 0-9a-f]+: 303a 7fff addiu \$1,\$26,32767
+[ 0-9a-f]+: 6321 6a00 lhe \$25,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 6361 6a00 lhe \$27,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 03a1 0950 addu \$1,\$1,\$29
[ 0-9a-f]+: 6381 6bff lhe \$28,-1\(\$1\)
@@ -370,66 +324,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 61c0 6d00 lle \$14,-256\(\$0\)
[ 0-9a-f]+: 61f0 6cff lle \$15,255\(\$16\)
[ 0-9a-f]+: 6220 6cff lle \$17,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0261 0950 addu \$1,\$1,\$19
-[ 0-9a-f]+: 6241 6cff lle \$18,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 6281 6cff lle \$20,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 02c1 0950 addu \$1,\$1,\$22
-[ 0-9a-f]+: 62a1 6d00 lle \$21,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 62e1 6d00 lle \$23,-256\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0321 0950 addu \$1,\$1,\$25
+[ 0-9a-f]+: 3033 feff addiu \$1,\$19,-257
+[ 0-9a-f]+: 6241 6c00 lle \$18,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 6281 6c00 lle \$20,0\(\$1\)
+[ 0-9a-f]+: 3036 0100 addiu \$1,\$22,256
+[ 0-9a-f]+: 62a1 6c00 lle \$21,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 62e1 6c00 lle \$23,0\(\$1\)
+[ 0-9a-f]+: 3039 fe00 addiu \$1,\$25,-512
[ 0-9a-f]+: 6301 6c00 lle \$24,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 6341 6c00 lle \$26,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0381 0950 addu \$1,\$1,\$28
-[ 0-9a-f]+: 6361 6dff lle \$27,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 63a1 6dff lle \$29,-1\(\$1\)
-[ 0-9a-f]+: 3020 fc00 li \$1,-1024
-[ 0-9a-f]+: 03e1 0950 addu \$1,\$1,\$31
+[ 0-9a-f]+: 303c 01ff addiu \$1,\$28,511
+[ 0-9a-f]+: 6361 6c00 lle \$27,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 63a1 6c00 lle \$29,0\(\$1\)
+[ 0-9a-f]+: 303f fc00 addiu \$1,\$31,-1024
[ 0-9a-f]+: 63c1 6c00 lle \$30,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 6001 6c00 lle \$0,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 0061 0950 addu \$1,\$1,\$3
-[ 0-9a-f]+: 6041 6dff lle \$2,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 6081 6dff lle \$4,-1\(\$1\)
-[ 0-9a-f]+: 3020 f800 li \$1,-2048
-[ 0-9a-f]+: 00c1 0950 addu \$1,\$1,\$6
+[ 0-9a-f]+: 3023 03ff addiu \$1,\$3,1023
+[ 0-9a-f]+: 6041 6c00 lle \$2,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 6081 6c00 lle \$4,0\(\$1\)
+[ 0-9a-f]+: 3026 f800 addiu \$1,\$6,-2048
[ 0-9a-f]+: 60a1 6c00 lle \$5,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 60e1 6c00 lle \$7,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 0121 0950 addu \$1,\$1,\$9
-[ 0-9a-f]+: 6101 6dff lle \$8,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 6141 6dff lle \$10,-1\(\$1\)
-[ 0-9a-f]+: 3020 f000 li \$1,-4096
-[ 0-9a-f]+: 0181 0950 addu \$1,\$1,\$12
+[ 0-9a-f]+: 3029 07ff addiu \$1,\$9,2047
+[ 0-9a-f]+: 6101 6c00 lle \$8,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 6141 6c00 lle \$10,0\(\$1\)
+[ 0-9a-f]+: 302c f000 addiu \$1,\$12,-4096
[ 0-9a-f]+: 6161 6c00 lle \$11,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 61a1 6c00 lle \$13,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 01e1 0950 addu \$1,\$1,\$15
-[ 0-9a-f]+: 61c1 6dff lle \$14,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 6201 6dff lle \$16,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 0241 0950 addu \$1,\$1,\$18
+[ 0-9a-f]+: 302f 0fff addiu \$1,\$15,4095
+[ 0-9a-f]+: 61c1 6c00 lle \$14,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 6201 6c00 lle \$16,0\(\$1\)
+[ 0-9a-f]+: 3032 8000 addiu \$1,\$18,-32768
[ 0-9a-f]+: 6221 6c00 lle \$17,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 6261 6c00 lle \$19,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 02a1 0950 addu \$1,\$1,\$21
-[ 0-9a-f]+: 6281 6dff lle \$20,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 62c1 6dff lle \$22,-1\(\$1\)
+[ 0-9a-f]+: 3035 7fff addiu \$1,\$21,32767
+[ 0-9a-f]+: 6281 6c00 lle \$20,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 62c1 6c00 lle \$22,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 0301 0950 addu \$1,\$1,\$24
[ 0-9a-f]+: 62e1 6dff lle \$23,-1\(\$1\)
@@ -460,65 +402,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6120 6f00 lwe \$9,-256\(\$0\)
[ 0-9a-f]+: 614b 6eff lwe \$10,255\(\$11\)
[ 0-9a-f]+: 6180 6eff lwe \$12,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 01c1 0950 addu \$1,\$1,\$14
-[ 0-9a-f]+: 61a1 6eff lwe \$13,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 61e1 6eff lwe \$15,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0221 0950 addu \$1,\$1,\$17
-[ 0-9a-f]+: 6201 6f00 lwe \$16,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6241 6f00 lwe \$18,-256\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0281 0950 addu \$1,\$1,\$20
+[ 0-9a-f]+: 302e feff addiu \$1,\$14,-257
+[ 0-9a-f]+: 61a1 6e00 lwe \$13,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 61e1 6e00 lwe \$15,0\(\$1\)
+[ 0-9a-f]+: 3031 0100 addiu \$1,\$17,256
+[ 0-9a-f]+: 6201 6e00 lwe \$16,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 6241 6e00 lwe \$18,0\(\$1\)
+[ 0-9a-f]+: 3034 fe00 addiu \$1,\$20,-512
[ 0-9a-f]+: 6261 6e00 lwe \$19,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 62a1 6e00 lwe \$21,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 02e1 0950 addu \$1,\$1,\$23
-[ 0-9a-f]+: 62c1 6fff lwe \$22,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6301 6fff lwe \$24,-1\(\$1\)
-[ 0-9a-f]+: 3020 fc00 li \$1,-1024
-[ 0-9a-f]+: 0341 0950 addu \$1,\$1,\$26
+[ 0-9a-f]+: 3037 01ff addiu \$1,\$23,511
+[ 0-9a-f]+: 62c1 6e00 lwe \$22,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 6301 6e00 lwe \$24,0\(\$1\)
+[ 0-9a-f]+: 303a fc00 addiu \$1,\$26,-1024
[ 0-9a-f]+: 6321 6e00 lwe \$25,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 6361 6e00 lwe \$27,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 03a1 0950 addu \$1,\$1,\$29
-[ 0-9a-f]+: 6381 6fff lwe \$28,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 63c1 6fff lwe \$30,-1\(\$1\)
+[ 0-9a-f]+: 303d 03ff addiu \$1,\$29,1023
+[ 0-9a-f]+: 6381 6e00 lwe \$28,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 63c1 6e00 lwe \$30,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 63e1 6e00 lwe \$31,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 6041 6e00 lwe \$2,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 0081 0950 addu \$1,\$1,\$4
-[ 0-9a-f]+: 6061 6fff lwe \$3,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 60a1 6fff lwe \$5,-1\(\$1\)
-[ 0-9a-f]+: 3020 f000 li \$1,-4096
-[ 0-9a-f]+: 00e1 0950 addu \$1,\$1,\$7
+[ 0-9a-f]+: 3024 07ff addiu \$1,\$4,2047
+[ 0-9a-f]+: 6061 6e00 lwe \$3,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 60a1 6e00 lwe \$5,0\(\$1\)
+[ 0-9a-f]+: 3027 f000 addiu \$1,\$7,-4096
[ 0-9a-f]+: 60c1 6e00 lwe \$6,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 6101 6e00 lwe \$8,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 0141 0950 addu \$1,\$1,\$10
-[ 0-9a-f]+: 6121 6fff lwe \$9,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 6161 6fff lwe \$11,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 01a1 0950 addu \$1,\$1,\$13
+[ 0-9a-f]+: 302a 0fff addiu \$1,\$10,4095
+[ 0-9a-f]+: 6121 6e00 lwe \$9,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 6161 6e00 lwe \$11,0\(\$1\)
+[ 0-9a-f]+: 302d 8000 addiu \$1,\$13,-32768
[ 0-9a-f]+: 6181 6e00 lwe \$12,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 61c1 6e00 lwe \$14,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 0201 0950 addu \$1,\$1,\$16
-[ 0-9a-f]+: 61e1 6fff lwe \$15,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 6221 6fff lwe \$17,-1\(\$1\)
+[ 0-9a-f]+: 3030 7fff addiu \$1,\$16,32767
+[ 0-9a-f]+: 61e1 6e00 lwe \$15,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 6221 6e00 lwe \$17,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 0261 0950 addu \$1,\$1,\$19
[ 0-9a-f]+: 6241 6fff lwe \$18,-1\(\$1\)
@@ -549,66 +480,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6080 6500 lwle \$4,-256\(\$0\)
[ 0-9a-f]+: 60a6 64ff lwle \$5,255\(\$6\)
[ 0-9a-f]+: 60e0 64ff lwle \$7,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0121 0950 addu \$1,\$1,\$9
-[ 0-9a-f]+: 6101 64ff lwle \$8,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 6141 64ff lwle \$10,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0181 0950 addu \$1,\$1,\$12
-[ 0-9a-f]+: 6161 6500 lwle \$11,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 61a1 6500 lwle \$13,-256\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 01e1 0950 addu \$1,\$1,\$15
+[ 0-9a-f]+: 3029 feff addiu \$1,\$9,-257
+[ 0-9a-f]+: 6101 6400 lwle \$8,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 6141 6400 lwle \$10,0\(\$1\)
+[ 0-9a-f]+: 302c 0100 addiu \$1,\$12,256
+[ 0-9a-f]+: 6161 6400 lwle \$11,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 61a1 6400 lwle \$13,0\(\$1\)
+[ 0-9a-f]+: 302f fe00 addiu \$1,\$15,-512
[ 0-9a-f]+: 61c1 6400 lwle \$14,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 6201 6400 lwle \$16,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0241 0950 addu \$1,\$1,\$18
-[ 0-9a-f]+: 6221 65ff lwle \$17,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6261 65ff lwle \$19,-1\(\$1\)
-[ 0-9a-f]+: 3020 fc00 li \$1,-1024
-[ 0-9a-f]+: 02a1 0950 addu \$1,\$1,\$21
+[ 0-9a-f]+: 3032 01ff addiu \$1,\$18,511
+[ 0-9a-f]+: 6221 6400 lwle \$17,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 6261 6400 lwle \$19,0\(\$1\)
+[ 0-9a-f]+: 3035 fc00 addiu \$1,\$21,-1024
[ 0-9a-f]+: 6281 6400 lwle \$20,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 62c1 6400 lwle \$22,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 0301 0950 addu \$1,\$1,\$24
-[ 0-9a-f]+: 62e1 65ff lwle \$23,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 6321 65ff lwle \$25,-1\(\$1\)
-[ 0-9a-f]+: 3020 f800 li \$1,-2048
-[ 0-9a-f]+: 0361 0950 addu \$1,\$1,\$27
+[ 0-9a-f]+: 3038 03ff addiu \$1,\$24,1023
+[ 0-9a-f]+: 62e1 6400 lwle \$23,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 6321 6400 lwle \$25,0\(\$1\)
+[ 0-9a-f]+: 303b f800 addiu \$1,\$27,-2048
[ 0-9a-f]+: 6341 6400 lwle \$26,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 6381 6400 lwle \$28,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 03c1 0950 addu \$1,\$1,\$30
-[ 0-9a-f]+: 63a1 65ff lwle \$29,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 63e1 65ff lwle \$31,-1\(\$1\)
-[ 0-9a-f]+: 3020 f000 li \$1,-4096
-[ 0-9a-f]+: 0041 0950 addu \$1,\$1,\$2
+[ 0-9a-f]+: 303e 07ff addiu \$1,\$30,2047
+[ 0-9a-f]+: 63a1 6400 lwle \$29,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 63e1 6400 lwle \$31,0\(\$1\)
+[ 0-9a-f]+: 3022 f000 addiu \$1,\$2,-4096
[ 0-9a-f]+: 6001 6400 lwle \$0,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 6061 6400 lwle \$3,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 00a1 0950 addu \$1,\$1,\$5
-[ 0-9a-f]+: 6081 65ff lwle \$4,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 60c1 65ff lwle \$6,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 0101 0950 addu \$1,\$1,\$8
+[ 0-9a-f]+: 3025 0fff addiu \$1,\$5,4095
+[ 0-9a-f]+: 6081 6400 lwle \$4,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 60c1 6400 lwle \$6,0\(\$1\)
+[ 0-9a-f]+: 3028 8000 addiu \$1,\$8,-32768
[ 0-9a-f]+: 60e1 6400 lwle \$7,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 6121 6400 lwle \$9,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 0161 0950 addu \$1,\$1,\$11
-[ 0-9a-f]+: 6141 65ff lwle \$10,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 6181 65ff lwle \$12,-1\(\$1\)
+[ 0-9a-f]+: 302b 7fff addiu \$1,\$11,32767
+[ 0-9a-f]+: 6141 6400 lwle \$10,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 6181 6400 lwle \$12,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 01c1 0950 addu \$1,\$1,\$14
[ 0-9a-f]+: 61a1 65ff lwle \$13,-1\(\$1\)
@@ -639,66 +558,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 63c0 6700 lwre \$30,-256\(\$0\)
[ 0-9a-f]+: 63e0 66ff lwre \$31,255\(\$0\)
[ 0-9a-f]+: 6040 66ff lwre \$2,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0081 0950 addu \$1,\$1,\$4
-[ 0-9a-f]+: 6061 66ff lwre \$3,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 60a1 66ff lwre \$5,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 00e1 0950 addu \$1,\$1,\$7
-[ 0-9a-f]+: 60c1 6700 lwre \$6,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6101 6700 lwre \$8,-256\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0141 0950 addu \$1,\$1,\$10
+[ 0-9a-f]+: 3024 feff addiu \$1,\$4,-257
+[ 0-9a-f]+: 6061 6600 lwre \$3,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 60a1 6600 lwre \$5,0\(\$1\)
+[ 0-9a-f]+: 3027 0100 addiu \$1,\$7,256
+[ 0-9a-f]+: 60c1 6600 lwre \$6,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 6101 6600 lwre \$8,0\(\$1\)
+[ 0-9a-f]+: 302a fe00 addiu \$1,\$10,-512
[ 0-9a-f]+: 6121 6600 lwre \$9,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 6161 6600 lwre \$11,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 01a1 0950 addu \$1,\$1,\$13
-[ 0-9a-f]+: 6181 67ff lwre \$12,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 61c1 67ff lwre \$14,-1\(\$1\)
-[ 0-9a-f]+: 3020 fc00 li \$1,-1024
-[ 0-9a-f]+: 0201 0950 addu \$1,\$1,\$16
+[ 0-9a-f]+: 302d 01ff addiu \$1,\$13,511
+[ 0-9a-f]+: 6181 6600 lwre \$12,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 61c1 6600 lwre \$14,0\(\$1\)
+[ 0-9a-f]+: 3030 fc00 addiu \$1,\$16,-1024
[ 0-9a-f]+: 61e1 6600 lwre \$15,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 6221 6600 lwre \$17,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 0261 0950 addu \$1,\$1,\$19
-[ 0-9a-f]+: 6241 67ff lwre \$18,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 6281 67ff lwre \$20,-1\(\$1\)
-[ 0-9a-f]+: 3020 f800 li \$1,-2048
-[ 0-9a-f]+: 02c1 0950 addu \$1,\$1,\$22
+[ 0-9a-f]+: 3033 03ff addiu \$1,\$19,1023
+[ 0-9a-f]+: 6241 6600 lwre \$18,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 6281 6600 lwre \$20,0\(\$1\)
+[ 0-9a-f]+: 3036 f800 addiu \$1,\$22,-2048
[ 0-9a-f]+: 62a1 6600 lwre \$21,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 62e1 6600 lwre \$23,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 0321 0950 addu \$1,\$1,\$25
-[ 0-9a-f]+: 6301 67ff lwre \$24,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 6341 67ff lwre \$26,-1\(\$1\)
-[ 0-9a-f]+: 3020 f000 li \$1,-4096
-[ 0-9a-f]+: 0381 0950 addu \$1,\$1,\$28
+[ 0-9a-f]+: 3039 07ff addiu \$1,\$25,2047
+[ 0-9a-f]+: 6301 6600 lwre \$24,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 6341 6600 lwre \$26,0\(\$1\)
+[ 0-9a-f]+: 303c f000 addiu \$1,\$28,-4096
[ 0-9a-f]+: 6361 6600 lwre \$27,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 63a1 6600 lwre \$29,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 03e1 0950 addu \$1,\$1,\$31
-[ 0-9a-f]+: 63c1 67ff lwre \$30,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 6001 67ff lwre \$0,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 0061 0950 addu \$1,\$1,\$3
+[ 0-9a-f]+: 303f 0fff addiu \$1,\$31,4095
+[ 0-9a-f]+: 63c1 6600 lwre \$30,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 6001 6600 lwre \$0,0\(\$1\)
+[ 0-9a-f]+: 3023 8000 addiu \$1,\$3,-32768
[ 0-9a-f]+: 6041 6600 lwre \$2,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 6081 6600 lwre \$4,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 00c1 0950 addu \$1,\$1,\$6
-[ 0-9a-f]+: 60a1 67ff lwre \$5,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 60e1 67ff lwre \$7,-1\(\$1\)
+[ 0-9a-f]+: 3026 7fff addiu \$1,\$6,32767
+[ 0-9a-f]+: 60a1 6600 lwre \$5,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 60e1 6600 lwre \$7,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 0121 0950 addu \$1,\$1,\$9
[ 0-9a-f]+: 6101 67ff lwre \$8,-1\(\$1\)
@@ -729,65 +636,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6320 a900 sbe \$25,-256\(\$0\)
[ 0-9a-f]+: 635b a8ff sbe \$26,255\(\$27\)
[ 0-9a-f]+: 6380 a8ff sbe \$28,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 03c1 0950 addu \$1,\$1,\$30
-[ 0-9a-f]+: 63a1 a8ff sbe \$29,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 63e1 a8ff sbe \$31,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0041 0950 addu \$1,\$1,\$2
-[ 0-9a-f]+: 6001 a900 sbe \$0,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6061 a900 sbe \$3,-256\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 00a1 0950 addu \$1,\$1,\$5
+[ 0-9a-f]+: 303e feff addiu \$1,\$30,-257
+[ 0-9a-f]+: 63a1 a800 sbe \$29,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 63e1 a800 sbe \$31,0\(\$1\)
+[ 0-9a-f]+: 3022 0100 addiu \$1,\$2,256
+[ 0-9a-f]+: 6001 a800 sbe \$0,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 6061 a800 sbe \$3,0\(\$1\)
+[ 0-9a-f]+: 3025 fe00 addiu \$1,\$5,-512
[ 0-9a-f]+: 6081 a800 sbe \$4,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 60c1 a800 sbe \$6,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0101 0950 addu \$1,\$1,\$8
-[ 0-9a-f]+: 60e1 a9ff sbe \$7,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6121 a9ff sbe \$9,-1\(\$1\)
-[ 0-9a-f]+: 3020 fc00 li \$1,-1024
-[ 0-9a-f]+: 0161 0950 addu \$1,\$1,\$11
+[ 0-9a-f]+: 3028 01ff addiu \$1,\$8,511
+[ 0-9a-f]+: 60e1 a800 sbe \$7,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 6121 a800 sbe \$9,0\(\$1\)
+[ 0-9a-f]+: 302b fc00 addiu \$1,\$11,-1024
[ 0-9a-f]+: 6141 a800 sbe \$10,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 6181 a800 sbe \$12,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 01c1 0950 addu \$1,\$1,\$14
-[ 0-9a-f]+: 61a1 a9ff sbe \$13,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 61e1 a9ff sbe \$15,-1\(\$1\)
-[ 0-9a-f]+: 3020 f800 li \$1,-2048
-[ 0-9a-f]+: 0221 0950 addu \$1,\$1,\$17
+[ 0-9a-f]+: 302e 03ff addiu \$1,\$14,1023
+[ 0-9a-f]+: 61a1 a800 sbe \$13,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 61e1 a800 sbe \$15,0\(\$1\)
+[ 0-9a-f]+: 3031 f800 addiu \$1,\$17,-2048
[ 0-9a-f]+: 6201 a800 sbe \$16,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 6241 a800 sbe \$18,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 0281 0950 addu \$1,\$1,\$20
-[ 0-9a-f]+: 6261 a9ff sbe \$19,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 62a1 a9ff sbe \$21,-1\(\$1\)
-[ 0-9a-f]+: 3020 f000 li \$1,-4096
-[ 0-9a-f]+: 02e1 0950 addu \$1,\$1,\$23
+[ 0-9a-f]+: 3034 07ff addiu \$1,\$20,2047
+[ 0-9a-f]+: 6261 a800 sbe \$19,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 62a1 a800 sbe \$21,0\(\$1\)
+[ 0-9a-f]+: 3037 f000 addiu \$1,\$23,-4096
[ 0-9a-f]+: 62c1 a800 sbe \$22,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 6301 a800 sbe \$24,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 0341 0950 addu \$1,\$1,\$26
-[ 0-9a-f]+: 6321 a9ff sbe \$25,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 6361 a9ff sbe \$27,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 03a1 0950 addu \$1,\$1,\$29
+[ 0-9a-f]+: 303a 0fff addiu \$1,\$26,4095
+[ 0-9a-f]+: 6321 a800 sbe \$25,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 6361 a800 sbe \$27,0\(\$1\)
+[ 0-9a-f]+: 303d 8000 addiu \$1,\$29,-32768
[ 0-9a-f]+: 6381 a800 sbe \$28,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 63c1 a800 sbe \$30,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 63e1 a9ff sbe \$31,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 6041 a9ff sbe \$2,-1\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 63e1 a800 sbe \$31,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 6041 a800 sbe \$2,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 0081 0950 addu \$1,\$1,\$4
[ 0-9a-f]+: 6061 a9ff sbe \$3,-1\(\$1\)
@@ -818,66 +714,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6280 ad00 sce \$20,-256\(\$0\)
[ 0-9a-f]+: 62b6 acff sce \$21,255\(\$22\)
[ 0-9a-f]+: 62e0 acff sce \$23,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0321 0950 addu \$1,\$1,\$25
-[ 0-9a-f]+: 6301 acff sce \$24,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 6341 acff sce \$26,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0381 0950 addu \$1,\$1,\$28
-[ 0-9a-f]+: 6361 ad00 sce \$27,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 63a1 ad00 sce \$29,-256\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 03e1 0950 addu \$1,\$1,\$31
+[ 0-9a-f]+: 3039 feff addiu \$1,\$25,-257
+[ 0-9a-f]+: 6301 ac00 sce \$24,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 6341 ac00 sce \$26,0\(\$1\)
+[ 0-9a-f]+: 303c 0100 addiu \$1,\$28,256
+[ 0-9a-f]+: 6361 ac00 sce \$27,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 63a1 ac00 sce \$29,0\(\$1\)
+[ 0-9a-f]+: 303f fe00 addiu \$1,\$31,-512
[ 0-9a-f]+: 63c1 ac00 sce \$30,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 6001 ac00 sce \$0,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0061 0950 addu \$1,\$1,\$3
-[ 0-9a-f]+: 6041 adff sce \$2,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6081 adff sce \$4,-1\(\$1\)
-[ 0-9a-f]+: 3020 fc00 li \$1,-1024
-[ 0-9a-f]+: 00c1 0950 addu \$1,\$1,\$6
+[ 0-9a-f]+: 3023 01ff addiu \$1,\$3,511
+[ 0-9a-f]+: 6041 ac00 sce \$2,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 6081 ac00 sce \$4,0\(\$1\)
+[ 0-9a-f]+: 3026 fc00 addiu \$1,\$6,-1024
[ 0-9a-f]+: 60a1 ac00 sce \$5,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 60e1 ac00 sce \$7,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 0121 0950 addu \$1,\$1,\$9
-[ 0-9a-f]+: 6101 adff sce \$8,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 6141 adff sce \$10,-1\(\$1\)
-[ 0-9a-f]+: 3020 f800 li \$1,-2048
-[ 0-9a-f]+: 0181 0950 addu \$1,\$1,\$12
+[ 0-9a-f]+: 3029 03ff addiu \$1,\$9,1023
+[ 0-9a-f]+: 6101 ac00 sce \$8,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 6141 ac00 sce \$10,0\(\$1\)
+[ 0-9a-f]+: 302c f800 addiu \$1,\$12,-2048
[ 0-9a-f]+: 6161 ac00 sce \$11,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 61a1 ac00 sce \$13,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 01e1 0950 addu \$1,\$1,\$15
-[ 0-9a-f]+: 61c1 adff sce \$14,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 6201 adff sce \$16,-1\(\$1\)
-[ 0-9a-f]+: 3020 f000 li \$1,-4096
-[ 0-9a-f]+: 0241 0950 addu \$1,\$1,\$18
+[ 0-9a-f]+: 302f 07ff addiu \$1,\$15,2047
+[ 0-9a-f]+: 61c1 ac00 sce \$14,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 6201 ac00 sce \$16,0\(\$1\)
+[ 0-9a-f]+: 3032 f000 addiu \$1,\$18,-4096
[ 0-9a-f]+: 6221 ac00 sce \$17,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 6261 ac00 sce \$19,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 02a1 0950 addu \$1,\$1,\$21
-[ 0-9a-f]+: 6281 adff sce \$20,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 62c1 adff sce \$22,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 0301 0950 addu \$1,\$1,\$24
+[ 0-9a-f]+: 3035 0fff addiu \$1,\$21,4095
+[ 0-9a-f]+: 6281 ac00 sce \$20,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 62c1 ac00 sce \$22,0\(\$1\)
+[ 0-9a-f]+: 3038 8000 addiu \$1,\$24,-32768
[ 0-9a-f]+: 62e1 ac00 sce \$23,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 6321 ac00 sce \$25,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 0361 0950 addu \$1,\$1,\$27
-[ 0-9a-f]+: 6341 adff sce \$26,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 6381 adff sce \$28,-1\(\$1\)
+[ 0-9a-f]+: 303b 7fff addiu \$1,\$27,32767
+[ 0-9a-f]+: 6341 ac00 sce \$26,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 6381 ac00 sce \$28,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 03c1 0950 addu \$1,\$1,\$30
[ 0-9a-f]+: 63a1 adff sce \$29,-1\(\$1\)
@@ -908,65 +792,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 61e0 ab00 she \$15,-256\(\$0\)
[ 0-9a-f]+: 6211 aaff she \$16,255\(\$17\)
[ 0-9a-f]+: 6240 aaff she \$18,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0281 0950 addu \$1,\$1,\$20
-[ 0-9a-f]+: 6261 aaff she \$19,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 62a1 aaff she \$21,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 02e1 0950 addu \$1,\$1,\$23
-[ 0-9a-f]+: 62c1 ab00 she \$22,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6301 ab00 she \$24,-256\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0341 0950 addu \$1,\$1,\$26
+[ 0-9a-f]+: 3034 feff addiu \$1,\$20,-257
+[ 0-9a-f]+: 6261 aa00 she \$19,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 62a1 aa00 she \$21,0\(\$1\)
+[ 0-9a-f]+: 3037 0100 addiu \$1,\$23,256
+[ 0-9a-f]+: 62c1 aa00 she \$22,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 6301 aa00 she \$24,0\(\$1\)
+[ 0-9a-f]+: 303a fe00 addiu \$1,\$26,-512
[ 0-9a-f]+: 6321 aa00 she \$25,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 6361 aa00 she \$27,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 03a1 0950 addu \$1,\$1,\$29
-[ 0-9a-f]+: 6381 abff she \$28,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 63c1 abff she \$30,-1\(\$1\)
+[ 0-9a-f]+: 303d 01ff addiu \$1,\$29,511
+[ 0-9a-f]+: 6381 aa00 she \$28,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 63c1 aa00 she \$30,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 63e1 aa00 she \$31,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 6041 aa00 she \$2,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 0081 0950 addu \$1,\$1,\$4
-[ 0-9a-f]+: 6061 abff she \$3,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 60a1 abff she \$5,-1\(\$1\)
-[ 0-9a-f]+: 3020 f800 li \$1,-2048
-[ 0-9a-f]+: 00e1 0950 addu \$1,\$1,\$7
+[ 0-9a-f]+: 3024 03ff addiu \$1,\$4,1023
+[ 0-9a-f]+: 6061 aa00 she \$3,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 60a1 aa00 she \$5,0\(\$1\)
+[ 0-9a-f]+: 3027 f800 addiu \$1,\$7,-2048
[ 0-9a-f]+: 60c1 aa00 she \$6,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 6101 aa00 she \$8,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 0141 0950 addu \$1,\$1,\$10
-[ 0-9a-f]+: 6121 abff she \$9,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 6161 abff she \$11,-1\(\$1\)
-[ 0-9a-f]+: 3020 f000 li \$1,-4096
-[ 0-9a-f]+: 01a1 0950 addu \$1,\$1,\$13
+[ 0-9a-f]+: 302a 07ff addiu \$1,\$10,2047
+[ 0-9a-f]+: 6121 aa00 she \$9,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 6161 aa00 she \$11,0\(\$1\)
+[ 0-9a-f]+: 302d f000 addiu \$1,\$13,-4096
[ 0-9a-f]+: 6181 aa00 she \$12,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 61c1 aa00 she \$14,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 0201 0950 addu \$1,\$1,\$16
-[ 0-9a-f]+: 61e1 abff she \$15,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 6221 abff she \$17,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 0261 0950 addu \$1,\$1,\$19
+[ 0-9a-f]+: 3030 0fff addiu \$1,\$16,4095
+[ 0-9a-f]+: 61e1 aa00 she \$15,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 6221 aa00 she \$17,0\(\$1\)
+[ 0-9a-f]+: 3033 8000 addiu \$1,\$19,-32768
[ 0-9a-f]+: 6241 aa00 she \$18,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 6281 aa00 she \$20,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 02c1 0950 addu \$1,\$1,\$22
-[ 0-9a-f]+: 62a1 abff she \$21,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 62e1 abff she \$23,-1\(\$1\)
+[ 0-9a-f]+: 3036 7fff addiu \$1,\$22,32767
+[ 0-9a-f]+: 62a1 aa00 she \$21,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 62e1 aa00 she \$23,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 0321 0950 addu \$1,\$1,\$25
[ 0-9a-f]+: 6301 abff she \$24,-1\(\$1\)
@@ -997,66 +870,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6140 af00 swe \$10,-256\(\$0\)
[ 0-9a-f]+: 616c aeff swe \$11,255\(\$12\)
[ 0-9a-f]+: 61a0 aeff swe \$13,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 01e1 0950 addu \$1,\$1,\$15
-[ 0-9a-f]+: 61c1 aeff swe \$14,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 6201 aeff swe \$16,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0241 0950 addu \$1,\$1,\$18
-[ 0-9a-f]+: 6221 af00 swe \$17,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6261 af00 swe \$19,-256\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 02a1 0950 addu \$1,\$1,\$21
+[ 0-9a-f]+: 302f feff addiu \$1,\$15,-257
+[ 0-9a-f]+: 61c1 ae00 swe \$14,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 6201 ae00 swe \$16,0\(\$1\)
+[ 0-9a-f]+: 3032 0100 addiu \$1,\$18,256
+[ 0-9a-f]+: 6221 ae00 swe \$17,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 6261 ae00 swe \$19,0\(\$1\)
+[ 0-9a-f]+: 3035 fe00 addiu \$1,\$21,-512
[ 0-9a-f]+: 6281 ae00 swe \$20,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 62c1 ae00 swe \$22,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0301 0950 addu \$1,\$1,\$24
-[ 0-9a-f]+: 62e1 afff swe \$23,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6321 afff swe \$25,-1\(\$1\)
-[ 0-9a-f]+: 3020 fc00 li \$1,-1024
-[ 0-9a-f]+: 0361 0950 addu \$1,\$1,\$27
+[ 0-9a-f]+: 3038 01ff addiu \$1,\$24,511
+[ 0-9a-f]+: 62e1 ae00 swe \$23,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 6321 ae00 swe \$25,0\(\$1\)
+[ 0-9a-f]+: 303b fc00 addiu \$1,\$27,-1024
[ 0-9a-f]+: 6341 ae00 swe \$26,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 6381 ae00 swe \$28,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 03c1 0950 addu \$1,\$1,\$30
-[ 0-9a-f]+: 63a1 afff swe \$29,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 63e1 afff swe \$31,-1\(\$1\)
-[ 0-9a-f]+: 3020 f800 li \$1,-2048
-[ 0-9a-f]+: 0041 0950 addu \$1,\$1,\$2
+[ 0-9a-f]+: 303e 03ff addiu \$1,\$30,1023
+[ 0-9a-f]+: 63a1 ae00 swe \$29,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 63e1 ae00 swe \$31,0\(\$1\)
+[ 0-9a-f]+: 3022 f800 addiu \$1,\$2,-2048
[ 0-9a-f]+: 6001 ae00 swe \$0,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 6061 ae00 swe \$3,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 00a1 0950 addu \$1,\$1,\$5
-[ 0-9a-f]+: 6081 afff swe \$4,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 60c1 afff swe \$6,-1\(\$1\)
-[ 0-9a-f]+: 3020 f000 li \$1,-4096
-[ 0-9a-f]+: 0101 0950 addu \$1,\$1,\$8
+[ 0-9a-f]+: 3025 07ff addiu \$1,\$5,2047
+[ 0-9a-f]+: 6081 ae00 swe \$4,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 60c1 ae00 swe \$6,0\(\$1\)
+[ 0-9a-f]+: 3028 f000 addiu \$1,\$8,-4096
[ 0-9a-f]+: 60e1 ae00 swe \$7,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 6121 ae00 swe \$9,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 0161 0950 addu \$1,\$1,\$11
-[ 0-9a-f]+: 6141 afff swe \$10,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 6181 afff swe \$12,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 01c1 0950 addu \$1,\$1,\$14
+[ 0-9a-f]+: 302b 0fff addiu \$1,\$11,4095
+[ 0-9a-f]+: 6141 ae00 swe \$10,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 6181 ae00 swe \$12,0\(\$1\)
+[ 0-9a-f]+: 302e 8000 addiu \$1,\$14,-32768
[ 0-9a-f]+: 61a1 ae00 swe \$13,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 61e1 ae00 swe \$15,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 0221 0950 addu \$1,\$1,\$17
-[ 0-9a-f]+: 6201 afff swe \$16,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 6241 afff swe \$18,-1\(\$1\)
+[ 0-9a-f]+: 3031 7fff addiu \$1,\$17,32767
+[ 0-9a-f]+: 6201 ae00 swe \$16,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 6241 ae00 swe \$18,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 0281 0950 addu \$1,\$1,\$20
[ 0-9a-f]+: 6261 afff swe \$19,-1\(\$1\)
@@ -1087,66 +948,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 60a0 a100 swle \$5,-256\(\$0\)
[ 0-9a-f]+: 60c7 a0ff swle \$6,255\(\$7\)
[ 0-9a-f]+: 6100 a0ff swle \$8,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0141 0950 addu \$1,\$1,\$10
-[ 0-9a-f]+: 6121 a0ff swle \$9,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 6161 a0ff swle \$11,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 01a1 0950 addu \$1,\$1,\$13
-[ 0-9a-f]+: 6181 a100 swle \$12,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 61c1 a100 swle \$14,-256\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0201 0950 addu \$1,\$1,\$16
+[ 0-9a-f]+: 302a feff addiu \$1,\$10,-257
+[ 0-9a-f]+: 6121 a000 swle \$9,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 6161 a000 swle \$11,0\(\$1\)
+[ 0-9a-f]+: 302d 0100 addiu \$1,\$13,256
+[ 0-9a-f]+: 6181 a000 swle \$12,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 61c1 a000 swle \$14,0\(\$1\)
+[ 0-9a-f]+: 3030 fe00 addiu \$1,\$16,-512
[ 0-9a-f]+: 61e1 a000 swle \$15,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 6221 a000 swle \$17,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0261 0950 addu \$1,\$1,\$19
-[ 0-9a-f]+: 6241 a1ff swle \$18,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6281 a1ff swle \$20,-1\(\$1\)
-[ 0-9a-f]+: 3020 fc00 li \$1,-1024
-[ 0-9a-f]+: 02c1 0950 addu \$1,\$1,\$22
+[ 0-9a-f]+: 3033 01ff addiu \$1,\$19,511
+[ 0-9a-f]+: 6241 a000 swle \$18,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 6281 a000 swle \$20,0\(\$1\)
+[ 0-9a-f]+: 3036 fc00 addiu \$1,\$22,-1024
[ 0-9a-f]+: 62a1 a000 swle \$21,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 62e1 a000 swle \$23,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 0321 0950 addu \$1,\$1,\$25
-[ 0-9a-f]+: 6301 a1ff swle \$24,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 6341 a1ff swle \$26,-1\(\$1\)
-[ 0-9a-f]+: 3020 f800 li \$1,-2048
-[ 0-9a-f]+: 0381 0950 addu \$1,\$1,\$28
+[ 0-9a-f]+: 3039 03ff addiu \$1,\$25,1023
+[ 0-9a-f]+: 6301 a000 swle \$24,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 6341 a000 swle \$26,0\(\$1\)
+[ 0-9a-f]+: 303c f800 addiu \$1,\$28,-2048
[ 0-9a-f]+: 6361 a000 swle \$27,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 63a1 a000 swle \$29,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 03e1 0950 addu \$1,\$1,\$31
-[ 0-9a-f]+: 63c1 a1ff swle \$30,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 6001 a1ff swle \$0,-1\(\$1\)
-[ 0-9a-f]+: 3020 f000 li \$1,-4096
-[ 0-9a-f]+: 0061 0950 addu \$1,\$1,\$3
+[ 0-9a-f]+: 303f 07ff addiu \$1,\$31,2047
+[ 0-9a-f]+: 63c1 a000 swle \$30,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 6001 a000 swle \$0,0\(\$1\)
+[ 0-9a-f]+: 3023 f000 addiu \$1,\$3,-4096
[ 0-9a-f]+: 6041 a000 swle \$2,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 6081 a000 swle \$4,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 00c1 0950 addu \$1,\$1,\$6
-[ 0-9a-f]+: 60a1 a1ff swle \$5,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 60e1 a1ff swle \$7,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 0121 0950 addu \$1,\$1,\$9
+[ 0-9a-f]+: 3026 0fff addiu \$1,\$6,4095
+[ 0-9a-f]+: 60a1 a000 swle \$5,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 60e1 a000 swle \$7,0\(\$1\)
+[ 0-9a-f]+: 3029 8000 addiu \$1,\$9,-32768
[ 0-9a-f]+: 6101 a000 swle \$8,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 6141 a000 swle \$10,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 0181 0950 addu \$1,\$1,\$12
-[ 0-9a-f]+: 6161 a1ff swle \$11,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 61a1 a1ff swle \$13,-1\(\$1\)
+[ 0-9a-f]+: 302c 7fff addiu \$1,\$12,32767
+[ 0-9a-f]+: 6161 a000 swle \$11,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 61a1 a000 swle \$13,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 01e1 0950 addu \$1,\$1,\$15
[ 0-9a-f]+: 61c1 a1ff swle \$14,-1\(\$1\)
@@ -1177,65 +1026,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 63e0 a300 swre \$31,-256\(\$0\)
[ 0-9a-f]+: 6002 a2ff swre \$0,255\(\$2\)
[ 0-9a-f]+: 6060 a2ff swre \$3,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 00a1 0950 addu \$1,\$1,\$5
-[ 0-9a-f]+: 6081 a2ff swre \$4,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 60c1 a2ff swre \$6,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0101 0950 addu \$1,\$1,\$8
-[ 0-9a-f]+: 60e1 a300 swre \$7,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6121 a300 swre \$9,-256\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0161 0950 addu \$1,\$1,\$11
+[ 0-9a-f]+: 3025 feff addiu \$1,\$5,-257
+[ 0-9a-f]+: 6081 a200 swre \$4,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 60c1 a200 swre \$6,0\(\$1\)
+[ 0-9a-f]+: 3028 0100 addiu \$1,\$8,256
+[ 0-9a-f]+: 60e1 a200 swre \$7,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 6121 a200 swre \$9,0\(\$1\)
+[ 0-9a-f]+: 302b fe00 addiu \$1,\$11,-512
[ 0-9a-f]+: 6141 a200 swre \$10,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 6181 a200 swre \$12,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 01c1 0950 addu \$1,\$1,\$14
-[ 0-9a-f]+: 61a1 a3ff swre \$13,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 61e1 a3ff swre \$15,-1\(\$1\)
-[ 0-9a-f]+: 3020 fc00 li \$1,-1024
-[ 0-9a-f]+: 0221 0950 addu \$1,\$1,\$17
+[ 0-9a-f]+: 302e 01ff addiu \$1,\$14,511
+[ 0-9a-f]+: 61a1 a200 swre \$13,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 61e1 a200 swre \$15,0\(\$1\)
+[ 0-9a-f]+: 3031 fc00 addiu \$1,\$17,-1024
[ 0-9a-f]+: 6201 a200 swre \$16,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 6241 a200 swre \$18,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 0281 0950 addu \$1,\$1,\$20
-[ 0-9a-f]+: 6261 a3ff swre \$19,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 62a1 a3ff swre \$21,-1\(\$1\)
-[ 0-9a-f]+: 3020 f800 li \$1,-2048
-[ 0-9a-f]+: 02e1 0950 addu \$1,\$1,\$23
+[ 0-9a-f]+: 3034 03ff addiu \$1,\$20,1023
+[ 0-9a-f]+: 6261 a200 swre \$19,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 62a1 a200 swre \$21,0\(\$1\)
+[ 0-9a-f]+: 3037 f800 addiu \$1,\$23,-2048
[ 0-9a-f]+: 62c1 a200 swre \$22,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 6301 a200 swre \$24,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 0341 0950 addu \$1,\$1,\$26
-[ 0-9a-f]+: 6321 a3ff swre \$25,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 6361 a3ff swre \$27,-1\(\$1\)
-[ 0-9a-f]+: 3020 f000 li \$1,-4096
-[ 0-9a-f]+: 03a1 0950 addu \$1,\$1,\$29
+[ 0-9a-f]+: 303a 07ff addiu \$1,\$26,2047
+[ 0-9a-f]+: 6321 a200 swre \$25,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 6361 a200 swre \$27,0\(\$1\)
+[ 0-9a-f]+: 303d f000 addiu \$1,\$29,-4096
[ 0-9a-f]+: 6381 a200 swre \$28,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 63c1 a200 swre \$30,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 63e1 a3ff swre \$31,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 6041 a3ff swre \$2,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 0081 0950 addu \$1,\$1,\$4
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 63e1 a200 swre \$31,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 6041 a200 swre \$2,0\(\$1\)
+[ 0-9a-f]+: 3024 8000 addiu \$1,\$4,-32768
[ 0-9a-f]+: 6061 a200 swre \$3,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 60a1 a200 swre \$5,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 00e1 0950 addu \$1,\$1,\$7
-[ 0-9a-f]+: 60c1 a3ff swre \$6,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 6101 a3ff swre \$8,-1\(\$1\)
+[ 0-9a-f]+: 3027 7fff addiu \$1,\$7,32767
+[ 0-9a-f]+: 60c1 a200 swre \$6,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 6101 a200 swre \$8,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 0141 0950 addu \$1,\$1,\$10
[ 0-9a-f]+: 6121 a3ff swre \$9,-1\(\$1\)
@@ -1266,66 +1104,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 6340 a700 cachee 0x1a,-256\(\$0\)
[ 0-9a-f]+: 637c a6ff cachee 0x1b,255\(\$28\)
[ 0-9a-f]+: 63a0 a6ff cachee 0x1d,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 03e1 0950 addu \$1,\$1,\$31
-[ 0-9a-f]+: 63c1 a6ff cachee 0x1e,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 6001 a6ff cachee 0x0,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0061 0950 addu \$1,\$1,\$3
-[ 0-9a-f]+: 6041 a700 cachee 0x2,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6081 a700 cachee 0x4,-256\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 00c1 0950 addu \$1,\$1,\$6
+[ 0-9a-f]+: 303f feff addiu \$1,\$31,-257
+[ 0-9a-f]+: 63c1 a600 cachee 0x1e,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 6001 a600 cachee 0x0,0\(\$1\)
+[ 0-9a-f]+: 3023 0100 addiu \$1,\$3,256
+[ 0-9a-f]+: 6041 a600 cachee 0x2,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 6081 a600 cachee 0x4,0\(\$1\)
+[ 0-9a-f]+: 3026 fe00 addiu \$1,\$6,-512
[ 0-9a-f]+: 60a1 a600 cachee 0x5,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 60e1 a600 cachee 0x7,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0121 0950 addu \$1,\$1,\$9
-[ 0-9a-f]+: 6101 a7ff cachee 0x8,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 6141 a7ff cachee 0xa,-1\(\$1\)
-[ 0-9a-f]+: 3020 fc00 li \$1,-1024
-[ 0-9a-f]+: 0181 0950 addu \$1,\$1,\$12
+[ 0-9a-f]+: 3029 01ff addiu \$1,\$9,511
+[ 0-9a-f]+: 6101 a600 cachee 0x8,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 6141 a600 cachee 0xa,0\(\$1\)
+[ 0-9a-f]+: 302c fc00 addiu \$1,\$12,-1024
[ 0-9a-f]+: 6161 a600 cachee 0xb,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 61a1 a600 cachee 0xd,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 01e1 0950 addu \$1,\$1,\$15
-[ 0-9a-f]+: 61c1 a7ff cachee 0xe,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 6201 a7ff cachee 0x10,-1\(\$1\)
-[ 0-9a-f]+: 3020 f800 li \$1,-2048
-[ 0-9a-f]+: 0241 0950 addu \$1,\$1,\$18
+[ 0-9a-f]+: 302f 03ff addiu \$1,\$15,1023
+[ 0-9a-f]+: 61c1 a600 cachee 0xe,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 6201 a600 cachee 0x10,0\(\$1\)
+[ 0-9a-f]+: 3032 f800 addiu \$1,\$18,-2048
[ 0-9a-f]+: 6221 a600 cachee 0x11,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 6261 a600 cachee 0x13,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 02a1 0950 addu \$1,\$1,\$21
-[ 0-9a-f]+: 6281 a7ff cachee 0x14,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 62c1 a7ff cachee 0x16,-1\(\$1\)
-[ 0-9a-f]+: 3020 f000 li \$1,-4096
-[ 0-9a-f]+: 0301 0950 addu \$1,\$1,\$24
+[ 0-9a-f]+: 3035 07ff addiu \$1,\$21,2047
+[ 0-9a-f]+: 6281 a600 cachee 0x14,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 62c1 a600 cachee 0x16,0\(\$1\)
+[ 0-9a-f]+: 3038 f000 addiu \$1,\$24,-4096
[ 0-9a-f]+: 62e1 a600 cachee 0x17,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 6321 a600 cachee 0x19,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 0361 0950 addu \$1,\$1,\$27
-[ 0-9a-f]+: 6341 a7ff cachee 0x1a,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 6381 a7ff cachee 0x1c,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 03c1 0950 addu \$1,\$1,\$30
+[ 0-9a-f]+: 303b 0fff addiu \$1,\$27,4095
+[ 0-9a-f]+: 6341 a600 cachee 0x1a,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 6381 a600 cachee 0x1c,0\(\$1\)
+[ 0-9a-f]+: 303e 8000 addiu \$1,\$30,-32768
[ 0-9a-f]+: 63a1 a600 cachee 0x1d,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 63e1 a600 cachee 0x1f,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 0041 0950 addu \$1,\$1,\$2
-[ 0-9a-f]+: 6001 a7ff cachee 0x0,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 6061 a7ff cachee 0x3,-1\(\$1\)
+[ 0-9a-f]+: 3022 7fff addiu \$1,\$2,32767
+[ 0-9a-f]+: 6001 a600 cachee 0x0,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 6061 a600 cachee 0x3,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 00a1 0950 addu \$1,\$1,\$5
[ 0-9a-f]+: 6081 a7ff cachee 0x4,-1\(\$1\)
@@ -1356,65 +1182,54 @@ Disassembly of section \.text:
[ 0-9a-f]+: 62a0 a500 prefe 0x15,-256\(\$0\)
[ 0-9a-f]+: 62d7 a4ff prefe 0x16,255\(\$23\)
[ 0-9a-f]+: 6300 a4ff prefe 0x18,255\(\$0\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 0341 0950 addu \$1,\$1,\$26
-[ 0-9a-f]+: 6321 a4ff prefe 0x19,255\(\$1\)
-[ 0-9a-f]+: 3020 fe00 li \$1,-512
-[ 0-9a-f]+: 6361 a4ff prefe 0x1b,255\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 03a1 0950 addu \$1,\$1,\$29
-[ 0-9a-f]+: 6381 a500 prefe 0x1c,-256\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 63c1 a500 prefe 0x1e,-256\(\$1\)
+[ 0-9a-f]+: 303a feff addiu \$1,\$26,-257
+[ 0-9a-f]+: 6321 a400 prefe 0x19,0\(\$1\)
+[ 0-9a-f]+: 3020 feff li \$1,-257
+[ 0-9a-f]+: 6361 a400 prefe 0x1b,0\(\$1\)
+[ 0-9a-f]+: 303d 0100 addiu \$1,\$29,256
+[ 0-9a-f]+: 6381 a400 prefe 0x1c,0\(\$1\)
+[ 0-9a-f]+: 3020 0100 li \$1,256
+[ 0-9a-f]+: 63c1 a400 prefe 0x1e,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 63e1 a400 prefe 0x1f,0\(\$1\)
[ 0-9a-f]+: 3020 fe00 li \$1,-512
[ 0-9a-f]+: 6041 a400 prefe 0x2,0\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 0081 0950 addu \$1,\$1,\$4
-[ 0-9a-f]+: 6061 a5ff prefe 0x3,-1\(\$1\)
-[ 0-9a-f]+: 3020 0200 li \$1,512
-[ 0-9a-f]+: 60a1 a5ff prefe 0x5,-1\(\$1\)
-[ 0-9a-f]+: 3020 fc00 li \$1,-1024
-[ 0-9a-f]+: 00e1 0950 addu \$1,\$1,\$7
+[ 0-9a-f]+: 3024 01ff addiu \$1,\$4,511
+[ 0-9a-f]+: 6061 a400 prefe 0x3,0\(\$1\)
+[ 0-9a-f]+: 3020 01ff li \$1,511
+[ 0-9a-f]+: 60a1 a400 prefe 0x5,0\(\$1\)
+[ 0-9a-f]+: 3027 fc00 addiu \$1,\$7,-1024
[ 0-9a-f]+: 60c1 a400 prefe 0x6,0\(\$1\)
[ 0-9a-f]+: 3020 fc00 li \$1,-1024
[ 0-9a-f]+: 6101 a400 prefe 0x8,0\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 0141 0950 addu \$1,\$1,\$10
-[ 0-9a-f]+: 6121 a5ff prefe 0x9,-1\(\$1\)
-[ 0-9a-f]+: 3020 0400 li \$1,1024
-[ 0-9a-f]+: 6161 a5ff prefe 0xb,-1\(\$1\)
-[ 0-9a-f]+: 3020 f800 li \$1,-2048
-[ 0-9a-f]+: 01a1 0950 addu \$1,\$1,\$13
+[ 0-9a-f]+: 302a 03ff addiu \$1,\$10,1023
+[ 0-9a-f]+: 6121 a400 prefe 0x9,0\(\$1\)
+[ 0-9a-f]+: 3020 03ff li \$1,1023
+[ 0-9a-f]+: 6161 a400 prefe 0xb,0\(\$1\)
+[ 0-9a-f]+: 302d f800 addiu \$1,\$13,-2048
[ 0-9a-f]+: 6181 a400 prefe 0xc,0\(\$1\)
[ 0-9a-f]+: 3020 f800 li \$1,-2048
[ 0-9a-f]+: 61c1 a400 prefe 0xe,0\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 0201 0950 addu \$1,\$1,\$16
-[ 0-9a-f]+: 61e1 a5ff prefe 0xf,-1\(\$1\)
-[ 0-9a-f]+: 3020 0800 li \$1,2048
-[ 0-9a-f]+: 6221 a5ff prefe 0x11,-1\(\$1\)
-[ 0-9a-f]+: 3020 f000 li \$1,-4096
-[ 0-9a-f]+: 0261 0950 addu \$1,\$1,\$19
+[ 0-9a-f]+: 3030 07ff addiu \$1,\$16,2047
+[ 0-9a-f]+: 61e1 a400 prefe 0xf,0\(\$1\)
+[ 0-9a-f]+: 3020 07ff li \$1,2047
+[ 0-9a-f]+: 6221 a400 prefe 0x11,0\(\$1\)
+[ 0-9a-f]+: 3033 f000 addiu \$1,\$19,-4096
[ 0-9a-f]+: 6241 a400 prefe 0x12,0\(\$1\)
[ 0-9a-f]+: 3020 f000 li \$1,-4096
[ 0-9a-f]+: 6281 a400 prefe 0x14,0\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 02c1 0950 addu \$1,\$1,\$22
-[ 0-9a-f]+: 62a1 a5ff prefe 0x15,-1\(\$1\)
-[ 0-9a-f]+: 3020 1000 li \$1,4096
-[ 0-9a-f]+: 62e1 a5ff prefe 0x17,-1\(\$1\)
-[ 0-9a-f]+: 3020 8000 li \$1,-32768
-[ 0-9a-f]+: 0321 0950 addu \$1,\$1,\$25
+[ 0-9a-f]+: 3036 0fff addiu \$1,\$22,4095
+[ 0-9a-f]+: 62a1 a400 prefe 0x15,0\(\$1\)
+[ 0-9a-f]+: 3020 0fff li \$1,4095
+[ 0-9a-f]+: 62e1 a400 prefe 0x17,0\(\$1\)
+[ 0-9a-f]+: 3039 8000 addiu \$1,\$25,-32768
[ 0-9a-f]+: 6301 a400 prefe 0x18,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 6341 a400 prefe 0x1a,0\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 0381 0950 addu \$1,\$1,\$28
-[ 0-9a-f]+: 6361 a5ff prefe 0x1b,-1\(\$1\)
-[ 0-9a-f]+: 5020 8000 li \$1,0x8000
-[ 0-9a-f]+: 63a1 a5ff prefe 0x1d,-1\(\$1\)
+[ 0-9a-f]+: 303c 7fff addiu \$1,\$28,32767
+[ 0-9a-f]+: 6361 a400 prefe 0x1b,0\(\$1\)
+[ 0-9a-f]+: 3020 7fff li \$1,32767
+[ 0-9a-f]+: 63a1 a400 prefe 0x1d,0\(\$1\)
[ 0-9a-f]+: 3020 8000 li \$1,-32768
[ 0-9a-f]+: 03e1 0950 addu \$1,\$1,\$31
[ 0-9a-f]+: 63c1 a5ff prefe 0x1e,-1\(\$1\)
@@ -1441,4 +1256,7 @@ Disassembly of section \.text:
[ 0-9a-f]+: 3021 0000 addiu \$1,\$1,0
[ 0-9a-f]+: R_MICROMIPS_LO16 MYDATA
[ 0-9a-f]+: 61a1 a400 prefe 0xd,0\(\$1\)
+[ 0-9a-f]+: 3026 0000 addiu \$1,\$6,0
+ [ 0-9a-f]+: R_MICROMIPS_LO16 foo
+[ 0-9a-f]+: 60a1 a400 prefe 0x5,0\(\$1\)
#pass
diff --git a/gas/testsuite/gas/mips/micromips@mcu.d b/gas/testsuite/gas/mips/micromips@mcu.d
index eec0ed7..a78fc2c 100644
--- a/gas/testsuite/gas/mips/micromips@mcu.d
+++ b/gas/testsuite/gas/mips/micromips@mcu.d
@@ -23,17 +23,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 20ff b000 aclr 0x7,0\(ra\)
[ 0-9a-f]+: 20ff b7ff aclr 0x7,2047\(ra\)
[ 0-9a-f]+: 20ff b800 aclr 0x7,-2048\(ra\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 03e1 0950 addu at,at,ra
-[ 0-9a-f]+: 20e1 b800 aclr 0x7,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 03e1 0950 addu at,at,ra
-[ 0-9a-f]+: 20e1 b7ff aclr 0x7,2047\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03e1 0950 addu at,at,ra
-[ 0-9a-f]+: 20e1 bfff aclr 0x7,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03e1 0950 addu at,at,ra
+[ 0-9a-f]+: 303f 0800 addiu at,ra,2048
+[ 0-9a-f]+: 20e1 b000 aclr 0x7,0\(at\)
+[ 0-9a-f]+: 303f f7ff addiu at,ra,-2049
+[ 0-9a-f]+: 20e1 b000 aclr 0x7,0\(at\)
+[ 0-9a-f]+: 303f 7fff addiu at,ra,32767
+[ 0-9a-f]+: 20e1 b000 aclr 0x7,0\(at\)
+[ 0-9a-f]+: 303f 8000 addiu at,ra,-32768
[ 0-9a-f]+: 20e1 b000 aclr 0x7,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -44,15 +40,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 20e1 b000 aclr 0x7,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 20e1 b000 aclr 0x7,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 20e1 b001 aclr 0x7,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 20e1 b001 aclr 0x7,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 20e1 b000 aclr 0x7,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 20e1 b000 aclr 0x7,0\(at\)
@@ -81,17 +75,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 20ff 3000 aset 0x7,0\(ra\)
[ 0-9a-f]+: 20ff 37ff aset 0x7,2047\(ra\)
[ 0-9a-f]+: 20ff 3800 aset 0x7,-2048\(ra\)
-[ 0-9a-f]+: 3020 1000 li at,4096
-[ 0-9a-f]+: 03e1 0950 addu at,at,ra
-[ 0-9a-f]+: 20e1 3800 aset 0x7,-2048\(at\)
-[ 0-9a-f]+: 3020 f000 li at,-4096
-[ 0-9a-f]+: 03e1 0950 addu at,at,ra
-[ 0-9a-f]+: 20e1 37ff aset 0x7,2047\(at\)
-[ 0-9a-f]+: 5020 8000 li at,0x8000
-[ 0-9a-f]+: 03e1 0950 addu at,at,ra
-[ 0-9a-f]+: 20e1 3fff aset 0x7,-1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 03e1 0950 addu at,at,ra
+[ 0-9a-f]+: 303f 0800 addiu at,ra,2048
+[ 0-9a-f]+: 20e1 3000 aset 0x7,0\(at\)
+[ 0-9a-f]+: 303f f7ff addiu at,ra,-2049
+[ 0-9a-f]+: 20e1 3000 aset 0x7,0\(at\)
+[ 0-9a-f]+: 303f 7fff addiu at,ra,32767
+[ 0-9a-f]+: 20e1 3000 aset 0x7,0\(at\)
+[ 0-9a-f]+: 303f 8000 addiu at,ra,-32768
[ 0-9a-f]+: 20e1 3000 aset 0x7,0\(at\)
[ 0-9a-f]+: 41a1 0001 lui at,0x1
[ 0-9a-f]+: 0081 0950 addu at,at,a0
@@ -102,15 +92,13 @@ Disassembly of section \.text:
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 20e1 3000 aset 0x7,0\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
+[ 0-9a-f]+: 3024 8000 addiu at,a0,-32768
[ 0-9a-f]+: 20e1 3000 aset 0x7,0\(at\)
[ 0-9a-f]+: 41a1 ffff lui at,0xffff
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 20e1 3001 aset 0x7,1\(at\)
-[ 0-9a-f]+: 3020 8000 li at,-32768
-[ 0-9a-f]+: 0081 0950 addu at,at,a0
-[ 0-9a-f]+: 20e1 3001 aset 0x7,1\(at\)
+[ 0-9a-f]+: 3024 8001 addiu at,a0,-32767
+[ 0-9a-f]+: 20e1 3000 aset 0x7,0\(at\)
[ 0-9a-f]+: 41a1 f000 lui at,0xf000
[ 0-9a-f]+: 0081 0950 addu at,at,a0
[ 0-9a-f]+: 20e1 3000 aset 0x7,0\(at\)
diff --git a/gas/testsuite/gas/mips/micromips@pref.d b/gas/testsuite/gas/mips/micromips@pref.d
index 578a797..6dbee45 100644
--- a/gas/testsuite/gas/mips/micromips@pref.d
+++ b/gas/testsuite/gas/mips/micromips@pref.d
@@ -10,17 +10,13 @@
Disassembly of section \.text:
[0-9a-f]+ <[^>]*> 60a2 27ff pref 0x5,2047\(v0\)
[0-9a-f]+ <[^>]*> 60a3 2800 pref 0x5,-2048\(v1\)
-[0-9a-f]+ <[^>]*> 3020 1000 li at,4096
-[0-9a-f]+ <[^>]*> 0081 0950 addu at,at,a0
-[0-9a-f]+ <[^>]*> 60a1 2800 pref 0x5,-2048\(at\)
-[0-9a-f]+ <[^>]*> 3020 f000 li at,-4096
-[0-9a-f]+ <[^>]*> 00a1 0950 addu at,at,a1
-[0-9a-f]+ <[^>]*> 60a1 27ff pref 0x5,2047\(at\)
-[0-9a-f]+ <[^>]*> 5020 8000 li at,0x8000
-[0-9a-f]+ <[^>]*> 00c1 0950 addu at,at,a2
-[0-9a-f]+ <[^>]*> 60a1 2fff pref 0x5,-1\(at\)
-[0-9a-f]+ <[^>]*> 3020 8000 li at,-32768
-[0-9a-f]+ <[^>]*> 00e1 0950 addu at,at,a3
+[0-9a-f]+ <[^>]*> 3024 0800 addiu at,a0,2048
+[0-9a-f]+ <[^>]*> 60a1 2000 pref 0x5,0\(at\)
+[0-9a-f]+ <[^>]*> 3025 f7ff addiu at,a1,-2049
+[0-9a-f]+ <[^>]*> 60a1 2000 pref 0x5,0\(at\)
+[0-9a-f]+ <[^>]*> 3026 7fff addiu at,a2,32767
+[0-9a-f]+ <[^>]*> 60a1 2000 pref 0x5,0\(at\)
+[0-9a-f]+ <[^>]*> 3027 8000 addiu at,a3,-32768
[0-9a-f]+ <[^>]*> 60a1 2000 pref 0x5,0\(at\)
[0-9a-f]+ <[^>]*> 5020 8000 li at,0x8000
[0-9a-f]+ <[^>]*> 0101 0950 addu at,at,t0
diff --git a/gas/testsuite/gas/mips/micromips@ulw-reloc.d b/gas/testsuite/gas/mips/micromips@ulw-reloc.d
new file mode 100644
index 0000000..0b542b5
--- /dev/null
+++ b/gas/testsuite/gas/mips/micromips@ulw-reloc.d
@@ -0,0 +1,144 @@
+#as: -32 -EB
+#objdump: -dr --prefix-addresses -Mgpr-names=numeric
+#name: ULW with relocation operators
+#source: ulw-reloc.s
+
+.*file format.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> lwl \$1,0\(\$4\)
+[0-9a-f]+ <[^>]*> lwr \$1,3\(\$4\)
+[0-9a-f]+ <[^>]*> move \$4,\$1
+[0-9a-f]+ <[^>]*> lwl \$1,2044\(\$4\)
+[0-9a-f]+ <[^>]*> lwr \$1,2047\(\$4\)
+[0-9a-f]+ <[^>]*> move \$4,\$1
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,2045
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,2047
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,2048
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,32764
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,32765
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,32767
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> li \$1,0x8000
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$4
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$5\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$5\)
+[0-9a-f]+ <[^>]*> lwl \$4,2044\(\$5\)
+[0-9a-f]+ <[^>]*> lwr \$4,2047\(\$5\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,2045
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,2047
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,2048
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,32764
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,32765
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,32767
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> li \$1,0x8000
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$5
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> ori \$1,\$1,0x7ffc
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$5
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> ori \$1,\$1,0x7ffd
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$5
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> ori \$1,\$1,0x7fff
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$5
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+# Would be more efficient to apply the offset to the base register.
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> ori \$1,\$1,0x8000
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$5
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> li \$1,0
+[ ]*[0-9a-f]+: R_MICROMIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> li \$1,0
+[ ]*[0-9a-f]+: R_MICROMIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> li \$1,0
+[ ]*[0-9a-f]+: R_MICROMIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> li \$1,-30875
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> li \$1,4661
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,0
+[ ]*[0-9a-f]+: R_MICROMIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,0
+[ ]*[0-9a-f]+: R_MICROMIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,0
+[ ]*[0-9a-f]+: R_MICROMIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,0
+[ ]*[0-9a-f]+: R_MICROMIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,0
+[ ]*[0-9a-f]+: R_MICROMIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,0
+[ ]*[0-9a-f]+: R_MICROMIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,-30875
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,4661
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,-30875
+[ ]*[0-9a-f]+: R_MICROMIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,4661
+[ ]*[0-9a-f]+: R_MICROMIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+#pass
diff --git a/gas/testsuite/gas/mips/mips.exp b/gas/testsuite/gas/mips/mips.exp
index a1254d9..673b1d7 100644
--- a/gas/testsuite/gas/mips/mips.exp
+++ b/gas/testsuite/gas/mips/mips.exp
@@ -1114,4 +1114,16 @@ if { [istarget mips*-*-vxworks*] } {
run_list_test "ase-errors-2" "-mabi=o64 -march=mips3" "ASE errors (2)"
run_list_test "ase-errors-3" "-mabi=32 -march=mips1" "ASE errors (3)"
run_list_test "ase-errors-4" "-mabi=o64 -march=mips3" "ASE errors (4)"
+
+ run_dump_test_arches "la-reloc" [mips_arch_list_matching mips1]
+ if { $has_newabi } {
+ run_dump_test_arches "dla-reloc" [mips_arch_list_matching mips3]
+ }
+
+ # Start with MIPS II to avoid load delay nops.
+ run_dump_test_arches "ld-reloc" [mips_arch_list_matching mips2]
+ run_dump_test_arches "ulw-reloc" [mips_arch_list_matching mips2]
+ run_dump_test_arches "ulh-reloc" [mips_arch_list_matching mips2]
+
+ run_dump_test "l_d-reloc"
}
diff --git a/gas/testsuite/gas/mips/ulh-reloc.d b/gas/testsuite/gas/mips/ulh-reloc.d
new file mode 100644
index 0000000..2a66c5d
--- /dev/null
+++ b/gas/testsuite/gas/mips/ulh-reloc.d
@@ -0,0 +1,160 @@
+#as: -32 -EB
+#objdump: -dr --prefix-addresses -Mgpr-names=numeric
+#name: ULH with relocation operators
+
+.*file format.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> lb \$1,0\(\$4\)
+[0-9a-f]+ <[^>]*> lbu \$4,1\(\$4\)
+[0-9a-f]+ <[^>]*> sll \$1,\$1,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> lb \$1,32766\(\$4\)
+[0-9a-f]+ <[^>]*> lbu \$4,32767\(\$4\)
+[0-9a-f]+ <[^>]*> sll \$1,\$1,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,32767
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> li \$1,0x8000
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$4
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> lb \$1,0\(\$5\)
+[0-9a-f]+ <[^>]*> lbu \$4,1\(\$5\)
+[0-9a-f]+ <[^>]*> sll \$1,\$1,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> lb \$1,32766\(\$5\)
+[0-9a-f]+ <[^>]*> lbu \$4,32767\(\$5\)
+[0-9a-f]+ <[^>]*> sll \$1,\$1,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,32767
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> li \$1,0x8000
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$5
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+# Would be more efficient to apply the offset to the base register.
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> ori \$1,\$1,0x7ffe
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$5
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+# This one must use LUI/ORI
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> ori \$1,\$1,0x7fff
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$5
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+# Would be more efficient to apply the offset to the base register.
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> ori \$1,\$1,0x8000
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$5
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> li \$1,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> li \$1,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> lb \$1,0\(\$0\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> lbu \$4,1\(\$0\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> sll \$1,\$1,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> li \$1,-30875
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> li \$1,4661
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> lb \$1,0\(\$4\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> lbu \$4,1\(\$4\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> sll \$1,\$1,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,0
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> lb \$1,0\(\$5\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> lbu \$4,1\(\$5\)
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> sll \$1,\$1,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,-30875
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,4661
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,-30875
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,4661
+[ ]*[0-9a-f]+: R_(MICRO|)MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lb \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lbu \$1,1\(\$1\)
+[0-9a-f]+ <[^>]*> sll \$4,\$4,0x8
+[0-9a-f]+ <[^>]*> or \$4,\$4,\$1
+#pass
diff --git a/gas/testsuite/gas/mips/ulh-reloc.s b/gas/testsuite/gas/mips/ulh-reloc.s
new file mode 100644
index 0000000..42e8959
--- /dev/null
+++ b/gas/testsuite/gas/mips/ulh-reloc.s
@@ -0,0 +1,33 @@
+ .ent func
+func:
+ ulh $4,($4)
+ ulh $4,0x7ffe($4)
+ ulh $4,0x7fff($4)
+ ulh $4,0x8000($4)
+
+ ulh $4,($5)
+ ulh $4,0x7ffe($5)
+ ulh $4,0x7fff($5)
+ ulh $4,0x8000($5)
+ ulh $4,0x37ffe($5)
+ ulh $4,0x37fff($5)
+ ulh $4,0x38000($5)
+
+ ulh $4,%lo(foo)
+ ulh $4,%hi(foo)
+ ulh $4,%gp_rel(foo)
+ ulh $4,%lo(0x12348765)
+ ulh $4,%hi(0x12348765)
+
+ ulh $4,%lo(foo)($4)
+ ulh $4,%hi(foo)($4)
+ ulh $4,%gp_rel(foo)($4)
+
+ ulh $4,%lo(foo)($5)
+ ulh $4,%hi(foo)($5)
+ ulh $4,%gp_rel(foo)($5)
+ ulh $4,%lo(0x12348765)($5)
+ ulh $4,%hi(0x12348765)($5)
+ ulh $4,%lo(foo+0x12348765)($5)
+ ulh $4,%hi(foo+0x12348765)($5)
+ .end func
diff --git a/gas/testsuite/gas/mips/ulw-reloc.d b/gas/testsuite/gas/mips/ulw-reloc.d
new file mode 100644
index 0000000..920d507
--- /dev/null
+++ b/gas/testsuite/gas/mips/ulw-reloc.d
@@ -0,0 +1,143 @@
+#as: -32 -EB
+#objdump: -dr --prefix-addresses -Mgpr-names=numeric
+#name: ULW with relocation operators
+
+.*file format.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> lwl \$1,0\(\$4\)
+[0-9a-f]+ <[^>]*> lwr \$1,3\(\$4\)
+[0-9a-f]+ <[^>]*> move \$4,\$1
+[0-9a-f]+ <[^>]*> lwl \$1,2044\(\$4\)
+[0-9a-f]+ <[^>]*> lwr \$1,2047\(\$4\)
+[0-9a-f]+ <[^>]*> move \$4,\$1
+[0-9a-f]+ <[^>]*> lwl \$1,2045\(\$4\)
+[0-9a-f]+ <[^>]*> lwr \$1,2048\(\$4\)
+[0-9a-f]+ <[^>]*> move \$4,\$1
+[0-9a-f]+ <[^>]*> lwl \$1,2047\(\$4\)
+[0-9a-f]+ <[^>]*> lwr \$1,2050\(\$4\)
+[0-9a-f]+ <[^>]*> move \$4,\$1
+[0-9a-f]+ <[^>]*> lwl \$1,2048\(\$4\)
+[0-9a-f]+ <[^>]*> lwr \$1,2051\(\$4\)
+[0-9a-f]+ <[^>]*> move \$4,\$1
+[0-9a-f]+ <[^>]*> lwl \$1,32764\(\$4\)
+[0-9a-f]+ <[^>]*> lwr \$1,32767\(\$4\)
+[0-9a-f]+ <[^>]*> move \$4,\$1
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,32765
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,32767
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> li \$1,0x8000
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$4
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$5\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$5\)
+[0-9a-f]+ <[^>]*> lwl \$4,2044\(\$5\)
+[0-9a-f]+ <[^>]*> lwr \$4,2047\(\$5\)
+[0-9a-f]+ <[^>]*> lwl \$4,2045\(\$5\)
+[0-9a-f]+ <[^>]*> lwr \$4,2048\(\$5\)
+[0-9a-f]+ <[^>]*> lwl \$4,2047\(\$5\)
+[0-9a-f]+ <[^>]*> lwr \$4,2050\(\$5\)
+[0-9a-f]+ <[^>]*> lwl \$4,2048\(\$5\)
+[0-9a-f]+ <[^>]*> lwr \$4,2051\(\$5\)
+[0-9a-f]+ <[^>]*> lwl \$4,32764\(\$5\)
+[0-9a-f]+ <[^>]*> lwr \$4,32767\(\$5\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,32765
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,32767
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> li \$1,0x8000
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$5
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+# Would be more efficient to apply the offset to the base register.
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> ori \$1,\$1,0x7ffc
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$5
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+# This one must use LUI/ORI
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> ori \$1,\$1,0x7ffd
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$5
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+# This one must use LUI/ORI
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> ori \$1,\$1,0x7fff
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$5
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+# Would be more efficient to apply the offset to the base register.
+[0-9a-f]+ <[^>]*> lui \$1,0x3
+[0-9a-f]+ <[^>]*> ori \$1,\$1,0x8000
+[0-9a-f]+ <[^>]*> addu \$1,\$1,\$5
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> li \$1,0
+[ ]*[0-9a-f]+: R_MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> li \$1,0
+[ ]*[0-9a-f]+: R_MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$0\)
+[ ]*[0-9a-f]+: R_MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$0\)
+[ ]*[0-9a-f]+: R_MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> li \$1,-30875
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> li \$1,4661
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,0
+[ ]*[0-9a-f]+: R_MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$4,0
+[ ]*[0-9a-f]+: R_MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> lwl \$1,0\(\$4\)
+[ ]*[0-9a-f]+: R_MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> lwr \$1,3\(\$4\)
+[ ]*[0-9a-f]+: R_MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> move \$4,\$1
+#--------------------------------------------------------------------
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,0
+[ ]*[0-9a-f]+: R_MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,0
+[ ]*[0-9a-f]+: R_MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$5\)
+[ ]*[0-9a-f]+: R_MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$5\)
+[ ]*[0-9a-f]+: R_MIPS_GPREL16 foo
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,-30875
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,4661
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,-30875
+[ ]*[0-9a-f]+: R_MIPS_LO16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+[0-9a-f]+ <[^>]*> addiu \$1,\$5,4661
+[ ]*[0-9a-f]+: R_MIPS_HI16 foo
+[0-9a-f]+ <[^>]*> lwl \$4,0\(\$1\)
+[0-9a-f]+ <[^>]*> lwr \$4,3\(\$1\)
+#pass
diff --git a/gas/testsuite/gas/mips/ulw-reloc.s b/gas/testsuite/gas/mips/ulw-reloc.s
new file mode 100644
index 0000000..8d3111c
--- /dev/null
+++ b/gas/testsuite/gas/mips/ulw-reloc.s
@@ -0,0 +1,44 @@
+ .ent func
+func:
+ ulw $4,($4)
+ ulw $4,0x7fc($4)
+ ulw $4,0x7fd($4)
+ ulw $4,0x7ff($4)
+ ulw $4,0x800($4)
+ ulw $4,0x7ffc($4)
+ ulw $4,0x7ffd($4)
+ ulw $4,0x7fff($4)
+ ulw $4,0x8000($4)
+
+ ulw $4,($5)
+ ulw $4,0x7fc($5)
+ ulw $4,0x7fd($5)
+ ulw $4,0x7ff($5)
+ ulw $4,0x800($5)
+ ulw $4,0x7ffc($5)
+ ulw $4,0x7ffd($5)
+ ulw $4,0x7fff($5)
+ ulw $4,0x8000($5)
+ ulw $4,0x37ffc($5)
+ ulw $4,0x37ffd($5)
+ ulw $4,0x37fff($5)
+ ulw $4,0x38000($5)
+
+ ulw $4,%lo(foo)
+ ulw $4,%hi(foo)
+ ulw $4,%gp_rel(foo)
+ ulw $4,%lo(0x12348765)
+ ulw $4,%hi(0x12348765)
+
+ ulw $4,%lo(foo)($4)
+ ulw $4,%hi(foo)($4)
+ ulw $4,%gp_rel(foo)($4)
+
+ ulw $4,%lo(foo)($5)
+ ulw $4,%hi(foo)($5)
+ ulw $4,%gp_rel(foo)($5)
+ ulw $4,%lo(0x12348765)($5)
+ ulw $4,%hi(0x12348765)($5)
+ ulw $4,%lo(foo+0x12348765)($5)
+ ulw $4,%hi(foo+0x12348765)($5)
+ .end func
diff --git a/include/opcode/ChangeLog b/include/opcode/ChangeLog
index 62661e2..4d57384 100644
--- a/include/opcode/ChangeLog
+++ b/include/opcode/ChangeLog
@@ -1,5 +1,24 @@
2013-07-07 Richard Sandiford <rdsandiford@googlemail.com>
+ * mips.h (M_ACLR_OB, M_ASET_OB, M_CACHE_OB, M_CACHEE_OB, M_L_DOB)
+ (M_LB_A, M_LBE_OB, M_LBU_A, M_LBUE_OB, M_LD_A, M_LD_OB, M_LDC2_OB)
+ (M_LDL_OB, M_LDM_OB, M_LDP_OB, M_LDR_OB, M_LH_A, M_LHE_OB, M_LHU_A)
+ (M_LHUE_OB, M_LL_OB, M_LLD_OB, M_LLE_OB, M_LS_A, M_LW_A, M_LWE_OB)
+ (M_LWC0_A, M_LWC1_A, M_LWC2_A, M_LWC2_OB, M_LWC3_A, M_LWL_A, M_LWL_OB)
+ (M_LWLE_OB, M_LWM_OB, M_LWP_OB, M_LWR_A, M_LWR_OB, M_LWRE_OB, M_LWU_OB)
+ (M_PREF_OB, M_PREFE_OB, M_S_DOB, M_SAA_OB, M_SAAD_OB, M_SC_OB)
+ (M_SCD_OB, M_SCE_OB, M_SD_A, M_SD_OB, M_SDC2_OB, M_SDL_OB, M_SDM_OB)
+ (M_SDP_OB, M_SDR_OB, M_SB_A, M_SBE_OB, M_SH_A, M_SHE_OB, M_SW_A)
+ (M_SWE_OB, M_SWC0_A, M_SWC1_A, M_SWC2_A, M_SWC2_OB, M_SWC3_A, M_SWL_A)
+ (M_SWL_OB, M_SWLE_OB, M_SWM_OB, M_SWP_OB, M_SWR_A, M_SWR_OB, M_SWRE_OB)
+ (M_ULD, M_ULH, M_ULHU, M_ULW, M_USH, M_USW, M_USD): Delete.
+ (M_ULD_A, M_ULH_A, M_ULHU_A, M_ULW_A, M_USH_A, M_USW_A, M_USD_A):
+ Rename to...
+ (M_ULD_AB, M_ULH_AB, M_ULHU_AB, M_ULW_AB, M_USH_AB, M_USW_AB)
+ (M_USD_AB): ...these.
+
+2013-07-07 Richard Sandiford <rdsandiford@googlemail.com>
+
* mips.h: Remove documentation of "[" and "]". Update documentation
of "k" and the MDMX formats.
diff --git a/include/opcode/mips.h b/include/opcode/mips.h
index f70a500..89ea3e9 100644
--- a/include/opcode/mips.h
+++ b/include/opcode/mips.h
@@ -947,8 +947,8 @@ opcode_is_member (const struct mips_opcode *insn, int isa, int ase, int cpu)
/* This is a list of macro expanded instructions.
_I appended means immediate
- _A appended means address
- _AB appended means address with base register
+ _A appended means target address of a jump
+ _AB appended means address with (possibly zero) base register
_D appended means 64 bit floating point constant
_S appended means 32 bit floating point constant. */
@@ -956,12 +956,10 @@ enum
{
M_ABS,
M_ACLR_AB,
- M_ACLR_OB,
M_ADD_I,
M_ADDU_I,
M_AND_I,
M_ASET_AB,
- M_ASET_OB,
M_BALIGN,
M_BC1FL,
M_BC1TL,
@@ -1018,9 +1016,7 @@ enum
M_BNE_I,
M_BNEL_I,
M_CACHE_AB,
- M_CACHE_OB,
M_CACHEE_AB,
- M_CACHEE_OB,
M_DABS,
M_DADD_I,
M_DADDU_I,
@@ -1059,41 +1055,25 @@ enum
M_JALS_A,
M_JRADDIUSP,
M_JRC,
- M_L_DOB,
M_L_DAB,
M_LA_AB,
- M_LB_A,
M_LB_AB,
- M_LBE_OB,
M_LBE_AB,
- M_LBU_A,
M_LBU_AB,
- M_LBUE_OB,
M_LBUE_AB,
M_LCA_AB,
- M_LD_A,
- M_LD_OB,
M_LD_AB,
M_LDC1_AB,
M_LDC2_AB,
- M_LDC2_OB,
M_LQC2_AB,
M_LDC3_AB,
M_LDL_AB,
- M_LDL_OB,
M_LDM_AB,
- M_LDM_OB,
M_LDP_AB,
- M_LDP_OB,
M_LDR_AB,
- M_LDR_OB,
- M_LH_A,
M_LH_AB,
- M_LHE_OB,
M_LHE_AB,
- M_LHU_A,
M_LHU_AB,
- M_LHUE_OB,
M_LHUE_AB,
M_LI,
M_LI_D,
@@ -1101,42 +1081,22 @@ enum
M_LI_S,
M_LI_SS,
M_LL_AB,
- M_LL_OB,
M_LLD_AB,
- M_LLD_OB,
M_LLE_AB,
- M_LLE_OB,
M_LQ_AB,
- M_LS_A,
- M_LW_A,
M_LW_AB,
- M_LWE_OB,
M_LWE_AB,
- M_LWC0_A,
M_LWC0_AB,
- M_LWC1_A,
M_LWC1_AB,
- M_LWC2_A,
M_LWC2_AB,
- M_LWC2_OB,
- M_LWC3_A,
M_LWC3_AB,
- M_LWL_A,
M_LWL_AB,
- M_LWL_OB,
M_LWLE_AB,
- M_LWLE_OB,
M_LWM_AB,
- M_LWM_OB,
M_LWP_AB,
- M_LWP_OB,
- M_LWR_A,
M_LWR_AB,
- M_LWR_OB,
M_LWRE_AB,
- M_LWRE_OB,
M_LWU_AB,
- M_LWU_OB,
M_MSGSND,
M_MSGLD,
M_MSGLD_T,
@@ -1153,9 +1113,7 @@ enum
M_NOR_I,
M_OR_I,
M_PREF_AB,
- M_PREF_OB,
M_PREFE_AB,
- M_PREFE_OB,
M_REM_3,
M_REM_3I,
M_REMU_3,
@@ -1169,35 +1127,22 @@ enum
M_DROR_I,
M_ROR_I,
M_S_DA,
- M_S_DOB,
M_S_DAB,
M_S_S,
M_SAA_AB,
- M_SAA_OB,
M_SAAD_AB,
- M_SAAD_OB,
M_SC_AB,
- M_SC_OB,
M_SCD_AB,
- M_SCD_OB,
M_SCE_AB,
- M_SCE_OB,
- M_SD_A,
- M_SD_OB,
M_SD_AB,
M_SDC1_AB,
M_SDC2_AB,
- M_SDC2_OB,
M_SQC2_AB,
M_SDC3_AB,
M_SDL_AB,
- M_SDL_OB,
M_SDM_AB,
- M_SDM_OB,
M_SDP_AB,
- M_SDP_OB,
M_SDR_AB,
- M_SDR_OB,
M_SEQ,
M_SEQ_I,
M_SGE,
@@ -1216,42 +1161,23 @@ enum
M_SLTU_I,
M_SNE,
M_SNE_I,
- M_SB_A,
M_SB_AB,
- M_SBE_OB,
M_SBE_AB,
- M_SH_A,
M_SH_AB,
- M_SHE_OB,
M_SHE_AB,
M_SQ_AB,
- M_SW_A,
M_SW_AB,
- M_SWE_OB,
M_SWE_AB,
- M_SWC0_A,
M_SWC0_AB,
- M_SWC1_A,
M_SWC1_AB,
- M_SWC2_A,
M_SWC2_AB,
- M_SWC2_OB,
- M_SWC3_A,
M_SWC3_AB,
- M_SWL_A,
M_SWL_AB,
- M_SWL_OB,
M_SWLE_AB,
- M_SWLE_OB,
M_SWM_AB,
- M_SWM_OB,
M_SWP_AB,
- M_SWP_OB,
- M_SWR_A,
M_SWR_AB,
- M_SWR_OB,
M_SWRE_AB,
- M_SWRE_OB,
M_SUB_I,
M_SUBU_I,
M_SUBU_I_2,
@@ -1263,20 +1189,13 @@ enum
M_TNE_I,
M_TRUNCWD,
M_TRUNCWS,
- M_ULD,
- M_ULD_A,
- M_ULH,
- M_ULH_A,
- M_ULHU,
- M_ULHU_A,
- M_ULW,
- M_ULW_A,
- M_USH,
- M_USH_A,
- M_USW,
- M_USW_A,
- M_USD,
- M_USD_A,
+ M_ULD_AB,
+ M_ULH_AB,
+ M_ULHU_AB,
+ M_ULW_AB,
+ M_USH_AB,
+ M_USW_AB,
+ M_USD_AB,
M_XOR_I,
M_COP0,
M_COP1,
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index fe6a543..88dd972 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,5 +1,11 @@
2013-07-07 Richard Sandiford <rdsandiford@googlemail.com>
+ * mips-opc.c (mips_builtin_opcodes): Remove o(b) macros. Move LD
+ and SD A(B) macros up.
+ * micromips-opc.c (micromips_opcodes): Likewise.
+
+2013-07-07 Richard Sandiford <rdsandiford@googlemail.com>
+
* mips16-opc.c: Add entries for argumentless "entry" and "exit"
instructions.
diff --git a/opcodes/micromips-opc.c b/opcodes/micromips-opc.c
index 6a72396..de8053c 100644
--- a/opcodes/micromips-opc.c
+++ b/opcodes/micromips-opc.c
@@ -127,7 +127,6 @@ const struct mips_opcode micromips_opcodes[] =
instruction name anyhow. */
/* name, args, match, mask, pinfo, pinfo2, membership, [ase], [exclusions] */
{"pref", "k,~(b)", 0x60002000, 0xfc00f000, RD_b, 0, I1 },
-{"pref", "k,o(b)", 0, (int) M_PREF_OB, INSN_MACRO, 0, I1 },
{"pref", "k,A(b)", 0, (int) M_PREF_AB, INSN_MACRO, 0, I1 },
{"prefx", "h,t(b)", 0x540001a0, 0xfc0007ff, RD_b|RD_t|FP_S, 0, I1 },
{"nop", "", 0x0c00, 0xffff, 0, INSN2_ALIAS, I1 },
@@ -160,7 +159,6 @@ const struct mips_opcode micromips_opcodes[] =
{"abs.s", "T,V", 0x5400037b, 0xfc00ffff, WR_T|RD_S|FP_S, 0, I1 },
{"abs.ps", "T,V", 0x5400437b, 0xfc00ffff, WR_T|RD_S|FP_D, 0, I1 },
{"aclr", "\\,~(b)", 0x2000b000, 0xff00f000, SM|RD_b|NODS, 0, 0, MC },
-{"aclr", "\\,o(b)", 0, (int) M_ACLR_OB, INSN_MACRO, 0, 0, MC },
{"aclr", "\\,A(b)", 0, (int) M_ACLR_AB, INSN_MACRO, 0, 0, MC },
{"add", "d,v,t", 0x00000110, 0xfc0007ff, WR_d|RD_s|RD_t, 0, I1 },
{"add", "t,r,I", 0, (int) M_ADD_I, INSN_MACRO, 0, I1 },
@@ -195,7 +193,6 @@ const struct mips_opcode micromips_opcodes[] =
{"andi", "md,mc,mC", 0x2c00, 0xfc00, 0, WR_md|RD_mc, I1 },
{"andi", "t,r,i", 0xd0000000, 0xfc000000, WR_t|RD_s, 0, I1 },
{"aset", "\\,~(b)", 0x20003000, 0xff00f000, SM|RD_b|NODS, 0, 0, MC },
-{"aset", "\\,o(b)", 0, (int) M_ASET_OB, INSN_MACRO, 0, 0, MC },
{"aset", "\\,A(b)", 0, (int) M_ASET_AB, INSN_MACRO, 0, 0, MC },
/* b is at the top of the table. */
/* bal is at the top of the table. */
@@ -383,7 +380,6 @@ const struct mips_opcode micromips_opcodes[] =
{"c.ngt.ps", "S,T", 0x54000bfc, 0xfc00ffff, RD_S|RD_T|WR_CC|FP_D, 0, I1 },
{"c.ngt.ps", "M,S,T", 0x54000bfc, 0xfc001fff, RD_S|RD_T|WR_CC|FP_D, 0, I1 },
{"cache", "k,~(b)", 0x20006000, 0xfc00f000, RD_b, 0, I1 },
-{"cache", "k,o(b)", 0, (int) M_CACHE_OB, INSN_MACRO, 0, I1 },
{"cache", "k,A(b)", 0, (int) M_CACHE_AB, INSN_MACRO, 0, I1 },
{"ceil.l.d", "T,S", 0x5400533b, 0xfc00ffff, WR_T|RD_S|FP_D, 0, I1 },
{"ceil.l.s", "T,S", 0x5400133b, 0xfc00ffff, WR_T|RD_S|FP_S|FP_D, 0, I1 },
@@ -596,29 +592,23 @@ const struct mips_opcode micromips_opcodes[] =
{"lbu", "t,A(b)", 0, (int) M_LBU_AB, INSN_MACRO, 0, I1 },
{"lca", "t,A(b)", 0, (int) M_LCA_AB, INSN_MACRO, 0, I1 },
/* The macro has to be first to handle o32 correctly. */
-{"ld", "t,o(b)", 0, (int) M_LD_OB, INSN_MACRO, 0, I1 },
-{"ld", "t,o(b)", 0xdc000000, 0xfc000000, RD_b|WR_t, 0, I3 },
{"ld", "t,A(b)", 0, (int) M_LD_AB, INSN_MACRO, 0, I1 },
+{"ld", "t,o(b)", 0xdc000000, 0xfc000000, RD_b|WR_t, 0, I3 },
{"ldc1", "T,o(b)", 0xbc000000, 0xfc000000, RD_b|WR_T|FP_D, 0, I1 },
{"ldc1", "E,o(b)", 0xbc000000, 0xfc000000, RD_b|WR_T|FP_D, 0, I1 },
{"ldc1", "T,A(b)", 0, (int) M_LDC1_AB, INSN_MACRO, INSN2_M_FP_D, I1 },
{"ldc1", "E,A(b)", 0, (int) M_LDC1_AB, INSN_MACRO, INSN2_M_FP_D, I1 },
{"ldc2", "E,~(b)", 0x20002000, 0xfc00f000, RD_b|WR_CC, 0, I1 },
-{"ldc2", "E,o(b)", 0, (int) M_LDC2_OB, INSN_MACRO, 0, I1 },
{"ldc2", "E,A(b)", 0, (int) M_LDC2_AB, INSN_MACRO, 0, I1 },
{"l.d", "T,o(b)", 0xbc000000, 0xfc000000, RD_b|WR_T|FP_D, 0, I1 }, /* ldc1 */
{"l.d", "T,A(b)", 0, (int) M_LDC1_AB, INSN_MACRO, INSN2_M_FP_D, I1 },
{"ldl", "t,~(b)", 0x60004000, 0xfc00f000, WR_t|RD_b, 0, I3 },
-{"ldl", "t,o(b)", 0, (int) M_LDL_OB, INSN_MACRO, 0, I3 },
{"ldl", "t,A(b)", 0, (int) M_LDL_AB, INSN_MACRO, 0, I3 },
{"ldm", "n,~(b)", 0x20007000, 0xfc00f000, RD_b, 0, I3 },
-{"ldm", "n,o(b)", 0, (int) M_LDM_OB, INSN_MACRO, 0, I3 },
{"ldm", "n,A(b)", 0, (int) M_LDM_AB, INSN_MACRO, 0, I3 },
{"ldp", "t,~(b)", 0x20004000, 0xfc00f000, RD_b|WR_t, 0, I3 },
-{"ldp", "t,o(b)", 0, (int) M_LDP_OB, INSN_MACRO, 0, I3 },
{"ldp", "t,A(b)", 0, (int) M_LDP_AB, INSN_MACRO, 0, I3 },
{"ldr", "t,~(b)", 0x60005000, 0xfc00f000, WR_t|RD_b, 0, I3 },
-{"ldr", "t,o(b)", 0, (int) M_LDR_OB, INSN_MACRO, 0, I3 },
{"ldr", "t,A(b)", 0, (int) M_LDR_AB, INSN_MACRO, 0, I3 },
{"ldxc1", "D,t(b)", 0x540000c8, 0xfc0007ff, WR_D|RD_t|RD_b|FP_D, 0, I1 },
{"lh", "t,o(b)", 0x3c000000, 0xfc000000, RD_b|WR_t, 0, I1 },
@@ -632,10 +622,8 @@ const struct mips_opcode micromips_opcodes[] =
{"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,~(b)", 0x60003000, 0xfc00f000, RD_b|WR_t, 0, I1 },
-{"ll", "t,o(b)", 0, (int) M_LL_OB, INSN_MACRO, 0, I1 },
{"ll", "t,A(b)", 0, (int) M_LL_AB, INSN_MACRO, 0, I1 },
{"lld", "t,~(b)", 0x60007000, 0xfc00f000, RD_b|WR_t, 0, I3 },
-{"lld", "t,o(b)", 0, (int) M_LLD_OB, INSN_MACRO, 0, I3 },
{"lld", "t,A(b)", 0, (int) M_LLD_AB, INSN_MACRO, 0, I3 },
{"lui", "s,u", 0x41a00000, 0xffe00000, WR_s, 0, I1 },
{"luxc1", "D,t(b)", 0x54000148, 0xfc0007ff, WR_D|RD_t|RD_b|FP_D, 0, I1 },
@@ -649,32 +637,24 @@ const struct mips_opcode micromips_opcodes[] =
{"lwc1", "T,A(b)", 0, (int) M_LWC1_AB, INSN_MACRO, INSN2_M_FP_S, I1 },
{"lwc1", "E,A(b)", 0, (int) M_LWC1_AB, INSN_MACRO, INSN2_M_FP_S, I1 },
{"lwc2", "E,~(b)", 0x20000000, 0xfc00f000, RD_b|WR_CC, 0, I1 },
-{"lwc2", "E,o(b)", 0, (int) M_LWC2_OB, INSN_MACRO, 0, I1 },
{"lwc2", "E,A(b)", 0, (int) M_LWC2_AB, INSN_MACRO, 0, I1 },
{"l.s", "T,o(b)", 0x9c000000, 0xfc000000, RD_b|WR_T|FP_S, 0, I1 }, /* lwc1 */
{"l.s", "T,A(b)", 0, (int) M_LWC1_AB, INSN_MACRO, INSN2_M_FP_S, I1 },
{"lwl", "t,~(b)", 0x60000000, 0xfc00f000, RD_b|WR_t, 0, I1 },
-{"lwl", "t,o(b)", 0, (int) M_LWL_OB, INSN_MACRO, 0, I1 },
{"lwl", "t,A(b)", 0, (int) M_LWL_AB, INSN_MACRO, 0, I1 },
{"lcache", "t,~(b)", 0x60000000, 0xfc00f000, RD_b|WR_t, 0, I1 }, /* same */
-{"lcache", "t,o(b)", 0, (int) M_LWL_OB, INSN_MACRO, 0, I1 },
{"lcache", "t,A(b)", 0, (int) M_LWL_AB, INSN_MACRO, 0, I1 },
{"lwm", "mN,mJ(ms)", 0x4500, 0xffc0, NODS, RD_sp, I1 },
{"lwm", "n,~(b)", 0x20005000, 0xfc00f000, RD_b|NODS, 0, I1 },
-{"lwm", "n,o(b)", 0, (int) M_LWM_OB, INSN_MACRO, 0, I1 },
{"lwm", "n,A(b)", 0, (int) M_LWM_AB, INSN_MACRO, 0, I1 },
{"lwp", "t,~(b)", 0x20001000, 0xfc00f000, RD_b|WR_t|NODS, 0, I1 },
-{"lwp", "t,o(b)", 0, (int) M_LWP_OB, INSN_MACRO, 0, I1 },
{"lwp", "t,A(b)", 0, (int) M_LWP_AB, INSN_MACRO, 0, I1 },
{"lwr", "t,~(b)", 0x60001000, 0xfc00f000, RD_b|WR_t, 0, I1 },
-{"lwr", "t,o(b)", 0, (int) M_LWR_OB, INSN_MACRO, 0, I1 },
{"lwr", "t,A(b)", 0, (int) M_LWR_AB, INSN_MACRO, 0, I1 },
{"lwu", "t,~(b)", 0x6000e000, 0xfc00f000, RD_b|WR_t, 0, I3 },
-{"lwu", "t,o(b)", 0, (int) M_LWU_OB, INSN_MACRO, 0, I3 },
{"lwu", "t,A(b)", 0, (int) M_LWU_AB, INSN_MACRO, 0, I3 },
{"lwxc1", "D,t(b)", 0x54000048, 0xfc0007ff, WR_D|RD_t|RD_b|FP_S, 0, I1 },
{"flush", "t,~(b)", 0x60001000, 0xfc00f000, RD_b|WR_t, 0, I1 }, /* same */
-{"flush", "t,o(b)", 0, (int) M_LWR_OB, INSN_MACRO, 0, I1 },
{"flush", "t,A(b)", 0, (int) M_LWR_AB, INSN_MACRO, 0, I1 },
{"lwxs", "d,t(b)", 0x00000118, 0xfc0007ff, RD_b|RD_t|WR_d, 0, I1 },
{"madd", "s,t", 0x0000cb3c, 0xfc00ffff, RD_s|RD_t|MOD_HILO, 0, I1 },
@@ -819,15 +799,12 @@ const struct mips_opcode micromips_opcodes[] =
{"sb", "t,o(b)", 0x18000000, 0xfc000000, SM|RD_t|RD_b, 0, I1 },
{"sb", "t,A(b)", 0, (int) M_SB_AB, INSN_MACRO, 0, I1 },
{"sc", "t,~(b)", 0x6000b000, 0xfc00f000, SM|RD_t|WR_t|RD_b, 0, I1 },
-{"sc", "t,o(b)", 0, (int) M_SC_OB, INSN_MACRO, 0, I1 },
{"sc", "t,A(b)", 0, (int) M_SC_AB, INSN_MACRO, 0, I1 },
{"scd", "t,~(b)", 0x6000f000, 0xfc00f000, SM|RD_t|WR_t|RD_b, 0, I3 },
-{"scd", "t,o(b)", 0, (int) M_SCD_OB, INSN_MACRO, 0, I3 },
{"scd", "t,A(b)", 0, (int) M_SCD_AB, INSN_MACRO, 0, I3 },
/* 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)", 0xd8000000, 0xfc000000, SM|RD_t|RD_b, 0, I3 },
{"sd", "t,A(b)", 0, (int) M_SD_AB, INSN_MACRO, 0, I1 },
+{"sd", "t,o(b)", 0xd8000000, 0xfc000000, SM|RD_t|RD_b, 0, I3 },
{"sdbbp", "", 0x46c0, 0xffff, TRAP, 0, I1 },
{"sdbbp", "", 0x0000db7c, 0xffffffff, TRAP, 0, I1 },
{"sdbbp", "mO", 0x46c0, 0xfff0, TRAP, 0, I1 },
@@ -837,21 +814,16 @@ const struct mips_opcode micromips_opcodes[] =
{"sdc1", "T,A(b)", 0, (int) M_SDC1_AB, INSN_MACRO, INSN2_M_FP_D, I1 },
{"sdc1", "E,A(b)", 0, (int) M_SDC1_AB, INSN_MACRO, INSN2_M_FP_D, I1 },
{"sdc2", "E,~(b)", 0x2000a000, 0xfc00f000, SM|RD_C2|RD_b, 0, I1 },
-{"sdc2", "E,o(b)", 0, (int) M_SDC2_OB, INSN_MACRO, 0, I1 },
{"sdc2", "E,A(b)", 0, (int) M_SDC2_AB, INSN_MACRO, 0, I1 },
{"s.d", "T,o(b)", 0xb8000000, 0xfc000000, SM|RD_T|RD_b|FP_D, 0, I1 }, /* sdc1 */
{"s.d", "T,A(b)", 0, (int) M_SDC1_AB, INSN_MACRO, INSN2_M_FP_D, I1 },
{"sdl", "t,~(b)", 0x6000c000, 0xfc00f000, SM|RD_t|RD_b, 0, I3 },
-{"sdl", "t,o(b)", 0, (int) M_SDL_OB, INSN_MACRO, 0, I3 },
{"sdl", "t,A(b)", 0, (int) M_SDL_AB, INSN_MACRO, 0, I3 },
{"sdm", "n,~(b)", 0x2000f000, 0xfc00f000, SM|RD_b, 0, I3 },
-{"sdm", "n,o(b)", 0, (int) M_SDM_OB, INSN_MACRO, 0, I3 },
{"sdm", "n,A(b)", 0, (int) M_SDM_AB, INSN_MACRO, 0, I3 },
{"sdp", "t,~(b)", 0x2000c000, 0xfc00f000, SM|RD_t|RD_b, 0, I3 },
-{"sdp", "t,o(b)", 0, (int) M_SDP_OB, INSN_MACRO, 0, I3 },
{"sdp", "t,A(b)", 0, (int) M_SDP_AB, INSN_MACRO, 0, I3 },
{"sdr", "t,~(b)", 0x6000d000, 0xfc00f000, SM|RD_t|RD_b, 0, I3 },
-{"sdr", "t,o(b)", 0, (int) M_SDR_OB, INSN_MACRO, 0, I3 },
{"sdr", "t,A(b)", 0, (int) M_SDR_AB, INSN_MACRO, 0, I3 },
{"sdxc1", "D,t(b)", 0x54000108, 0xfc0007ff, SM|RD_t|RD_b|FP_D, RD_D, I1 },
{"seb", "t,r", 0x00002b3c, 0xfc00ffff, WR_t|RD_s, 0, I1 },
@@ -913,28 +885,21 @@ const struct mips_opcode micromips_opcodes[] =
{"swc1", "T,A(b)", 0, (int) M_SWC1_AB, INSN_MACRO, INSN2_M_FP_S, I1 },
{"swc1", "E,A(b)", 0, (int) M_SWC1_AB, INSN_MACRO, INSN2_M_FP_S, I1 },
{"swc2", "E,~(b)", 0x20008000, 0xfc00f000, SM|RD_C2|RD_b, 0, I1 },
-{"swc2", "E,o(b)", 0, (int) M_SWC2_OB, INSN_MACRO, 0, I1 },
{"swc2", "E,A(b)", 0, (int) M_SWC2_AB, INSN_MACRO, 0, I1 },
{"s.s", "T,o(b)", 0x98000000, 0xfc000000, SM|RD_T|RD_b|FP_S, 0, I1 }, /* swc1 */
{"s.s", "T,A(b)", 0, (int) M_SWC1_AB, INSN_MACRO, INSN2_M_FP_S, I1 },
{"swl", "t,~(b)", 0x60008000, 0xfc00f000, SM|RD_t|RD_b, 0, I1 },
-{"swl", "t,o(b)", 0, (int) M_SWL_OB, INSN_MACRO, 0, I1 },
{"swl", "t,A(b)", 0, (int) M_SWL_AB, INSN_MACRO, 0, I1 },
{"scache", "t,~(b)", 0x60008000, 0xfc00f000, SM|RD_t|RD_b, 0, I1 }, /* same */
-{"scache", "t,o(b)", 0, (int) M_SWL_OB, INSN_MACRO, 0, I1 },
{"scache", "t,A(b)", 0, (int) M_SWL_AB, INSN_MACRO, 0, I1 },
{"swm", "mN,mJ(ms)", 0x4540, 0xffc0, NODS, RD_sp, I1 },
{"swm", "n,~(b)", 0x2000d000, 0xfc00f000, SM|RD_b|NODS, 0, I1 },
-{"swm", "n,o(b)", 0, (int) M_SWM_OB, INSN_MACRO, 0, I1 },
{"swm", "n,A(b)", 0, (int) M_SWM_AB, INSN_MACRO, 0, I1 },
{"swp", "t,~(b)", 0x20009000, 0xfc00f000, SM|RD_t|RD_b|NODS, 0, I1 },
-{"swp", "t,o(b)", 0, (int) M_SWP_OB, INSN_MACRO, 0, I1 },
{"swp", "t,A(b)", 0, (int) M_SWP_AB, INSN_MACRO, 0, I1 },
{"swr", "t,~(b)", 0x60009000, 0xfc00f000, SM|RD_b|RD_t, 0, I1 },
-{"swr", "t,o(b)", 0, (int) M_SWR_OB, INSN_MACRO, 0, I1 },
{"swr", "t,A(b)", 0, (int) M_SWR_AB, INSN_MACRO, 0, I1 },
{"invalidate", "t,~(b)",0x60009000, 0xfc00f000, SM|RD_b|RD_t, 0, I1 }, /* same */
-{"invalidate", "t,o(b)",0, (int) M_SWR_OB, INSN_MACRO, 0, I1 },
{"invalidate", "t,A(b)",0, (int) M_SWR_AB, INSN_MACRO, 0, I1 },
{"swxc1", "D,t(b)", 0x54000088, 0xfc0007ff, SM|RD_t|RD_b|FP_S, RD_D, I1 },
{"sync_acquire", "", 0x00116b7c, 0xffffffff, NODS, 0, I1 },
@@ -993,20 +958,13 @@ const struct mips_opcode micromips_opcodes[] =
{"trunc.l.s", "T,S", 0x5400233b, 0xfc00ffff, WR_T|RD_S|FP_S|FP_D, 0, I1 },
{"trunc.w.d", "T,S", 0x54006b3b, 0xfc00ffff, WR_T|RD_S|FP_S|FP_D, 0, I1 },
{"trunc.w.s", "T,S", 0x54002b3b, 0xfc00ffff, WR_T|RD_S|FP_S, 0, I1 },
-{"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 },
-{"ulh", "t,A(b)", 0, (int) M_ULH_A, INSN_MACRO, 0, I1 },
-{"ulhu", "t,o(b)", 0, (int) M_ULHU, INSN_MACRO, 0, I1 },
-{"ulhu", "t,A(b)", 0, (int) M_ULHU_A, INSN_MACRO, 0, I1 },
-{"ulw", "t,o(b)", 0, (int) M_ULW, INSN_MACRO, 0, I1 },
-{"ulw", "t,A(b)", 0, (int) M_ULW_A, INSN_MACRO, 0, I1 },
-{"usd", "t,o(b)", 0, (int) M_USD, INSN_MACRO, 0, I1 },
-{"usd", "t,A(b)", 0, (int) M_USD_A, INSN_MACRO, 0, I1 },
-{"ush", "t,o(b)", 0, (int) M_USH, INSN_MACRO, 0, I1 },
-{"ush", "t,A(b)", 0, (int) M_USH_A, INSN_MACRO, 0, I1 },
-{"usw", "t,o(b)", 0, (int) M_USW, INSN_MACRO, 0, I1 },
-{"usw", "t,A(b)", 0, (int) M_USW_A, INSN_MACRO, 0, I1 },
+{"uld", "t,A(b)", 0, (int) M_ULD_AB, INSN_MACRO, 0, I3 },
+{"ulh", "t,A(b)", 0, (int) M_ULH_AB, INSN_MACRO, 0, I1 },
+{"ulhu", "t,A(b)", 0, (int) M_ULHU_AB, INSN_MACRO, 0, I1 },
+{"ulw", "t,A(b)", 0, (int) M_ULW_AB, INSN_MACRO, 0, I1 },
+{"usd", "t,A(b)", 0, (int) M_USD_AB, INSN_MACRO, 0, I1 },
+{"ush", "t,A(b)", 0, (int) M_USH_AB, INSN_MACRO, 0, I1 },
+{"usw", "t,A(b)", 0, (int) M_USW_AB, INSN_MACRO, 0, I1 },
{"wait", "", 0x0000937c, 0xffffffff, NODS, 0, I1 },
{"wait", "B", 0x0000937c, 0xfc00ffff, NODS, 0, I1 },
{"wrpgpr", "t,r", 0x0000f17c, 0xfc00ffff, RD_s, 0, I1 },
@@ -1018,52 +976,36 @@ const struct mips_opcode micromips_opcodes[] =
{"xori", "t,r,i", 0x70000000, 0xfc000000, WR_t|RD_s, 0, I1 },
/* microMIPS Enhanced VA Scheme */
{"lbue", "t,+j(b)", 0x60006000, 0xfc00fe00, RD_b|WR_t, 0, 0, EVA },
-{"lbue", "t,o(b)", 0, (int) M_LBUE_OB, INSN_MACRO, 0, 0, EVA },
{"lbue", "t,A(b)", 0, (int) M_LBUE_AB, INSN_MACRO, 0, 0, EVA },
{"lhue", "t,+j(b)", 0x60006200, 0xfc00fe00, RD_b|WR_t, 0, 0, EVA },
-{"lhue", "t,o(b)", 0, (int) M_LHUE_OB, INSN_MACRO, 0, 0, EVA },
{"lhue", "t,A(b)", 0, (int) M_LHUE_AB, INSN_MACRO, 0, 0, EVA },
{"lbe", "t,+j(b)", 0x60006800, 0xfc00fe00, RD_b|WR_t, 0, 0, EVA },
-{"lbe", "t,o(b)", 0, (int) M_LBE_OB, INSN_MACRO, 0, 0, EVA },
{"lbe", "t,A(b)", 0, (int) M_LBE_AB, INSN_MACRO, 0, 0, EVA },
{"lhe", "t,+j(b)", 0x60006a00, 0xfc00fe00, RD_b|WR_t, 0, 0, EVA },
-{"lhe", "t,o(b)", 0, (int) M_LHE_OB, INSN_MACRO, 0, 0, EVA },
{"lhe", "t,A(b)", 0, (int) M_LHE_AB, INSN_MACRO, 0, 0, EVA },
{"lle", "t,+j(b)", 0x60006c00, 0xfc00fe00, RD_b|WR_t, 0, 0, EVA },
-{"lle", "t,o(b)", 0, (int) M_LLE_OB, INSN_MACRO, 0, 0, EVA },
{"lle", "t,A(b)", 0, (int) M_LLE_AB, INSN_MACRO, 0, 0, EVA },
{"lwe", "t,+j(b)", 0x60006e00, 0xfc00fe00, RD_b|WR_t, 0, 0, EVA },
-{"lwe", "t,o(b)", 0, (int) M_LWE_OB, INSN_MACRO, 0, 0, EVA },
{"lwe", "t,A(b)", 0, (int) M_LWE_AB, INSN_MACRO, 0, 0, EVA },
{"lwle", "t,+j(b)", 0x60006400, 0xfc00fe00, RD_b|WR_t, 0, 0, EVA },
-{"lwle", "t,o(b)", 0, (int) M_LWLE_OB, INSN_MACRO, 0, 0, EVA },
{"lwle", "t,A(b)", 0, (int) M_LWLE_AB, INSN_MACRO, 0, 0, EVA },
{"lwre", "t,+j(b)", 0x60006600, 0xfc00fe00, RD_b|WR_t, 0, 0, EVA },
-{"lwre", "t,o(b)", 0, (int) M_LWRE_OB, INSN_MACRO, 0, 0, EVA },
{"lwre", "t,A(b)", 0, (int) M_LWRE_AB, INSN_MACRO, 0, 0, EVA },
{"sbe", "t,+j(b)", 0x6000a800, 0xfc00fe00, SM|RD_b|WR_t, 0, 0, EVA },
-{"sbe", "t,o(b)", 0, (int) M_SBE_OB, INSN_MACRO, 0, 0, EVA },
{"sbe", "t,A(b)", 0, (int) M_SBE_AB, INSN_MACRO, 0, 0, EVA },
{"sce", "t,+j(b)", 0x6000ac00, 0xfc00fe00, SM|RD_t|WR_t|RD_b, 0, 0, EVA },
-{"sce", "t,o(b)", 0, (int) M_SCE_OB, INSN_MACRO, 0, 0, EVA },
{"sce", "t,A(b)", 0, (int) M_SCE_AB, INSN_MACRO, 0, 0, EVA },
{"she", "t,+j(b)", 0x6000aa00, 0xfc00fe00, SM|RD_b|WR_t, 0, 0, EVA },
-{"she", "t,o(b)", 0, (int) M_SHE_OB, INSN_MACRO, 0, 0, EVA },
{"she", "t,A(b)", 0, (int) M_SHE_AB, INSN_MACRO, 0, 0, EVA },
{"swe", "t,+j(b)", 0x6000ae00, 0xfc00fe00, SM|RD_b|WR_t, 0, 0, EVA },
-{"swe", "t,o(b)", 0, (int) M_SWE_OB, INSN_MACRO, 0, 0, EVA },
{"swe", "t,A(b)", 0, (int) M_SWE_AB, INSN_MACRO, 0, 0, EVA },
{"swle", "t,+j(b)", 0x6000a000, 0xfc00fe00, SM|RD_b|WR_t, 0, 0, EVA },
-{"swle", "t,o(b)", 0, (int) M_SWLE_OB, INSN_MACRO, 0, 0, EVA },
{"swle", "t,A(b)", 0, (int) M_SWLE_AB, INSN_MACRO, 0, 0, EVA },
{"swre", "t,+j(b)", 0x6000a200, 0xfc00fe00, SM|RD_b|WR_t, 0, 0, EVA },
-{"swre", "t,o(b)", 0, (int) M_SWRE_OB, INSN_MACRO, 0, 0, EVA },
{"swre", "t,A(b)", 0, (int) M_SWRE_AB, INSN_MACRO, 0, 0, EVA },
{"cachee", "k,+j(b)", 0x6000a600, 0xfc00fe00, RD_b, 0, 0, EVA },
-{"cachee", "k,o(b)", 0, (int) M_CACHEE_OB,INSN_MACRO, 0, 0, EVA },
{"cachee", "k,A(b)", 0, (int) M_CACHEE_AB,INSN_MACRO, 0, 0, EVA },
{"prefe", "k,+j(b)", 0x6000a400, 0xfc00fe00, RD_b, 0, 0, EVA },
-{"prefe", "k,o(b)", 0, (int) M_PREFE_OB, INSN_MACRO, 0, 0, EVA },
{"prefe", "k,A(b)", 0, (int) M_PREFE_AB, INSN_MACRO, 0, 0, EVA },
/* MIPS DSP ASE. */
{"absq_s.ph", "t,s", 0x0000113c, 0xfc00ffff, WR_t|RD_s, 0, 0, D32 },
diff --git a/opcodes/mips-opc.c b/opcodes/mips-opc.c
index e33b561..9a80de6 100644
--- a/opcodes/mips-opc.c
+++ b/opcodes/mips-opc.c
@@ -300,7 +300,6 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"abs.ps", "D,V", 0x46c00005, 0xffff003f, WR_D|RD_S|FP_D, 0, I5_33|IL2F },
{"abs.ps", "D,V", 0x45600005, 0xffff003f, WR_D|RD_S|FP_D, 0, IL2E },
{"aclr", "\\,~(b)", 0x04070000, 0xfc1f8000, SM|RD_b|NODS, 0, 0, MC },
-{"aclr", "\\,o(b)", 0, (int) M_ACLR_OB, INSN_MACRO, 0, 0, MC },
{"aclr", "\\,A(b)", 0, (int) M_ACLR_AB, INSN_MACRO, 0, 0, MC },
{"add", "d,v,t", 0x00000020, 0xfc0007ff, WR_d|RD_s|RD_t, 0, I1 },
{"add", "t,r,I", 0, (int) M_ADD_I, INSN_MACRO, 0, I1 },
@@ -340,7 +339,6 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"and.qh", "X,Y,Q", 0x7820000c, 0xfc20003f, WR_D|RD_S|RD_T|FP_D, 0, 0, MX },
{"andi", "t,r,i", 0x30000000, 0xfc000000, WR_t|RD_s, 0, I1 },
{"aset", "\\,~(b)", 0x04078000, 0xfc1f8000, SM|RD_b|NODS, 0, 0, MC },
-{"aset", "\\,o(b)", 0, (int) M_ASET_OB, INSN_MACRO, 0, 0, MC },
{"aset", "\\,A(b)", 0, (int) M_ASET_AB, INSN_MACRO, 0, 0, MC },
{"baddu", "d,v,t", 0x70000028, 0xfc0007ff, WR_d|RD_s|RD_t, 0, IOCT },
/* b is at the top of the table. */
@@ -869,9 +867,8 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"lwux", "d,t(b)", 0x7c00040a, 0xfc0007ff, LDD|WR_d|RD_t|RD_b, 0, IOCT2 },
{"lca", "t,A(b)", 0, (int) M_LCA_AB, INSN_MACRO, 0, I1 },
/* The macro has to be first to handle o32 correctly. */
-{"ld", "t,o(b)", 0, (int) M_LD_OB, INSN_MACRO, 0, I1 },
-{"ld", "t,o(b)", 0xdc000000, 0xfc000000, WR_t|RD_b, 0, I3 },
{"ld", "t,A(b)", 0, (int) M_LD_AB, INSN_MACRO, 0, I1 },
+{"ld", "t,o(b)", 0xdc000000, 0xfc000000, WR_t|RD_b, 0, I3 },
{"ldaddw", "t,b", 0x70000010, 0xfc00ffff, SM|RD_t|WR_t|RD_b, 0, XLR },
{"ldaddwu", "t,b", 0x70000011, 0xfc00ffff, SM|RD_t|WR_t|RD_b, 0, XLR },
{"ldaddd", "t,b", 0x70000012, 0xfc00ffff, SM|RD_t|WR_t|RD_b, 0, XLR },
@@ -880,7 +877,6 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"ldc1", "T,A(b)", 0, (int) M_LDC1_AB, INSN_MACRO, INSN2_M_FP_D, I2, 0, SF },
{"ldc1", "E,A(b)", 0, (int) M_LDC1_AB, INSN_MACRO, INSN2_M_FP_D, I2, 0, SF },
{"l.d", "T,o(b)", 0xd4000000, 0xfc000000, CLD|RD_b|WR_T|FP_D, 0, I2, 0, SF }, /* ldc1 */
-{"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, 0, IOCT|IOCTP|IOCT2|EE },
{"ldc2", "E,A(b)", 0, (int) M_LDC2_AB, INSN_MACRO, 0, I2, 0, IOCT|IOCTP|IOCT2|EE },
@@ -1397,10 +1393,8 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"rzu.ob", "X,Q", 0x78000020, 0xfc20f83f, WR_D|RD_T|FP_D, RD_MACC, SB1, MX },
{"rzu.ob", "D,Q", 0x48000020, 0xfc20f83f, WR_D|RD_S|RD_T, 0, N54 },
{"rzu.qh", "X,Q", 0x78200020, 0xfc20f83f, WR_D|RD_T|FP_D, RD_MACC, 0, MX },
-{"saa", "t,o(b)", 0, (int) M_SAA_OB, INSN_MACRO, 0, IOCTP },
{"saa", "t,A(b)", 0, (int) M_SAA_AB, INSN_MACRO, 0, IOCTP },
{"saa", "t,(b)", 0x70000018, 0xfc00ffff, SM|RD_t|RD_b, 0, IOCTP },
-{"saad", "t,o(b)", 0, (int) M_SAAD_OB, INSN_MACRO, 0, IOCTP },
{"saad", "t,A(b)", 0, (int) M_SAAD_AB, INSN_MACRO, 0, IOCTP },
{"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 },
@@ -1410,9 +1404,8 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"scd", "t,o(b)", 0xf0000000, 0xfc000000, SM|RD_t|WR_t|RD_b, 0, I3, 0, EE },
{"scd", "t,A(b)", 0, (int) M_SCD_AB, INSN_MACRO, 0, I3, 0, 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 },
{"sd", "t,A(b)", 0, (int) M_SD_AB, INSN_MACRO, 0, I1 },
+{"sd", "t,o(b)", 0xfc000000, 0xfc000000, SM|RD_t|RD_b, 0, I3 },
{"sdbbp", "", 0x0000000e, 0xffffffff, TRAP, 0, G2 },
{"sdbbp", "c", 0x0000000e, 0xfc00ffff, TRAP, 0, G2 },
{"sdbbp", "c,q", 0x0000000e, 0xfc00003f, TRAP, 0, G2 },
@@ -1427,7 +1420,6 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"sdc3", "E,o(b)", 0xfc000000, 0xfc000000, SM|RD_C3|RD_b, 0, I2, 0, IOCT|IOCTP|IOCT2|EE },
{"sdc3", "E,A(b)", 0, (int) M_SDC3_AB, INSN_MACRO, 0, I2, 0, IOCT|IOCTP|IOCT2|EE },
{"s.d", "T,o(b)", 0xf4000000, 0xfc000000, SM|RD_T|RD_b|FP_D, 0, I2, 0, 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 },
@@ -1636,20 +1628,13 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"trunc.w.s", "D,S", 0x4600000d, 0xffff003f, WR_D|RD_S|FP_S, 0, I2, 0, EE },
{"trunc.w.s", "D,S,x", 0x4600000d, 0xffff003f, WR_D|RD_S|FP_S, 0, I2, 0, EE },
{"trunc.w.s", "D,S,t", 0, (int) M_TRUNCWS, INSN_MACRO, INSN2_M_FP_S, I1, 0, 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 },
-{"ulh", "t,A(b)", 0, (int) M_ULH_A, INSN_MACRO, 0, I1 },
-{"ulhu", "t,o(b)", 0, (int) M_ULHU, INSN_MACRO, 0, I1 },
-{"ulhu", "t,A(b)", 0, (int) M_ULHU_A, INSN_MACRO, 0, I1 },
-{"ulw", "t,o(b)", 0, (int) M_ULW, INSN_MACRO, 0, I1 },
-{"ulw", "t,A(b)", 0, (int) M_ULW_A, INSN_MACRO, 0, I1 },
-{"usd", "t,o(b)", 0, (int) M_USD, INSN_MACRO, 0, I3 },
-{"usd", "t,A(b)", 0, (int) M_USD_A, INSN_MACRO, 0, I3 },
-{"ush", "t,o(b)", 0, (int) M_USH, INSN_MACRO, 0, I1 },
-{"ush", "t,A(b)", 0, (int) M_USH_A, INSN_MACRO, 0, I1 },
-{"usw", "t,o(b)", 0, (int) M_USW, INSN_MACRO, 0, I1 },
-{"usw", "t,A(b)", 0, (int) M_USW_A, INSN_MACRO, 0, I1 },
+{"uld", "t,A(b)", 0, (int) M_ULD_AB, INSN_MACRO, 0, I3 },
+{"ulh", "t,A(b)", 0, (int) M_ULH_AB, INSN_MACRO, 0, I1 },
+{"ulhu", "t,A(b)", 0, (int) M_ULHU_AB, INSN_MACRO, 0, I1 },
+{"ulw", "t,A(b)", 0, (int) M_ULW_AB, INSN_MACRO, 0, I1 },
+{"usd", "t,A(b)", 0, (int) M_USD_AB, INSN_MACRO, 0, I3 },
+{"ush", "t,A(b)", 0, (int) M_USH_AB, INSN_MACRO, 0, I1 },
+{"usw", "t,A(b)", 0, (int) M_USW_AB, INSN_MACRO, 0, I1 },
{"v3mulu", "d,v,t", 0x70000011, 0xfc0007ff, WR_d|RD_s|RD_t, 0, IOCT },
{"vmm0", "d,v,t", 0x70000010, 0xfc0007ff, WR_d|RD_s|RD_t, 0, IOCT },
{"vmulu", "d,v,t", 0x7000000f, 0xfc0007ff, WR_d|RD_s|RD_t, 0, IOCT },
@@ -2258,52 +2243,36 @@ const struct mips_opcode mips_builtin_opcodes[] =
{"sequ", "S,T", 0x4b80000c, 0xffe007ff, RD_S|RD_T|WR_CC|FP_D, 0, IL2F|IL3A },
/* MIPS Enhanced VA Scheme */
{"lbue", "t,+j(b)", 0x7c000028, 0xfc00007f, LDD|RD_b|WR_t, 0, 0, EVA },
-{"lbue", "t,o(b)", 0, (int) M_LBUE_OB, INSN_MACRO, 0, 0, EVA },
{"lbue", "t,A(b)", 0, (int) M_LBUE_AB, INSN_MACRO, 0, 0, EVA },
{"lhue", "t,+j(b)", 0x7c000029, 0xfc00007f, LDD|RD_b|WR_t, 0, 0, EVA },
-{"lhue", "t,o(b)", 0, (int) M_LHUE_OB, INSN_MACRO, 0, 0, EVA },
{"lhue", "t,A(b)", 0, (int) M_LHUE_AB, INSN_MACRO, 0, 0, EVA },
{"lbe", "t,+j(b)", 0x7c00002c, 0xfc00007f, LDD|RD_b|WR_t, 0, 0, EVA },
-{"lbe", "t,o(b)", 0, (int) M_LBE_OB, INSN_MACRO, 0, 0, EVA },
{"lbe", "t,A(b)", 0, (int) M_LBE_AB, INSN_MACRO, 0, 0, EVA },
{"lhe", "t,+j(b)", 0x7c00002d, 0xfc00007f, LDD|RD_b|WR_t, 0, 0, EVA },
-{"lhe", "t,o(b)", 0, (int) M_LHE_OB, INSN_MACRO, 0, 0, EVA },
{"lhe", "t,A(b)", 0, (int) M_LHE_AB, INSN_MACRO, 0, 0, EVA },
{"lle", "t,+j(b)", 0x7c00002e, 0xfc00007f, LDD|RD_b|WR_t, 0, 0, EVA },
-{"lle", "t,o(b)", 0, (int) M_LLE_OB, INSN_MACRO, 0, 0, EVA },
{"lle", "t,A(b)", 0, (int) M_LLE_AB, INSN_MACRO, 0, 0, EVA },
{"lwe", "t,+j(b)", 0x7c00002f, 0xfc00007f, LDD|RD_b|WR_t, 0, 0, EVA },
-{"lwe", "t,o(b)", 0, (int) M_LWE_OB, INSN_MACRO, 0, 0, EVA },
{"lwe", "t,A(b)", 0, (int) M_LWE_AB, INSN_MACRO, 0, 0, EVA },
{"lwle", "t,+j(b)", 0x7c000019, 0xfc00007f, LDD|RD_b|WR_t, 0, 0, EVA },
-{"lwle", "t,o(b)", 0, (int) M_LWLE_OB, INSN_MACRO, 0, 0, EVA },
{"lwle", "t,A(b)", 0, (int) M_LWLE_AB, INSN_MACRO, 0, 0, EVA },
{"lwre", "t,+j(b)", 0x7c00001a, 0xfc00007f, LDD|RD_b|WR_t, 0, 0, EVA },
-{"lwre", "t,o(b)", 0, (int) M_LWRE_OB, INSN_MACRO, 0, 0, EVA },
{"lwre", "t,A(b)", 0, (int) M_LWRE_AB, INSN_MACRO, 0, 0, EVA },
{"sbe", "t,+j(b)", 0x7c00001c, 0xfc00007f, SM|RD_t|RD_b, 0, 0, EVA },
-{"sbe", "t,o(b)", 0, (int) M_SBE_OB, INSN_MACRO, 0, 0, EVA },
{"sbe", "t,A(b)", 0, (int) M_SBE_AB, INSN_MACRO, 0, 0, EVA },
{"sce", "t,+j(b)", 0x7c00001e, 0xfc00007f, SM|RD_t|WR_t|RD_b, 0, 0, EVA },
-{"sce", "t,o(b)", 0, (int) M_SCE_OB, INSN_MACRO, 0, 0, EVA },
{"sce", "t,A(b)", 0, (int) M_SCE_AB, INSN_MACRO, 0, 0, EVA },
{"she", "t,+j(b)", 0x7c00001d, 0xfc00007f, SM|RD_t|RD_b, 0, 0, EVA },
-{"she", "t,o(b)", 0, (int) M_SHE_OB, INSN_MACRO, 0, 0, EVA },
{"she", "t,A(b)", 0, (int) M_SHE_AB, INSN_MACRO, 0, 0, EVA },
{"swe", "t,+j(b)", 0x7c00001f, 0xfc00007f, SM|RD_t|RD_b, 0, 0, EVA },
-{"swe", "t,o(b)", 0, (int) M_SWE_OB, INSN_MACRO, 0, 0, EVA },
{"swe", "t,A(b)", 0, (int) M_SWE_AB, INSN_MACRO, 0, 0, EVA },
{"swle", "t,+j(b)", 0x7c000021, 0xfc00007f, SM|RD_t|RD_b, 0, 0, EVA },
-{"swle", "t,o(b)", 0, (int) M_SWLE_OB, INSN_MACRO, 0, 0, EVA },
{"swle", "t,A(b)", 0, (int) M_SWLE_AB, INSN_MACRO, 0, 0, EVA },
{"swre", "t,+j(b)", 0x7c000022, 0xfc00007f, SM|RD_t|RD_b, 0, 0, EVA },
-{"swre", "t,o(b)", 0, (int) M_SWRE_OB, INSN_MACRO, 0, 0, EVA },
{"swre", "t,A(b)", 0, (int) M_SWRE_AB, INSN_MACRO, 0, 0, EVA },
{"cachee", "k,+j(b)", 0x7c00001b, 0xfc00007f, RD_b, 0, 0, EVA },
-{"cachee", "k,o(b)", 0, (int) M_CACHEE_OB,INSN_MACRO, 0, 0, EVA },
{"cachee", "k,A(b)", 0, (int) M_CACHEE_AB,INSN_MACRO, 0, 0, EVA },
{"prefe", "k,+j(b)", 0x7c000023, 0xfc00007f, RD_b, 0, 0, EVA },
-{"prefe", "k,o(b)", 0, (int) M_PREFE_OB, INSN_MACRO, 0, 0, EVA },
{"prefe", "k,A(b)", 0, (int) M_PREFE_AB, INSN_MACRO, 0, 0, EVA },
/* No hazard protection on coprocessor instructions--they shouldn't
change the state of the processor and if they do it's up to the