Always keep sections marked with SEC_KEEP
authorH.J. Lu <hjl.tools@gmail.com>
Thu, 22 Oct 2015 19:17:43 +0000 (12:17 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Thu, 22 Oct 2015 19:23:03 +0000 (12:23 -0700)
commitbba037e0aef1f3b17cc6cf6fd041ed6110cc375a
tree6f2fad132412629daaf56228009b62eb7c9e4914
parentd236ad1955a0a6b5203bc1474b989fd9dba668f8
Always keep sections marked with SEC_KEEP

SEC_KEEP check in elf_gc_sweep was missing in commit:

commit bde6f3eb6dff94cea1d471e15c6154d55d49820f
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Jan 8 01:43:23 2010 +0000

    Set SEC_KEEP on section XXX for undefined __start_XXX/__stop_XXX

    bfd/

    2010-01-07  H.J. Lu  <hongjiu.lu@intel.com>

      PR ld/11133
      * elflink.c (_bfd_elf_gc_mark_hook): Check section XXX for
      undefined __start_XXX/__stop_XXX in all input files and set
      SEC_KEEP.

This patch adds SEC_KEEP check to elf_gc_sweep.

bfd/

PR ld/19161
* elflink.c (elf_gc_sweep): Always keep sections marked with
SEC_KEEP.

ld/testsuite/

PR ld/19161
* ld-gc/gc.exp: Run pr19161 test.
* ld-gc/pr19161-1.c: New file.
* ld-gc/pr19161-2.c: Likewise.
* ld-gc/pr19161.d: Likewise.
bfd/ChangeLog
bfd/elflink.c
ld/testsuite/ChangeLog
ld/testsuite/ld-gc/gc.exp
ld/testsuite/ld-gc/pr19161-1.c [new file with mode: 0644]
ld/testsuite/ld-gc/pr19161-2.c [new file with mode: 0644]
ld/testsuite/ld-gc/pr19161.d [new file with mode: 0644]
This page took 0.02578 seconds and 4 git commands to generate.