This is the mail archive of the
binutils@sourceware.cygnus.com
mailing list for the binutils project.
Re: PATCH for 64-bit MIPS ELF buglets
>>>>> "Ian" == Ian Lance Taylor <ian@zembu.com> writes:
Ian> What is going on here is that some people use elf32-mips when
Ian> compiling ISA level III code. This works fine, provided you
Ian> always load the code at an address from 0 to 0x7fffffff or
Ian> 0xffffffff80000000 to 0xffffffffffffffff. The R_MIPS_64
Ian> reloc in elf32-mips supports this usage: it is a 64 bit
Ian> relocation formed by sign extending a 32 bit address.
OK. I'll do what I suggested where I use different HOWTOs in 32-bit
vs. 64-bit mode for R_MIPS_64.
Ian> There used to be code in mips_elf_relocate_section which
Ian> handled this usage. However, I see that you have removed it.
I'll see what it did, and restore that behvaior.
Ian> I now see that you have also removed the support for
Ian> R_MIPS16_26 while you shuffled code from
Ian> mips_elf_relocate_section to mips_elf_calculate_relocation.
That wasn't really a shuffling; it was a total gutting. :-)
The loss of R_MIPS16_26/R_MIPS16_GPREL was an oversight on my part. I
fully intended to restore them, but forgot. However, I cannot find
any documentation on what these relocations do. Can you point me at
anything, other than the previous code? If you cannot, I will try to
decipher it, and make the right thing happen, but I would feel more
comfortable working from documentation.
Ian> You must not assume that the MIPS ELF code is only used on
Ian> native Unix systems.
Of course.
You occasionally point out the obvious; I'm not clueless, just a bit
new to binutils. When big rewrites happen, things tend to get broken
for a while; now that the rewriting is done, these things will get
fixed up. Just the usual stabilization phase.
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com