From 62c094c45ddf0d9fcb0b3c009a0ac0b6ba70b3f3 Mon Sep 17 00:00:00 2001 From: "Maciej W. Rozycki" Date: Thu, 9 Dec 2010 23:33:23 +0000 Subject: [PATCH] gas/ * config/tc-mips.c (macro) : Don't load a zero into an auxiliary register when using a signed 16-bit constant offset. gas/testsuite/ * gas/mips/ldstla-32.d: Update according to a 16-bit constant offset optimization. * gas/mips/ldstla-32-mips3.d: Likewise. * gas/mips/ldstla-32-shared.d: Likewise. * gas/mips/ldstla-32-mips3-shared.d: Likewise. --- gas/ChangeLog | 5 +++ gas/config/tc-mips.c | 19 +++++---- gas/testsuite/ChangeLog | 8 ++++ gas/testsuite/gas/mips/ldstla-32-mips3-shared.d | 56 +++++++------------------ gas/testsuite/gas/mips/ldstla-32-mips3.d | 56 +++++++------------------ gas/testsuite/gas/mips/ldstla-32-shared.d | 28 ++++--------- gas/testsuite/gas/mips/ldstla-32.d | 28 ++++--------- 7 files changed, 73 insertions(+), 127 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index d6d973e8e..f87b622c6 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,5 +1,10 @@ 2010-12-09 Maciej W. Rozycki + * config/tc-mips.c (macro) : Don't load a zero into an + auxiliary register when using a signed 16-bit constant offset. + +2010-12-09 Maciej W. Rozycki + * config/tc-mips.c (mips_ip): Remove lastregno's preinitialization. diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index b66458508..eb1ba2e7e 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -6565,14 +6565,19 @@ macro (struct mips_cl_insn *ip) is in non PIC code. */ if (offset_expr.X_op == O_constant) { - expr1.X_add_number = ((offset_expr.X_add_number + 0x8000) - & ~(bfd_vma) 0xffff); + expr1.X_add_number = offset_expr.X_add_number; normalize_address_expr (&expr1); - load_register (tempreg, &expr1, HAVE_64BIT_ADDRESSES); - if (breg != 0) - macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t", - tempreg, tempreg, breg); - macro_build (&offset_expr, s, fmt, treg, BFD_RELOC_LO16, tempreg); + if (!IS_SEXT_16BIT_NUM (expr1.X_add_number)) + { + expr1.X_add_number = ((expr1.X_add_number + 0x8000) + & ~(bfd_vma) 0xffff); + load_register (tempreg, &expr1, HAVE_64BIT_ADDRESSES); + if (breg != 0) + macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t", + tempreg, tempreg, breg); + breg = tempreg; + } + macro_build (&offset_expr, s, fmt, treg, BFD_RELOC_LO16, breg); } else if (mips_pic == NO_PIC) { diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index bf89eb977..9371627f7 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,5 +1,13 @@ 2010-12-09 Maciej W. Rozycki + * gas/mips/ldstla-32.d: Update according to a 16-bit constant + offset optimization. + * gas/mips/ldstla-32-mips3.d: Likewise. + * gas/mips/ldstla-32-shared.d: Likewise. + * gas/mips/ldstla-32-mips3-shared.d: Likewise. + +2010-12-09 Maciej W. Rozycki + * gas/mips/at-2.l: Adjust according to message capitalization fixes. * gas/mips/illegal.l: Likewise. diff --git a/gas/testsuite/gas/mips/ldstla-32-mips3-shared.d b/gas/testsuite/gas/mips/ldstla-32-mips3-shared.d index 69a468af4..305781fa7 100644 --- a/gas/testsuite/gas/mips/ldstla-32-mips3-shared.d +++ b/gas/testsuite/gas/mips/ldstla-32-mips3-shared.d @@ -21,12 +21,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 3c020123 lui v0,0x123 [ 0-9a-f]+: 00441021 addu v0,v0,a0 [ 0-9a-f]+: dc424567 ld v0,17767\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 00441021 addu v0,v0,a0 -[ 0-9a-f]+: dc420000 ld v0,0\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 00441021 addu v0,v0,a0 -[ 0-9a-f]+: dc42ffff ld v0,-1\(v0\) +[ 0-9a-f]+: dc820000 ld v0,0\(a0\) +[ 0-9a-f]+: dc82ffff ld v0,-1\(a0\) [ 0-9a-f]+: 3c02abce lui v0,0xabce [ 0-9a-f]+: 00441021 addu v0,v0,a0 [ 0-9a-f]+: dc42ef01 ld v0,-4351\(v0\) @@ -49,10 +45,8 @@ Disassembly of section \.text: [ 0-9a-f]+: dc42ffff ld v0,-1\(v0\) [ 0-9a-f]+: 3c020123 lui v0,0x123 [ 0-9a-f]+: dc424567 ld v0,17767\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: dc420000 ld v0,0\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: dc42ffff ld v0,-1\(v0\) +[ 0-9a-f]+: dc020000 ld v0,0\(zero\) +[ 0-9a-f]+: dc02ffff ld v0,-1\(zero\) [ 0-9a-f]+: 3c02abce lui v0,0xabce [ 0-9a-f]+: dc42ef01 ld v0,-4351\(v0\) [ 0-9a-f]+: 3c028000 lui v0,0x8000 @@ -75,12 +69,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 3c010123 lui at,0x123 [ 0-9a-f]+: 00240821 addu at,at,a0 [ 0-9a-f]+: fc224567 sd v0,17767\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: 00240821 addu at,at,a0 -[ 0-9a-f]+: fc220000 sd v0,0\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: 00240821 addu at,at,a0 -[ 0-9a-f]+: fc22ffff sd v0,-1\(at\) +[ 0-9a-f]+: fc820000 sd v0,0\(a0\) +[ 0-9a-f]+: fc82ffff sd v0,-1\(a0\) [ 0-9a-f]+: 3c01abce lui at,0xabce [ 0-9a-f]+: 00240821 addu at,at,a0 [ 0-9a-f]+: fc22ef01 sd v0,-4351\(at\) @@ -103,10 +93,8 @@ Disassembly of section \.text: [ 0-9a-f]+: fc22ffff sd v0,-1\(at\) [ 0-9a-f]+: 3c010123 lui at,0x123 [ 0-9a-f]+: fc224567 sd v0,17767\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: fc220000 sd v0,0\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: fc22ffff sd v0,-1\(at\) +[ 0-9a-f]+: fc020000 sd v0,0\(zero\) +[ 0-9a-f]+: fc02ffff sd v0,-1\(zero\) [ 0-9a-f]+: 3c01abce lui at,0xabce [ 0-9a-f]+: fc22ef01 sd v0,-4351\(at\) [ 0-9a-f]+: 3c018000 lui at,0x8000 @@ -129,12 +117,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 3c020123 lui v0,0x123 [ 0-9a-f]+: 00441021 addu v0,v0,a0 [ 0-9a-f]+: 8c424567 lw v0,17767\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 00441021 addu v0,v0,a0 -[ 0-9a-f]+: 8c420000 lw v0,0\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 00441021 addu v0,v0,a0 -[ 0-9a-f]+: 8c42ffff lw v0,-1\(v0\) +[ 0-9a-f]+: 8c820000 lw v0,0\(a0\) +[ 0-9a-f]+: 8c82ffff lw v0,-1\(a0\) [ 0-9a-f]+: 3c02abce lui v0,0xabce [ 0-9a-f]+: 00441021 addu v0,v0,a0 [ 0-9a-f]+: 8c42ef01 lw v0,-4351\(v0\) @@ -157,10 +141,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 8c42ffff lw v0,-1\(v0\) [ 0-9a-f]+: 3c020123 lui v0,0x123 [ 0-9a-f]+: 8c424567 lw v0,17767\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 8c420000 lw v0,0\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 8c42ffff lw v0,-1\(v0\) +[ 0-9a-f]+: 8c020000 lw v0,0\(zero\) +[ 0-9a-f]+: 8c02ffff lw v0,-1\(zero\) [ 0-9a-f]+: 3c02abce lui v0,0xabce [ 0-9a-f]+: 8c42ef01 lw v0,-4351\(v0\) [ 0-9a-f]+: 3c028000 lui v0,0x8000 @@ -183,12 +165,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 3c010123 lui at,0x123 [ 0-9a-f]+: 00240821 addu at,at,a0 [ 0-9a-f]+: ac224567 sw v0,17767\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: 00240821 addu at,at,a0 -[ 0-9a-f]+: ac220000 sw v0,0\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: 00240821 addu at,at,a0 -[ 0-9a-f]+: ac22ffff sw v0,-1\(at\) +[ 0-9a-f]+: ac820000 sw v0,0\(a0\) +[ 0-9a-f]+: ac82ffff sw v0,-1\(a0\) [ 0-9a-f]+: 3c01abce lui at,0xabce [ 0-9a-f]+: 00240821 addu at,at,a0 [ 0-9a-f]+: ac22ef01 sw v0,-4351\(at\) @@ -211,10 +189,8 @@ Disassembly of section \.text: [ 0-9a-f]+: ac22ffff sw v0,-1\(at\) [ 0-9a-f]+: 3c010123 lui at,0x123 [ 0-9a-f]+: ac224567 sw v0,17767\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: ac220000 sw v0,0\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: ac22ffff sw v0,-1\(at\) +[ 0-9a-f]+: ac020000 sw v0,0\(zero\) +[ 0-9a-f]+: ac02ffff sw v0,-1\(zero\) [ 0-9a-f]+: 3c01abce lui at,0xabce [ 0-9a-f]+: ac22ef01 sw v0,-4351\(at\) [ 0-9a-f]+: 3c018000 lui at,0x8000 diff --git a/gas/testsuite/gas/mips/ldstla-32-mips3.d b/gas/testsuite/gas/mips/ldstla-32-mips3.d index b2dc9d1e5..2d9b00baa 100644 --- a/gas/testsuite/gas/mips/ldstla-32-mips3.d +++ b/gas/testsuite/gas/mips/ldstla-32-mips3.d @@ -21,12 +21,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 3c020123 lui v0,0x123 [ 0-9a-f]+: 00441021 addu v0,v0,a0 [ 0-9a-f]+: dc424567 ld v0,17767\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 00441021 addu v0,v0,a0 -[ 0-9a-f]+: dc420000 ld v0,0\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 00441021 addu v0,v0,a0 -[ 0-9a-f]+: dc42ffff ld v0,-1\(v0\) +[ 0-9a-f]+: dc820000 ld v0,0\(a0\) +[ 0-9a-f]+: dc82ffff ld v0,-1\(a0\) [ 0-9a-f]+: 3c02abce lui v0,0xabce [ 0-9a-f]+: 00441021 addu v0,v0,a0 [ 0-9a-f]+: dc42ef01 ld v0,-4351\(v0\) @@ -49,10 +45,8 @@ Disassembly of section \.text: [ 0-9a-f]+: dc42ffff ld v0,-1\(v0\) [ 0-9a-f]+: 3c020123 lui v0,0x123 [ 0-9a-f]+: dc424567 ld v0,17767\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: dc420000 ld v0,0\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: dc42ffff ld v0,-1\(v0\) +[ 0-9a-f]+: dc020000 ld v0,0\(zero\) +[ 0-9a-f]+: dc02ffff ld v0,-1\(zero\) [ 0-9a-f]+: 3c02abce lui v0,0xabce [ 0-9a-f]+: dc42ef01 ld v0,-4351\(v0\) [ 0-9a-f]+: 3c028000 lui v0,0x8000 @@ -75,12 +69,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 3c010123 lui at,0x123 [ 0-9a-f]+: 00240821 addu at,at,a0 [ 0-9a-f]+: fc224567 sd v0,17767\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: 00240821 addu at,at,a0 -[ 0-9a-f]+: fc220000 sd v0,0\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: 00240821 addu at,at,a0 -[ 0-9a-f]+: fc22ffff sd v0,-1\(at\) +[ 0-9a-f]+: fc820000 sd v0,0\(a0\) +[ 0-9a-f]+: fc82ffff sd v0,-1\(a0\) [ 0-9a-f]+: 3c01abce lui at,0xabce [ 0-9a-f]+: 00240821 addu at,at,a0 [ 0-9a-f]+: fc22ef01 sd v0,-4351\(at\) @@ -103,10 +93,8 @@ Disassembly of section \.text: [ 0-9a-f]+: fc22ffff sd v0,-1\(at\) [ 0-9a-f]+: 3c010123 lui at,0x123 [ 0-9a-f]+: fc224567 sd v0,17767\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: fc220000 sd v0,0\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: fc22ffff sd v0,-1\(at\) +[ 0-9a-f]+: fc020000 sd v0,0\(zero\) +[ 0-9a-f]+: fc02ffff sd v0,-1\(zero\) [ 0-9a-f]+: 3c01abce lui at,0xabce [ 0-9a-f]+: fc22ef01 sd v0,-4351\(at\) [ 0-9a-f]+: 3c018000 lui at,0x8000 @@ -129,12 +117,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 3c020123 lui v0,0x123 [ 0-9a-f]+: 00441021 addu v0,v0,a0 [ 0-9a-f]+: 8c424567 lw v0,17767\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 00441021 addu v0,v0,a0 -[ 0-9a-f]+: 8c420000 lw v0,0\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 00441021 addu v0,v0,a0 -[ 0-9a-f]+: 8c42ffff lw v0,-1\(v0\) +[ 0-9a-f]+: 8c820000 lw v0,0\(a0\) +[ 0-9a-f]+: 8c82ffff lw v0,-1\(a0\) [ 0-9a-f]+: 3c02abce lui v0,0xabce [ 0-9a-f]+: 00441021 addu v0,v0,a0 [ 0-9a-f]+: 8c42ef01 lw v0,-4351\(v0\) @@ -157,10 +141,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 8c42ffff lw v0,-1\(v0\) [ 0-9a-f]+: 3c020123 lui v0,0x123 [ 0-9a-f]+: 8c424567 lw v0,17767\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 8c420000 lw v0,0\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 8c42ffff lw v0,-1\(v0\) +[ 0-9a-f]+: 8c020000 lw v0,0\(zero\) +[ 0-9a-f]+: 8c02ffff lw v0,-1\(zero\) [ 0-9a-f]+: 3c02abce lui v0,0xabce [ 0-9a-f]+: 8c42ef01 lw v0,-4351\(v0\) [ 0-9a-f]+: 3c028000 lui v0,0x8000 @@ -183,12 +165,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 3c010123 lui at,0x123 [ 0-9a-f]+: 00240821 addu at,at,a0 [ 0-9a-f]+: ac224567 sw v0,17767\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: 00240821 addu at,at,a0 -[ 0-9a-f]+: ac220000 sw v0,0\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: 00240821 addu at,at,a0 -[ 0-9a-f]+: ac22ffff sw v0,-1\(at\) +[ 0-9a-f]+: ac820000 sw v0,0\(a0\) +[ 0-9a-f]+: ac82ffff sw v0,-1\(a0\) [ 0-9a-f]+: 3c01abce lui at,0xabce [ 0-9a-f]+: 00240821 addu at,at,a0 [ 0-9a-f]+: ac22ef01 sw v0,-4351\(at\) @@ -211,10 +189,8 @@ Disassembly of section \.text: [ 0-9a-f]+: ac22ffff sw v0,-1\(at\) [ 0-9a-f]+: 3c010123 lui at,0x123 [ 0-9a-f]+: ac224567 sw v0,17767\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: ac220000 sw v0,0\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: ac22ffff sw v0,-1\(at\) +[ 0-9a-f]+: ac020000 sw v0,0\(zero\) +[ 0-9a-f]+: ac02ffff sw v0,-1\(zero\) [ 0-9a-f]+: 3c01abce lui at,0xabce [ 0-9a-f]+: ac22ef01 sw v0,-4351\(at\) [ 0-9a-f]+: 3c018000 lui at,0x8000 diff --git a/gas/testsuite/gas/mips/ldstla-32-shared.d b/gas/testsuite/gas/mips/ldstla-32-shared.d index 9adadd336..d4787f952 100644 --- a/gas/testsuite/gas/mips/ldstla-32-shared.d +++ b/gas/testsuite/gas/mips/ldstla-32-shared.d @@ -177,12 +177,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 3c020123 lui v0,0x123 [ 0-9a-f]+: 00441021 addu v0,v0,a0 [ 0-9a-f]+: 8c424567 lw v0,17767\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 00441021 addu v0,v0,a0 -[ 0-9a-f]+: 8c420000 lw v0,0\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 00441021 addu v0,v0,a0 -[ 0-9a-f]+: 8c42ffff lw v0,-1\(v0\) +[ 0-9a-f]+: 8c820000 lw v0,0\(a0\) +[ 0-9a-f]+: 8c82ffff lw v0,-1\(a0\) [ 0-9a-f]+: 3c02abce lui v0,0xabce [ 0-9a-f]+: 00441021 addu v0,v0,a0 [ 0-9a-f]+: 8c42ef01 lw v0,-4351\(v0\) @@ -205,10 +201,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 8c42ffff lw v0,-1\(v0\) [ 0-9a-f]+: 3c020123 lui v0,0x123 [ 0-9a-f]+: 8c424567 lw v0,17767\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 8c420000 lw v0,0\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 8c42ffff lw v0,-1\(v0\) +[ 0-9a-f]+: 8c020000 lw v0,0\(zero\) +[ 0-9a-f]+: 8c02ffff lw v0,-1\(zero\) [ 0-9a-f]+: 3c02abce lui v0,0xabce [ 0-9a-f]+: 8c42ef01 lw v0,-4351\(v0\) [ 0-9a-f]+: 3c028000 lui v0,0x8000 @@ -232,12 +226,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 3c010123 lui at,0x123 [ 0-9a-f]+: 00240821 addu at,at,a0 [ 0-9a-f]+: ac224567 sw v0,17767\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: 00240821 addu at,at,a0 -[ 0-9a-f]+: ac220000 sw v0,0\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: 00240821 addu at,at,a0 -[ 0-9a-f]+: ac22ffff sw v0,-1\(at\) +[ 0-9a-f]+: ac820000 sw v0,0\(a0\) +[ 0-9a-f]+: ac82ffff sw v0,-1\(a0\) [ 0-9a-f]+: 3c01abce lui at,0xabce [ 0-9a-f]+: 00240821 addu at,at,a0 [ 0-9a-f]+: ac22ef01 sw v0,-4351\(at\) @@ -260,10 +250,8 @@ Disassembly of section \.text: [ 0-9a-f]+: ac22ffff sw v0,-1\(at\) [ 0-9a-f]+: 3c010123 lui at,0x123 [ 0-9a-f]+: ac224567 sw v0,17767\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: ac220000 sw v0,0\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: ac22ffff sw v0,-1\(at\) +[ 0-9a-f]+: ac020000 sw v0,0\(zero\) +[ 0-9a-f]+: ac02ffff sw v0,-1\(zero\) [ 0-9a-f]+: 3c01abce lui at,0xabce [ 0-9a-f]+: ac22ef01 sw v0,-4351\(at\) [ 0-9a-f]+: 3c018000 lui at,0x8000 diff --git a/gas/testsuite/gas/mips/ldstla-32.d b/gas/testsuite/gas/mips/ldstla-32.d index 9ce14188c..985246cc0 100644 --- a/gas/testsuite/gas/mips/ldstla-32.d +++ b/gas/testsuite/gas/mips/ldstla-32.d @@ -177,12 +177,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 3c020123 lui v0,0x123 [ 0-9a-f]+: 00441021 addu v0,v0,a0 [ 0-9a-f]+: 8c424567 lw v0,17767\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 00441021 addu v0,v0,a0 -[ 0-9a-f]+: 8c420000 lw v0,0\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 00441021 addu v0,v0,a0 -[ 0-9a-f]+: 8c42ffff lw v0,-1\(v0\) +[ 0-9a-f]+: 8c820000 lw v0,0\(a0\) +[ 0-9a-f]+: 8c82ffff lw v0,-1\(a0\) [ 0-9a-f]+: 3c02abce lui v0,0xabce [ 0-9a-f]+: 00441021 addu v0,v0,a0 [ 0-9a-f]+: 8c42ef01 lw v0,-4351\(v0\) @@ -205,10 +201,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 8c42ffff lw v0,-1\(v0\) [ 0-9a-f]+: 3c020123 lui v0,0x123 [ 0-9a-f]+: 8c424567 lw v0,17767\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 8c420000 lw v0,0\(v0\) -[ 0-9a-f]+: 24020000 li v0,0 -[ 0-9a-f]+: 8c42ffff lw v0,-1\(v0\) +[ 0-9a-f]+: 8c020000 lw v0,0\(zero\) +[ 0-9a-f]+: 8c02ffff lw v0,-1\(zero\) [ 0-9a-f]+: 3c02abce lui v0,0xabce [ 0-9a-f]+: 8c42ef01 lw v0,-4351\(v0\) [ 0-9a-f]+: 3c028000 lui v0,0x8000 @@ -232,12 +226,8 @@ Disassembly of section \.text: [ 0-9a-f]+: 3c010123 lui at,0x123 [ 0-9a-f]+: 00240821 addu at,at,a0 [ 0-9a-f]+: ac224567 sw v0,17767\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: 00240821 addu at,at,a0 -[ 0-9a-f]+: ac220000 sw v0,0\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: 00240821 addu at,at,a0 -[ 0-9a-f]+: ac22ffff sw v0,-1\(at\) +[ 0-9a-f]+: ac820000 sw v0,0\(a0\) +[ 0-9a-f]+: ac82ffff sw v0,-1\(a0\) [ 0-9a-f]+: 3c01abce lui at,0xabce [ 0-9a-f]+: 00240821 addu at,at,a0 [ 0-9a-f]+: ac22ef01 sw v0,-4351\(at\) @@ -260,10 +250,8 @@ Disassembly of section \.text: [ 0-9a-f]+: ac22ffff sw v0,-1\(at\) [ 0-9a-f]+: 3c010123 lui at,0x123 [ 0-9a-f]+: ac224567 sw v0,17767\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: ac220000 sw v0,0\(at\) -[ 0-9a-f]+: 24010000 li at,0 -[ 0-9a-f]+: ac22ffff sw v0,-1\(at\) +[ 0-9a-f]+: ac020000 sw v0,0\(zero\) +[ 0-9a-f]+: ac02ffff sw v0,-1\(zero\) [ 0-9a-f]+: 3c01abce lui at,0xabce [ 0-9a-f]+: ac22ef01 sw v0,-4351\(at\) [ 0-9a-f]+: 3c018000 lui at,0x8000 -- 2.11.4.GIT