[patch bfd]: Fix generation of .tls directory entry
Kai Tietz
ktietz70@googlemail.com
Tue Dec 21 11:03:00 GMT 2010
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
More information about the Binutils
mailing list