This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[PATCH] MIPS gas: Fix restore argument register handling
- From: Thiemo Seufer <ths at networkno dot de>
- To: binutils at sourceware dot org
- Date: Sun, 13 Aug 2006 00:02:05 +0100
- Subject: [PATCH] MIPS gas: Fix restore argument register handling
Hello All,
I committed the appended patch, it fixes the handling of mips16e
argument register restores (as well as the broken testcase for it).
Thiemo
2006-08-12 Thiemo Seufer <ths@networkno.de>
[ gas/ChangeLog ]
* config/tc-mips.c (mips16_ip): Fix argument register handling
for restore instruction.
[ gas/testsuite/ChangeLog ]
* gas/mips/mips16-save.d: Fix testcase.
Index: gas/config/tc-mips.c
===================================================================
RCS file: /cvs/src/src/gas/config/tc-mips.c,v
retrieving revision 1.354
diff -u -p -r1.354 tc-mips.c
--- gas/config/tc-mips.c 1 Aug 2006 07:58:22 -0000 1.354
+++ gas/config/tc-mips.c 12 Aug 2006 22:55:54 -0000
@@ -10201,7 +10201,7 @@ mips16_ip (char *str, struct mips_cl_ins
{
if (reg1 >= 4 && reg1 <= 7)
{
- if (c == 'm' && !seen_framesz)
+ if (!seen_framesz)
/* args $a0-$a3 */
args |= 1 << (reg1 - 4);
else
Index: gas/testsuite/gas/mips/mips16e-save.d
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/mips16e-save.d,v
retrieving revision 1.2
diff -u -p -r1.2 mips16e-save.d
--- gas/testsuite/gas/mips/mips16e-save.d 14 Jun 2006 08:29:42 -0000 1.2
+++ gas/testsuite/gas/mips/mips16e-save.d 12 Aug 2006 22:55:55 -0000
@@ -39,5 +39,5 @@ Disassembly of section .text:
60:[ ]+6470[ ]+restore[ ]+128,ra,s0-s1
62:[ ]+f010 6441[ ]+restore[ ]+136,ra
66:[ ]+f100 6408[ ]+restore[ ]+64,s2
- 6a:[ ]+f71b 6470[ ]+restore[ ]+128,ra,s0-s8,a0-a3
+ 6a:[ ]+f71a 6470[ ]+restore[ ]+a0-a1,128,ra,s0-s8,a2-a3
6e:[ ]+6500[ ]+nop