From 0b65791f7d0a25a80883e54d0cc0121f6b0baa20 Mon Sep 17 00:00:00 2001 From: Stephen Clarke Date: Fri, 16 Aug 2002 18:47:31 +0000 Subject: [PATCH] * ld-sh/sh64/sh64.exp: Add dlsection. * ld-sh/sh64/dlsection-1.s, ld-sh/sh64/dlsection.sd: New. --- ld/testsuite/ChangeLog | 5 +++++ ld/testsuite/ld-sh/sh64/dlsection-1.s | 17 +++++++++++++++++ ld/testsuite/ld-sh/sh64/dlsection.sd | 13 +++++++++++++ ld/testsuite/ld-sh/sh64/sh64.exp | 6 ++++++ 4 files changed, 41 insertions(+) create mode 100644 ld/testsuite/ld-sh/sh64/dlsection-1.s create mode 100644 ld/testsuite/ld-sh/sh64/dlsection.sd diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index 3aba5adcee3..9ec8ea2ea05 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2002-08-16 Stephen Clarke + + * ld-sh/sh64/sh64.exp: Add dlsection. + * ld-sh/sh64/dlsection-1.s, ld-sh/sh64/dlsection.sd: New. + 2002-08-16 Alan Modra * 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 00000000000..d83e6e1ebbd --- /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 00000000000..3e470fb75bb --- /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 555436e894e..f939441704e 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}}} -- 2.30.2