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] |
2010/12/21 Kai Tietz <ktietz70@googlemail.com>: > 2010/12/20 Dave Korn <dave.korn.cygwin@gmail.com>: >> On 20/12/2010 19:46, Kai Tietz wrote: >> >>> Well, the issue here is that, if a .tls section is present, it needs >>> to be put into directory entry. >> >> ?As I read the spec, the directory entry should point only and exactly to the >> actual MS-defined TLS struct pointed to by the __tls_used symbol. ?That was >> why I asked about whether it's always the case that we can assume a .tls >> section is exactly that and nothing else. >> >>> Why this isn't happening anymore, I am a bit puzzled too. >> >> ?I think we should investigate this first. ?Got a testcase? >> >> ? ?cheers, >> ? ? ?DaveK >> > > I found the issue. The cause for this is that bfd searches for > '__tls_used', which is the underscored version of '_tls_used' > variable. Caused by the fact that x64 windows doesn't prefix symbols > by underscore, the symbol wasn't found, as it remains '_tls_used'. > > So we have two chances here to solve this: a) Change for windows x64 > the symbol to '__tls_used', or b) search in bfd for x64 windows for > '_tls_used' instead of '_tls_used'. > > Kai > -- > |? (\_/) This is Bunny. Copy and paste > | (='.'=) Bunny into your signature to help > | (")_(") him gain world domination > This patch should fix this underscoring issue (should affect wince arm too). ChangeLog 2010-12-21 Kai Tietz * peXXigen.c (_bfd_XXi_final_link_postscript): Use TARGET_UNDERSCORE to determine "_tls_used" name. (TARGET_UNDERSCORE): Define to default zero, if not present. * ld-pe/pe.exp: Add TLS directory test. * ld-pe/tlssec.s: New. * ld-pe/tlssec64.d: New. * ld-pe/tlssec32.d: New. Tested for x86_64-w64-mingw32, i686-pc-mingw32, and i686-pc-cygwin. Ok for apply? Kai -- |? (\_/) This is Bunny. Copy and paste | (='.'=) Bunny into your signature to help | (")_(") him gain world domination
Attachment:
fixtls_noprefix.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |