From bd0a45ce49721ce45a36eec4c5adacae66e0c57c Mon Sep 17 00:00:00 2001 From: Hans-Peter Nilsson Date: Wed, 25 Mar 2009 03:04:21 +0000 Subject: [PATCH] * ld-cris/tls-e-dtpoffd3.d, ld-cris/tls-e-tpoffcomm1.d, ld-cris/tls-e-tpoffcomm1.s: New tests. --- ld/testsuite/ChangeLog | 5 +++ ld/testsuite/ld-cris/tls-e-dtpoffd3.d | 32 ++++++++++++++++++ ld/testsuite/ld-cris/tls-e-tpoffcomm1.d | 45 +++++++++++++++++++++++++ ld/testsuite/ld-cris/tls-e-tpoffcomm1.s | 9 +++++ 4 files changed, 91 insertions(+) create mode 100644 ld/testsuite/ld-cris/tls-e-dtpoffd3.d create mode 100644 ld/testsuite/ld-cris/tls-e-tpoffcomm1.d create mode 100644 ld/testsuite/ld-cris/tls-e-tpoffcomm1.s diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index b2f24b40d3..540beb7d46 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2009-03-25 Hans-Peter Nilsson + + * ld-cris/tls-e-dtpoffd3.d, ld-cris/tls-e-tpoffcomm1.d, + ld-cris/tls-e-tpoffcomm1.s: New tests. + 2009-03-24 Hans-Peter Nilsson * ld-cris/tls-commx.s, ld-cris/tls-dso-dtpoffd2.d, diff --git a/ld/testsuite/ld-cris/tls-e-dtpoffd3.d b/ld/testsuite/ld-cris/tls-e-dtpoffd3.d new file mode 100644 index 0000000000..8612e38123 --- /dev/null +++ b/ld/testsuite/ld-cris/tls-e-dtpoffd3.d @@ -0,0 +1,32 @@ +#source: start1.s +#source: tls-dtpoffdx.s +#source: tls-gd-1.s +#source: tls128.s +#source: tls-commx.s +#as: --no-underscore --em=criself --pic -I$srcdir/$subdir +#ld: -m crislinux +#objdump: -d -s -t -r -p + +.*: file format elf32-cris + +Program Header: +#... + TLS off .* + filesz 0x0+80 memsz 0x0+84 flags r-- +private flags = 0: + +SYMBOL TABLE: +#... +0+80 g .tbss 0+4 x +#... +Contents of section .text: + 80094 41b20000 5fae0c00 .* +Contents of section .tdata: +#... +Contents of section .got: + 8211c 00000000 00000000 00000000 01000000 .* + 8212c 80000000 .* +Contents of section .debug_info: + 0000 fcffffff .* +Contents of section .debug_line: +#pass diff --git a/ld/testsuite/ld-cris/tls-e-tpoffcomm1.d b/ld/testsuite/ld-cris/tls-e-tpoffcomm1.d new file mode 100644 index 0000000000..69780cfd57 --- /dev/null +++ b/ld/testsuite/ld-cris/tls-e-tpoffcomm1.d @@ -0,0 +1,45 @@ +#source: start1.s +#source: tls-e-tpoffcomm1.s +#as: --no-underscore --em=criself -I$srcdir/$subdir +#ld: -m crislinux +#objdump: -d -s -h -t -r -p + +# Make sure we can link a file with TPOFF relocs against common +# symbols. + +.*: file format elf32-cris + +Program Header: + LOAD off 0x0+ vaddr 0x0+80000 paddr 0x0+80000 align 2\*\*13 + filesz 0x0+a4 memsz 0x0+a4 flags r-x + LOAD off 0x0+a4 vaddr 0x0+820a4 paddr 0x0+820a4 align 2\*\*13 + filesz 0x0+ memsz 0x0+ flags rw- + TLS off 0x0+a4 vaddr 0x0+820a4 paddr 0x0+820a4 align 2\*\*2 + filesz 0x0+ memsz 0x0+8 flags r-- +private flags = 0: + +Sections: +Idx Name Size VMA LMA File off Algn + 0 .text 0+10 0+80094 0+80094 0+94 2\*\*1 + CONTENTS, ALLOC, LOAD, READONLY, CODE + 1 .tbss 0+8 0+820a4 0+820a4 0+a4 2\*\*2 + ALLOC, THREAD_LOCAL +SYMBOL TABLE: +0+80094 l d .text 0+ .text +0+820a4 l d .tbss 0+ .tbss +0+80098 l F .text 0+c do_test +0+80094 g .text 0+ _start +0+820a4 g \*ABS\* 0+ __bss_start +0+ g .tbss 0+4 foo +0+820a4 g \*ABS\* 0+ _edata +0+820c0 g \*ABS\* 0+ _end +0+4 g .tbss 0+4 bar +#... +Disassembly of section .text: + +00080094 <_start>: + 80094: 41b2 moveq 1,\$r11 +#... +00080098 : + 80098: 2f0e f8ff ffff add.d 0xfffffff8,\$r0 + 8009e: 2f1e fcff ffff add.d 0xfffffffc,\$r1 diff --git a/ld/testsuite/ld-cris/tls-e-tpoffcomm1.s b/ld/testsuite/ld-cris/tls-e-tpoffcomm1.s new file mode 100644 index 0000000000..a9f03aeff1 --- /dev/null +++ b/ld/testsuite/ld-cris/tls-e-tpoffcomm1.s @@ -0,0 +1,9 @@ + .tls_common foo,4,4 + .tls_common bar,4,4 + .text + .align 1 + .type do_test, @function +do_test: + add.d foo:TPOFF,$r0 + add.d bar:TPOFF,$r1 + .size do_test, .-do_test -- 2.34.1