aboutsummaryrefslogtreecommitdiff
path: root/ld/testsuite/ld-gc/pr20882a.s
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-05-17 07:57:15 -0700
committerH.J. Lu <hjl.tools@gmail.com>2017-05-17 07:57:26 -0700
commitb7c871edcd83ccdc5fcd8148a7f433efd6b52255 (patch)
treed1f43eadeeac5387cca51b23a1b8e9da8aa0fbb6 /ld/testsuite/ld-gc/pr20882a.s
parent0d5c69990c1992289f7b286600a43de4d5d44062 (diff)
downloadfsf-binutils-gdb-b7c871edcd83ccdc5fcd8148a7f433efd6b52255.zip
fsf-binutils-gdb-b7c871edcd83ccdc5fcd8148a7f433efd6b52255.tar.gz
fsf-binutils-gdb-b7c871edcd83ccdc5fcd8148a7f433efd6b52255.tar.bz2
Mark debug sections referenced by kept debug sections
If a debug section is referenced by a kept debug section, it should also be kept. Some targets, like mips, keep input files when there are some special sections, like .gnu.attributes, even if input file is unused otherwise. In this case, all debug sections are kept. The new test will fail on such targets. We can either fix those targets or XFAIL the test. bfd/ PR ld/20882 * elflink.c (elf_gc_mark_debug_section): New function. (_bfd_elf_gc_mark_extra_sections): Mark any debug sections referenced by kept debug sections. ld/ PR ld/20882 * testsuite/ld-gc/gc.exp: Run pr20882. * testsuite/ld-gc/pr20882.d: New file. * testsuite/ld-gc/pr20882a.s: Likewise. * testsuite/ld-gc/pr20882b.s: Likewise. * testsuite/ld-gc/pr20882c.s: Likewise.
Diffstat (limited to 'ld/testsuite/ld-gc/pr20882a.s')
-rw-r--r--ld/testsuite/ld-gc/pr20882a.s11
1 files changed, 11 insertions, 0 deletions
diff --git a/ld/testsuite/ld-gc/pr20882a.s b/ld/testsuite/ld-gc/pr20882a.s
new file mode 100644
index 0000000..3348ba9
--- /dev/null
+++ b/ld/testsuite/ld-gc/pr20882a.s
@@ -0,0 +1,11 @@
+ .text
+ .globl main
+ .type main, %function
+main:
+ .byte 0
+
+ .section .debug_info,"",%progbits
+ .dc.a t.c.4903c230+2
+
+ .section .debug_line,"",%progbits
+ .byte 0