mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-19 17:18:24 +08:00
2010-12-21 Kai Tietz <kai.tietz@onevision.com>
* peXXigen.c (_bfd_XXi_final_link_postscript): Use bfd_get_symbol_leading_char to determine "_tls_used" name. 2010-12-21 Kai Tietz <kai.tietz@onevision.com> * ld-pe/pe.exp: Add TLS directory test. * ld-pe/tlssec.s: New. * ld-pe/tlssec64.d: New. * ld-pe/tlssec32.d: New.
This commit is contained in:
@ -1,3 +1,8 @@
|
|||||||
|
2010-12-21 Kai Tietz <kai.tietz@onevision.com>
|
||||||
|
|
||||||
|
* peXXigen.c (_bfd_XXi_final_link_postscript): Use
|
||||||
|
bfd_get_symbol_leading_char to determine "_tls_used" name.
|
||||||
|
|
||||||
2010-12-21 Pierre Muller <muller@ics.u-strasbg.fr>
|
2010-12-21 Pierre Muller <muller@ics.u-strasbg.fr>
|
||||||
|
|
||||||
* peXXigen.c (_bfd_XXi_final_link_postscript): Use correct size
|
* peXXigen.c (_bfd_XXi_final_link_postscript): Use correct size
|
||||||
|
@ -2418,7 +2418,9 @@ _bfd_XXi_final_link_postscript (bfd * abfd, struct coff_final_link_info *pfinfo)
|
|||||||
}
|
}
|
||||||
|
|
||||||
h1 = coff_link_hash_lookup (coff_hash_table (info),
|
h1 = coff_link_hash_lookup (coff_hash_table (info),
|
||||||
"__tls_used", FALSE, FALSE, TRUE);
|
(bfd_get_symbol_leading_char(abfd) != 0
|
||||||
|
? "__tls_used" : "_tls_used"),
|
||||||
|
FALSE, FALSE, TRUE);
|
||||||
if (h1 != NULL)
|
if (h1 != NULL)
|
||||||
{
|
{
|
||||||
if ((h1->root.type == bfd_link_hash_defined
|
if ((h1->root.type == bfd_link_hash_defined
|
||||||
|
@ -1,3 +1,10 @@
|
|||||||
|
2010-12-21 Kai Tietz <kai.tietz@onevision.com>
|
||||||
|
|
||||||
|
* ld-pe/pe.exp: Add TLS directory test.
|
||||||
|
* ld-pe/tlssec.s: New.
|
||||||
|
* ld-pe/tlssec64.d: New.
|
||||||
|
* ld-pe/tlssec32.d: New.
|
||||||
|
|
||||||
2010-12-20 Alan Modra <amodra@gmail.com>
|
2010-12-20 Alan Modra <amodra@gmail.com>
|
||||||
|
|
||||||
* ld-bootstrap/bootstrap.exp: Fix misplaced comment.
|
* ld-bootstrap/bootstrap.exp: Fix misplaced comment.
|
||||||
|
@ -38,6 +38,8 @@ if {[istarget i*86-*-cygwin*]
|
|||||||
{{objdump -s secrel_64.d}} "secrel.x"}
|
{{objdump -s secrel_64.d}} "secrel.x"}
|
||||||
{"Empty export table" "" "" "exports.s"
|
{"Empty export table" "" "" "exports.s"
|
||||||
{{objdump -p exports64.d}} "exports.dll"}
|
{{objdump -p exports64.d}} "exports.dll"}
|
||||||
|
{"TLS directory entry" "" "" "tlssec.s"
|
||||||
|
{{objdump -p tlssec64.d}} "tlssec.dll"}
|
||||||
}
|
}
|
||||||
} elseif {[istarget i*86-*-cygwin*] } {
|
} elseif {[istarget i*86-*-cygwin*] } {
|
||||||
set pe_tests {
|
set pe_tests {
|
||||||
@ -45,6 +47,8 @@ if {[istarget i*86-*-cygwin*]
|
|||||||
{{objdump -s secrel.d}} "secrel.x"}
|
{{objdump -s secrel.d}} "secrel.x"}
|
||||||
{"Empty export table" "" "" "exports.s"
|
{"Empty export table" "" "" "exports.s"
|
||||||
{{objdump -p exports.d}} "exports.dll"}
|
{{objdump -p exports.d}} "exports.dll"}
|
||||||
|
{"TLS directory entry" "" "" "tlssec.s"
|
||||||
|
{{objdump -p tlssec32.d}} "tlssec.dll"}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
set pe_tests {
|
set pe_tests {
|
||||||
@ -52,6 +56,8 @@ if {[istarget i*86-*-cygwin*]
|
|||||||
{{objdump -s secrel.d}} "secrel.x"}
|
{{objdump -s secrel.d}} "secrel.x"}
|
||||||
{"Empty export table" "" "" "exports.s"
|
{"Empty export table" "" "" "exports.s"
|
||||||
{{objdump -p exports.d}} "exports.dll"}
|
{{objdump -p exports.d}} "exports.dll"}
|
||||||
|
{"TLS directory entry" "" "" "tlssec.s"
|
||||||
|
{{objdump -p tlssec32.d}} "tlssec.dll"}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
20
ld/testsuite/ld-pe/tlssec.s
Executable file
20
ld/testsuite/ld-pe/tlssec.s
Executable file
@ -0,0 +1,20 @@
|
|||||||
|
.global _tls_used
|
||||||
|
.global __tls_used
|
||||||
|
.global _start
|
||||||
|
.global start
|
||||||
|
.global _mainCRTStartup
|
||||||
|
.global mainCRTStartup
|
||||||
|
|
||||||
|
.text
|
||||||
|
_start:
|
||||||
|
mainCRTStartup:
|
||||||
|
_mainCRTStartup:
|
||||||
|
.byte 1
|
||||||
|
|
||||||
|
.section .tls
|
||||||
|
_tls_used:
|
||||||
|
__tls_used:
|
||||||
|
.long 1,2,3,4,5,6,7,8,9,10
|
||||||
|
.long 11,12,13,14,15,16,17,18,19,20
|
||||||
|
.long 21,22,23,24,25,26,27,28,29,30
|
||||||
|
|
3
ld/testsuite/ld-pe/tlssec32.d
Executable file
3
ld/testsuite/ld-pe/tlssec32.d
Executable file
@ -0,0 +1,3 @@
|
|||||||
|
#...
|
||||||
|
Entry 9 00003000 00000018 Thread Storage Directory \[\.tls\]
|
||||||
|
#...
|
3
ld/testsuite/ld-pe/tlssec64.d
Executable file
3
ld/testsuite/ld-pe/tlssec64.d
Executable file
@ -0,0 +1,3 @@
|
|||||||
|
#...
|
||||||
|
Entry 9 0000000000003000 00000028 Thread Storage Directory \[\.tls\]
|
||||||
|
#...
|
Reference in New Issue
Block a user