diff options
-rw-r--r-- | ld/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | ld/testsuite/ld-sh/sh64/dlsection-1.s | 17 | ||||
-rw-r--r-- | ld/testsuite/ld-sh/sh64/dlsection.sd | 13 | ||||
-rw-r--r-- | ld/testsuite/ld-sh/sh64/sh64.exp | 6 |
4 files changed, 41 insertions, 0 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index 3aba5ad..9ec8ea2 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2002-08-16 Stephen Clarke <stephen.clarke@superh.com> + + * ld-sh/sh64/sh64.exp: Add dlsection. + * ld-sh/sh64/dlsection-1.s, ld-sh/sh64/dlsection.sd: New. + 2002-08-16 Alan Modra <amodra@bigpond.net.au> * ld-discard/discard.exp: xfail targets using generic linker. diff --git a/ld/testsuite/ld-sh/sh64/dlsection-1.s b/ld/testsuite/ld-sh/sh64/dlsection-1.s new file mode 100644 index 0000000..d83e6e1 --- /dev/null +++ b/ld/testsuite/ld-sh/sh64/dlsection-1.s @@ -0,0 +1,17 @@ +! Test gc-sections and datalabel references. +! +! Datalabel reference to symbol in section .text2 should +! prevent .text2 from being discarded. +! Section .spurious can be discarded. + .mode SHmedia + + .text + .global start + .global foo +start: .long datalabel foo + + .section .text2,"ax" +foo: .long 23 + + .section .spurious,"ax" + .long 17 diff --git a/ld/testsuite/ld-sh/sh64/dlsection.sd b/ld/testsuite/ld-sh/sh64/dlsection.sd new file mode 100644 index 0000000..3e470fb --- /dev/null +++ b/ld/testsuite/ld-sh/sh64/dlsection.sd @@ -0,0 +1,13 @@ + +.*: file format elf.*-sh64 + +Contents of section \.text: + 1000 00001004 .* +Contents of section \.text2: + 1004 00000017 .* +Contents of section \.data: +Contents of section \.ctors: +Contents of section \.dtors: +Contents of section \.sbss: +Contents of section \.bss: +Contents of section \.stack: diff --git a/ld/testsuite/ld-sh/sh64/sh64.exp b/ld/testsuite/ld-sh/sh64/sh64.exp index 555436e..f939441 100644 --- a/ld/testsuite/ld-sh/sh64/sh64.exp +++ b/ld/testsuite/ld-sh/sh64/sh64.exp @@ -73,6 +73,12 @@ set sh64tests { {"SH64 inter-file datalabel references, 32-bit ABI" "-mshelf32" "--abi=32" {shdl-1.s shdl-2.s} {{objdump -sr shdl64.sd} {objdump -x shdl32.xd}}} + {"SH64 inter-file datalabel references and gc-sections, 32-bit ABI" "-mshelf32 --gc-sections" + "--abi=32" {dlsection-1.s } + {{objdump -sr dlsection.sd}}} + {"SH64 inter-file datalabel references and gc-sections, 64-bit ABI" "-mshelf64 --gc-sections" + "--abi=64" {dlsection-1.s } + {{objdump -sr dlsection.sd}}} {"SH64 simple partial linking, 32-bit ABI" "-mshelf32 -r" "--abi=32" {rel-1.s rel-2.s} {{objdump -sx rel32.xd}}} |