aboutsummaryrefslogtreecommitdiff
path: root/binutils/readelf.c
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2010-05-18 03:31:07 +0000
committerH.J. Lu <hjl.tools@gmail.com>2010-05-18 03:31:07 +0000
commit18ae9cc1db45e2e7f6467b91d8abbc5eb45fbaa5 (patch)
tree8b15ae2b881a6f2a7301ecc8c24bd239f2261942 /binutils/readelf.c
parente17c9e56cb62a1791215b8a144ef864f77e4a34f (diff)
downloadgdb-18ae9cc1db45e2e7f6467b91d8abbc5eb45fbaa5.zip
gdb-18ae9cc1db45e2e7f6467b91d8abbc5eb45fbaa5.tar.gz
gdb-18ae9cc1db45e2e7f6467b91d8abbc5eb45fbaa5.tar.bz2
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.
Diffstat (limited to 'binutils/readelf.c')
-rw-r--r--binutils/readelf.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/binutils/readelf.c b/binutils/readelf.c
index 53699b2..bcb24c2 100644
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
@@ -4152,8 +4152,9 @@ get_elf_section_flags (bfd_vma sh_flags)
/* 15 */ { STRING_COMMA_LEN ("VMS_VECTOR") },
/* 16 */ { STRING_COMMA_LEN ("VMS_ALLOC_64BIT") },
/* 17 */ { STRING_COMMA_LEN ("VMS_PROTECTED") },
- /* SPARC specific. */
+ /* Generic. */
/* 18 */ { STRING_COMMA_LEN ("EXCLUDE") },
+ /* SPARC specific. */
/* 19 */ { STRING_COMMA_LEN ("ORDERED") }
};
@@ -4185,6 +4186,7 @@ get_elf_section_flags (bfd_vma sh_flags)
case SHF_OS_NONCONFORMING: sindex = 7; break;
case SHF_GROUP: sindex = 8; break;
case SHF_TLS: sindex = 9; break;
+ case SHF_EXCLUDE: sindex = 18; break;
default:
sindex = -1;
@@ -4218,9 +4220,7 @@ get_elf_section_flags (bfd_vma sh_flags)
case EM_SPARC32PLUS:
case EM_SPARCV9:
case EM_SPARC:
- if (flag == SHF_EXCLUDE)
- sindex = 18;
- else if (flag == SHF_ORDERED)
+ if (flag == SHF_ORDERED)
sindex = 19;
break;
default:
@@ -4263,6 +4263,7 @@ get_elf_section_flags (bfd_vma sh_flags)
case SHF_OS_NONCONFORMING: *p = 'O'; break;
case SHF_GROUP: *p = 'G'; break;
case SHF_TLS: *p = 'T'; break;
+ case SHF_EXCLUDE: *p = 'E'; break;
default:
if ((elf_header.e_machine == EM_X86_64