summaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-pe
diff options
context:
space:
mode:
authorKai Tietz <kai.tietz@onevision.com>2010-12-21 15:24:37 +0000
committerKai Tietz <kai.tietz@onevision.com>2010-12-21 15:24:37 +0000
commitead29555ddb76c00d19a1d8f73b00ada09418604 (patch)
treee1b6f95b78e055ea947062b962dd9a652d2facca /ld/testsuite/ld-pe
parent05db363b099b1bc56870b9195ee2ba8798247cd2 (diff)
downloadbinutils-redhat-ead29555ddb76c00d19a1d8f73b00ada09418604.tar.gz
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.
Diffstat (limited to 'ld/testsuite/ld-pe')
-rw-r--r--ld/testsuite/ld-pe/pe.exp6
-rwxr-xr-xld/testsuite/ld-pe/tlssec.s20
-rwxr-xr-xld/testsuite/ld-pe/tlssec32.d3
-rwxr-xr-xld/testsuite/ld-pe/tlssec64.d3
4 files changed, 32 insertions, 0 deletions
diff --git a/ld/testsuite/ld-pe/pe.exp b/ld/testsuite/ld-pe/pe.exp
index dd4b9f70d0..183c5c6a4e 100644
--- a/ld/testsuite/ld-pe/pe.exp
+++ b/ld/testsuite/ld-pe/pe.exp
@@ -38,6 +38,8 @@ if {[istarget i*86-*-cygwin*]
{{objdump -s secrel_64.d}} "secrel.x"}
{"Empty export table" "" "" "exports.s"
{{objdump -p exports64.d}} "exports.dll"}
+ {"TLS directory entry" "" "" "tlssec.s"
+ {{objdump -p tlssec64.d}} "tlssec.dll"}
}
} elseif {[istarget i*86-*-cygwin*] } {
set pe_tests {
@@ -45,6 +47,8 @@ if {[istarget i*86-*-cygwin*]
{{objdump -s secrel.d}} "secrel.x"}
{"Empty export table" "" "" "exports.s"
{{objdump -p exports.d}} "exports.dll"}
+ {"TLS directory entry" "" "" "tlssec.s"
+ {{objdump -p tlssec32.d}} "tlssec.dll"}
}
} else {
set pe_tests {
@@ -52,6 +56,8 @@ if {[istarget i*86-*-cygwin*]
{{objdump -s secrel.d}} "secrel.x"}
{"Empty export table" "" "" "exports.s"
{{objdump -p exports.d}} "exports.dll"}
+ {"TLS directory entry" "" "" "tlssec.s"
+ {{objdump -p tlssec32.d}} "tlssec.dll"}
}
}
diff --git a/ld/testsuite/ld-pe/tlssec.s b/ld/testsuite/ld-pe/tlssec.s
new file mode 100755
index 0000000000..ba14881c79
--- /dev/null
+++ b/ld/testsuite/ld-pe/tlssec.s
@@ -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
+
diff --git a/ld/testsuite/ld-pe/tlssec32.d b/ld/testsuite/ld-pe/tlssec32.d
new file mode 100755
index 0000000000..0114064a33
--- /dev/null
+++ b/ld/testsuite/ld-pe/tlssec32.d
@@ -0,0 +1,3 @@
+#...
+Entry 9 00003000 00000018 Thread Storage Directory \[\.tls\]
+#...
diff --git a/ld/testsuite/ld-pe/tlssec64.d b/ld/testsuite/ld-pe/tlssec64.d
new file mode 100755
index 0000000000..692d9e4848
--- /dev/null
+++ b/ld/testsuite/ld-pe/tlssec64.d
@@ -0,0 +1,3 @@
+#...
+Entry 9 0000000000003000 00000028 Thread Storage Directory \[\.tls\]
+#...