[PATCH] MIPS/ld: Calculate DT_RELSZ correctly.
David Daney
ddaney@avtrex.com
Mon May 23 21:59:00 GMT 2005
As outlined in this thread:
http://sourceware.org/ml/binutils/2005-05/msg00624.html
The 2.16 ld cannot correctly link the libgcj component of gcc 4.0.0.
The problem is that DT_RELSZ was being calculated before all of the
relocations had been added to the dynamic relocations section. This
resulted in a value of DT_RELSZ that was too small. The result was that
the runtime loader did not do all the relocations that were needed.
2005-05-23 David Daney <ddaney@avtrex.com>
* elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Move
calculation of DT_RELSZ to occur after all dynamic relocations
are created.
Tested on the CVS HEAD mipsel-linux cross running on i686-pc-linux-gnu
with make -k check showing regressions.
O.K. to commit? Should this go on the 2.16 branch as well?
David Daney
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: ld.p
URL: <https://sourceware.org/pipermail/binutils/attachments/20050523/7d6f51b4/attachment.ksh>
More information about the Binutils
mailing list