This is the mail archive of the binutils@sourceware.org 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]

Re: MIPS : offset address in .rel.dyn for the different symbols may become the same


Thiemo Seufer <ths@networkno.de> writes:
> Richard Sandiford wrote:
> [snip]
>> I can reproduce this with binutils CVS.  It's yet another case in which
>> we're getting confused about whether TLS information is stored in the
>> mips_got_entry structure or in the symbol's hash table entry.  In the
>> "master" GOT, we keep entries for each input bfd distinct, so that we
>> can easily split the master GOT into multiple GOTs later on.  Thus if
>> one input bfd uses only IE accesses for a symbol, and another uses only
>> GD accesses, there will be two separate master GOT entries, each with
>> just one TLS type.  We store the accrued TLS information in the hash
>> table in such cases; it is the hash table entry that tells us that
>> both access models are needed.
>> 
>> The testcase exposes one situation in which we weren't making the
>> distinction correctly.  Please let me know if this patch fixes things
>> for you.
>> 
>> Richard
>> 
>> 
>> bfd/
>> 	* elfxx-mips.c (mips_elf_initialize_tls_index): When processing a
>> 	type (3) single-GOT entry, read tls_type from the hash table entry
>> 	rather than the GOT entry.
>
> Please commit, thanks. :-)

Thanks, finally done after testing on mips64-linux-gnu.

Richard


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]