invocation of mips_elf_multi_got can cause not enough GOT space for local GOT entries

Robert Schiele rschiele@gmail.com
Thu Jan 10 09:48:00 GMT 2013


On Thu, Jan 10, 2013 at 10:18 AM, Robert Schiele <rschiele@gmail.com> wrote:
> The offending relocations are R_MIPS_GOT_PAGE relocations against
> .rodata.str1.8 sections.

And giving that one further thought, this section is SHF_MERGE |
SHF_STRINGS and thus it is kind of expected that from the merging it
could happen that the offsets of those relocations can change for a
different amount since other stuff could have been merged in between.
If that happens it is actually quite likely that they can cover more
pages than they initially did and thus the assumption mentioned above
that you can get an upper bound of pages affected by just summing up
the affected pages of the individual objects before is no longer true.

Do you agree or do I have a wrong understanding here of how things work?

Robert



More information about the Binutils mailing list