From 3064e1ff79ecbe3d6f09667ae09065e347b5605b Mon Sep 17 00:00:00 2001 From: Julian Brown Date: Thu, 28 Feb 2013 10:31:34 +0000 Subject: bfd/ * elf32-arm.c (elf32_arm_size_dynamic_sections): Don't call elf32_arm_allocate_dynrelocs for source reloc for non-dynamic link. ld/testsuite/ * ld-arm/tls-local-static.s: New test. * ld-arm/tls-local-static.d: New. * ld-arm/arm-elf.exp (tls-local-static): Add test. --- ld/testsuite/ChangeLog | 8 +++++++- ld/testsuite/ld-arm/arm-elf.exp | 3 +++ ld/testsuite/ld-arm/tls-local-static.d | 11 +++++++++++ ld/testsuite/ld-arm/tls-local-static.s | 15 +++++++++++++++ 4 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 ld/testsuite/ld-arm/tls-local-static.d create mode 100644 ld/testsuite/ld-arm/tls-local-static.s (limited to 'ld/testsuite') diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index 07a01a8..0db8fe7 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,4 +1,10 @@ -013-02-21 H.J. Lu +2013-02-28 Nathan Sidwell + + * ld-arm/tls-local-static.s: New test. + * ld-arm/tls-local-static.d: New. + * ld-arm/arm-elf.exp (tls-local-static): Add test. + +2013-02-21 H.J. Lu PR ld/15167 * ld-unique/unique.exp: Add a test for shared library with diff --git a/ld/testsuite/ld-arm/arm-elf.exp b/ld/testsuite/ld-arm/arm-elf.exp index 414bc69..d9375ec 100644 --- a/ld/testsuite/ld-arm/arm-elf.exp +++ b/ld/testsuite/ld-arm/arm-elf.exp @@ -142,6 +142,9 @@ set armelftests_common { {"TLS descseq relaxation BE32" "-T arm-dyn.ld -EB" "" "-mbig-endian" {tls-descrelax-be32.s} {{objdump -fdw tls-descrelax-be32.d}} "tls-descrelax-be32"} + {"TLS local PIC symbol static link" "-T arm.ld" "" "" {tls-local-static.s} + {{objdump -fdw tls-local-static.d}} + "tls-local-static"} {"Thumb entry point" "-T arm.ld" "" "" {thumb-entry.s} {{readelf -h thumb-entry.d}} "thumb-entry"} diff --git a/ld/testsuite/ld-arm/tls-local-static.d b/ld/testsuite/ld-arm/tls-local-static.d new file mode 100644 index 0000000..d246ab1 --- /dev/null +++ b/ld/testsuite/ld-arm/tls-local-static.d @@ -0,0 +1,11 @@ + +.*/tls-local-static: file format elf32-.*arm.* +architecture: .*, flags 0x[0-9a-f]+: +EXEC_P, HAS_SYMS, D_PAGED +start address 0x[0-9a-f]+ + +Disassembly of section .text: + +[0-9a-f]+ <_start>: + [0-9a-f]+: e12fff1e bx lr + [0-9a-f]+: 00000ff8 .word 0x00000ff8 diff --git a/ld/testsuite/ld-arm/tls-local-static.s b/ld/testsuite/ld-arm/tls-local-static.s new file mode 100644 index 0000000..15a409a --- /dev/null +++ b/ld/testsuite/ld-arm/tls-local-static.s @@ -0,0 +1,15 @@ + .text + .arch armv4t + .global _start +_start: +.LPIC0: + bx lr + .align 2 + .word var(tlsgd) + (. - .LPIC0 - 8) + + .section .tbss,"awT",%nobits + .align 2 + .type var, %object + .size var, 4 +var: + .space 4 -- cgit v1.1