This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
RE: [patch] mips_frob_file -- fix hi/lo pairings
- From: "Fu, Chao-Ying" <fu at mips dot com>
- To: "Catherine Moore" <clm at codesourcery dot com>, <binutils at sourceware dot org>
- Cc: "Lau, David" <davidlau at mips dot com>
- Date: Thu, 19 Jun 2008 15:08:54 -0700
- Subject: RE: [patch] mips_frob_file -- fix hi/lo pairings
Catherine Moore wrote:
>
> gas/
> * config/tc-mips.c (mips_frob_file): Don't match
> MIPS16 relocs
> with non-MIPS16 relocs.
>
> gas/testsuite/
> * gas/mips/mips16-hilo-match.s: New test.
> * gas/mips/mip16-hilo-match.d: New test
>
Hi,
This test cannot pass under mips32/32r2/64/64r2, due to the conversion
of "jr + nop" to "jrc" for mips16e code.
Ex: (-march=mips32)
00000054 <pdelt>:
54: 6a10 li $2,16
56: e8a0 jrc $31 <-----
58: a952 lhu $2,36($17)
5a: 6790 move $4,$16
5c: f000 6800 li $16,0
To make the test work, we can pass non-mips32/32r2/64/64r2 CPUs to -march
when assembling this test.
Ex: (-march=mips1)
00000054 <pdelt>:
54: 6a10 li $2,16
56: e820 jr $31 <-----
58: 6500 nop <-----
5a: a952 lhu $2,36($17)
5c: 6790 move $4,$16
5e: f000 6800 li $16,0
Thanks!
Regards,
Chao-ying
Index: mips16-hilo-match.d
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/mips/mips16-hilo-match.d,v
retrieving revision 1.1
diff -u -p -r1.1 mips16-hilo-match.d
--- mips16-hilo-match.d 9 May 2008 19:28:47 -0000 1.1
+++ mips16-hilo-match.d 19 Jun 2008 22:02:25 -0000
@@ -1,4 +1,5 @@
#objdump: -r
+#as: -march=mips1
#name: MIPS16 mips16-hilo-match
.*: +file format .*mips.*