Implement generic SHF_EXCLUDE.
authorH.J. Lu <hjl.tools@gmail.com>
Tue, 18 May 2010 03:31:07 +0000 (03:31 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Tue, 18 May 2010 03:31:07 +0000 (03:31 +0000)
commit18ae9cc1db45e2e7f6467b91d8abbc5eb45fbaa5
tree8b15ae2b881a6f2a7301ecc8c24bd239f2261942
parente17c9e56cb62a1791215b8a144ef864f77e4a34f
Implement generic SHF_EXCLUDE.

bfd/

2010-05-18  H.J. Lu  <hongjiu.lu@intel.com>

PR gas/11600
* elf.c (_bfd_elf_make_section_from_shdr): Handle SHF_EXCLUDE
(elf_fake_sections): Likewise.

* elf32-i370.c (i370_elf_section_from_shdr): Don't handle
SHF_EXCLUDE here.
* elf32-ppc.c (ppc_elf_fake_sections): Likewise.

binutils/

2010-05-18  H.J. Lu  <hongjiu.lu@intel.com>

PR gas/11600
* readelf.c (get_elf_section_flags): Treat SHF_EXCLUDE as a
generic flag.

binutils/testsuite/

2010-05-18  H.J. Lu  <hongjiu.lu@intel.com>

PR gas/11600
* binutils-all/objcopy.exp: Run exclude-1a and exclude-1b for
ELF targets.

* binutils-all/exclude-1.s: New.
* binutils-all/exclude-1a.d: Likewise.
* binutils-all/exclude-1b.d: Likewise.

gas/

2010-05-18  H.J. Lu  <hongjiu.lu@intel.com>

PR gas/11600
* obj-elf.c (obj_elf_change_section): Handle SHF_EXCLUDE.
(obj_elf_parse_section_letters): Likewise.
(obj_elf_section_word): Likewise.

* config/tc-ppc.c (ppc_section_letter): Removed.
(ppc_section_word): Likewise.
* config/tc-ppc.h (ppc_section_letter): Likewise.
(ppc_section_word): Likewise.
(md_elf_section_letter): Likewise.
(md_elf_section_word): Likewise.

* doc/as.texinfo: Document `e' and `#exclude'.

gas/testsuite/

2010-05-18  H.J. Lu  <hongjiu.lu@intel.com>

PR gas/11600
* gas/elf/elf.exp: Run section8.

* gas/elf/section8.d: New.
* gas/elf/section8.s: Likewise.

include/elf/

2010-05-18  H.J. Lu  <hongjiu.lu@intel.com>

PR gas/11600
* common.h (SHF_EXCLUDE): New.

* i370.h (SHF_EXCLUDE): Removed.
* or32.h (SHF_EXCLUDE): Likewise.
* ppc.h (SHF_EXCLUDE): Likewise.
* sparc.h (SHF_EXCLUDE): Likewise.

ld/testsuite/

2010-05-18  H.J. Lu  <hongjiu.lu@intel.com>

PR gas/11600
* ld-elf/exclude3.s: New.
* ld-elf/exclude3a.d: Likewise.
* ld-elf/exclude3b.d: Likewise.
* ld-elf/exclude3c.d: Likewise.
31 files changed:
bfd/ChangeLog
bfd/elf.c
bfd/elf32-i370.c
bfd/elf32-ppc.c
binutils/ChangeLog
binutils/readelf.c
binutils/testsuite/ChangeLog
binutils/testsuite/binutils-all/exclude-1.s [new file with mode: 0644]
binutils/testsuite/binutils-all/exclude-1a.d [new file with mode: 0644]
binutils/testsuite/binutils-all/exclude-1b.d [new file with mode: 0644]
binutils/testsuite/binutils-all/objcopy.exp
gas/ChangeLog
gas/config/obj-elf.c
gas/config/tc-ppc.c
gas/config/tc-ppc.h
gas/doc/as.texinfo
gas/testsuite/ChangeLog
gas/testsuite/gas/elf/elf.exp
gas/testsuite/gas/elf/section8.d [new file with mode: 0644]
gas/testsuite/gas/elf/section8.s [new file with mode: 0644]
include/elf/ChangeLog
include/elf/common.h
include/elf/i370.h
include/elf/or32.h
include/elf/ppc.h
include/elf/sparc.h
ld/testsuite/ChangeLog
ld/testsuite/ld-elf/exclude3.s [new file with mode: 0644]
ld/testsuite/ld-elf/exclude3a.d [new file with mode: 0644]
ld/testsuite/ld-elf/exclude3b.d [new file with mode: 0644]
ld/testsuite/ld-elf/exclude3c.d [new file with mode: 0644]