Re: [Patch]: Fix ld pr11138 FAILures on mips*.
On Mon, Dec 05, 2011 at 04:49:35PM -0800, David Daney wrote:
> The root cause of this is that the mips linker synthesizes a special
> symbol "__RLD_MAP", and then sets MIPS_RLD_MAP to point to it. When
> a version script is present, this symbol gets versioned along with
> all the rest, and when it is time to take its address, the symbol
> can no longer be found as it has had version information appended to
> its name.
Why not just change
&& (strcmp (name, "__rld_map") == 0
|| strcmp (name, "__RLD_MAP") == 0))
to
&& (strncmp (name, "__rld_map", 9) == 0
|| strncmp (name, "__RLD_MAP", 9) == 0))
in _bfd_mips_elf_finish_dynamic_symbol? Perhaps the same for other
syms there too?
--
Alan Modra
Australia Development Lab, IBM
Reply to: