This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Wed, Aug 14, 2002 at 10:11:26AM -0400, Daniel Jacobowitz wrote: > On Wed, Aug 14, 2002 at 12:29:58AM -0700, H. J. Lu wrote: > > Hi Maciej, > > > > Your mips change breaks mips gas. I checked in the following patch to > > fix some of them. However, now I got > > > > # ../as-new -membedded-pic -mips3 -o dump.o /home/hjl/work/linux/src/binutils/binutils/gas/testsuite/gas/mips/empic.s > > ... > > ../as-new: BFD 2.13.90.0.4 20020814 assertion fail > > /home/hjl/work/linux/src/binutils/binutils/bfd/libbfd.c:1132 > > ../as-new: BFD 2.13.90.0.4 20020814 assertion fail > > /home/hjl/work/linux/src/binutils/binutils/bfd/libbfd.c:1241 > > ../as-new: BFD 2.13.90.0.4 20020814 assertion fail > > /home/hjl/work/linux/src/binutils/binutils/bfd/libbfd.c:1132 > > ../as-new: BFD 2.13.90.0.4 20020814 assertion fail > > /home/hjl/work/linux/src/binutils/binutils/bfd/libbfd.c:1241 > > ../as-new: BFD 2.13.90.0.4 20020814 assertion fail > > /home/hjl/work/linux/src/binutils/binutils/bfd/libbfd.c:1132 > > ../as-new: BFD 2.13.90.0.4 20020814 assertion fail > > /home/hjl/work/linux/src/binutils/binutils/bfd/libbfd.c:1241 > > ../as-new: BFD 2.13.90.0.4 20020814 assertion fail > > /home/hjl/work/linux/src/binutils/binutils/bfd/libbfd.c:1132 > > ../as-new: BFD 2.13.90.0.4 20020814 assertion fail > > /home/hjl/work/linux/src/binutils/binutils/bfd/libbfd.c:1241 > > ../as-new: BFD 2.13.90.0.4 20020814 assertion fail > > /home/hjl/work/linux/src/binutils/binutils/bfd/libbfd.c:1132 > > ../as-new: BFD 2.13.90.0.4 20020814 assertion fail > > /home/hjl/work/linux/src/binu > > > > The problem is Linux/mips is no longer 64bit by default. Could you > > please fix mips? > > Let's see... I've got: > FAIL: MIPS -mgp64 -mfp32 > > #name: MIPS -mgp64 -mfp32 > #as: -march=8000 -EB -mfp32 > and > 92 bgtu $4, 0xffffffff, end # 012c li at,0x8000 > 93 # 0130 dsll at,at,17 > 94 # 0134 sltu at,a0,at > 95 # 0138 beqz at,end > produce: > /opt/src/binutils/src/gas/testsuite/gas/mips/mips-gp64-fp64.s:92: Warning: Branch bgtu is always true > > So -march=8000 is no longer setting gp64. > > I've also got the assertion failure HJ mentioned, which is in > bfd_getl64 but !BFD64. > > I'd say the bug was related to (at a guess): > 2002-07-31 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> > > * Makefile.am: Add n32 ABI support. > * Makefile.in: Regenerate. > * config.bfd: Add n32 vectors to mips64*-*-linux* targets. Treat 64 > bit vectors for mips*-*-linux targets as optional. > * configure.in: Add n32 ABI vectors. > * configure: Regenerate. > * elf32-mips.c (mips_elf32_object_p): Reject n32 ABI files. > * elfn32-mips.c: New file, n32 ABI support. > * targets.c: Add n32 ABI vectors. > > The problem is that elf32-mips.c contains things like: > /* A 64 bit relocation. */ > HOWTO (R_MIPS_64, /* type */ > 0, /* rightshift */ > 4, /* size (0 = byte, 1 = short, 2 = long) */ > 64, /* bitsize */ > false, /* pc_relative */ > 0, /* bitpos */ > complain_overflow_dont, /* complain_on_overflow */ > mips32_64bit_reloc, /* special_function */ > "R_MIPS_64", /* name */ > true, /* partial_inplace */ > MINUS_ONE, /* src_mask */ > MINUS_ONE, /* dst_mask */ > false), /* pcrel_offset */ > > where size == 4 implies 64-bit. As a consequence BFD64 must always be > defined for MIPS targets. > > (Have targets which didn't include the 64-bit vectors, like netbsd, > been seeing this failure for a while?) > Thanks. I will check in the following patch to fix Linux/mips. I will leave the rest mips ports to others. H.J.
Attachment:
bfd-mips.patch
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |