diff options
author | Zack Weinberg <zackw@panix.com> | 2005-03-02 04:47:25 +0000 |
---|---|---|
committer | Zack Weinberg <zackw@panix.com> | 2005-03-02 04:47:25 +0000 |
commit | 8c1acd095d2f5046e963bccf45215e0f88383adc (patch) | |
tree | 8676eb418556ca0a763069ecddf855411a77dc4b | |
parent | 71ba24a1eb676359ecb1331f7958a185f05bc8db (diff) | |
download | gdb-8c1acd095d2f5046e963bccf45215e0f88383adc.zip gdb-8c1acd095d2f5046e963bccf45215e0f88383adc.tar.gz gdb-8c1acd095d2f5046e963bccf45215e0f88383adc.tar.bz2 |
* elf.c (bfd_section_from_shdr <default case>): Call
elf_backend_section_from_shdr hook unconditionally, and return
what it returns.
(bfd_section_from_phdr): Similarly, for elf_backend_section_from_phdr.
* elfxx-target.h (elf_backend_section_from_shdr)
(elf_backend_section_from_phdr): Default to
_bfd_elf_make_section_from_shdr and _bfd_elf_make_section_from_phdr
respectively.
-rw-r--r-- | bfd/ChangeLog | 11 | ||||
-rw-r--r-- | bfd/elf.c | 12 | ||||
-rw-r--r-- | bfd/elfxx-target.h | 4 |
3 files changed, 16 insertions, 11 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 9bb0c9e..ccc3c9e 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,14 @@ +2005-03-01 Zack Weinberg <zack@codesourcery.com> + + * elf.c (bfd_section_from_shdr <default case>): Call + elf_backend_section_from_shdr hook unconditionally, and return + what it returns. + (bfd_section_from_phdr): Similarly, for elf_backend_section_from_phdr. + * elfxx-target.h (elf_backend_section_from_shdr) + (elf_backend_section_from_phdr): Default to + _bfd_elf_make_section_from_shdr and _bfd_elf_make_section_from_phdr + respectively. + 2005-03-01 Alan Modra <amodra@bigpond.net.au> * targets.h: Typo fix. @@ -2039,9 +2039,7 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex) default: /* Check for any processor-specific section types. */ - if (bed->elf_backend_section_from_shdr) - (*bed->elf_backend_section_from_shdr) (abfd, hdr, name); - break; + return bed->elf_backend_section_from_shdr (abfd, hdr, name); } return TRUE; @@ -2379,13 +2377,9 @@ bfd_section_from_phdr (bfd *abfd, Elf_Internal_Phdr *hdr, int index) return _bfd_elf_make_section_from_phdr (abfd, hdr, index, "relro"); default: - /* Check for any processor-specific program segment types. - If no handler for them, default to making "segment" sections. */ + /* Check for any processor-specific program segment types. */ bed = get_elf_backend_data (abfd); - if (bed->elf_backend_section_from_phdr) - return (*bed->elf_backend_section_from_phdr) (abfd, hdr, index); - else - return _bfd_elf_make_section_from_phdr (abfd, hdr, index, "segment"); + return bed->elf_backend_section_from_phdr (abfd, hdr, index); } } diff --git a/bfd/elfxx-target.h b/bfd/elfxx-target.h index 09b9eee..861cb2b 100644 --- a/bfd/elfxx-target.h +++ b/bfd/elfxx-target.h @@ -326,13 +326,13 @@ #define elf_backend_section_processing 0 #endif #ifndef elf_backend_section_from_shdr -#define elf_backend_section_from_shdr 0 +#define elf_backend_section_from_shdr _bfd_elf_make_section_from_shdr #endif #ifndef elf_backend_section_flags #define elf_backend_section_flags 0 #endif #ifndef elf_backend_section_from_phdr -#define elf_backend_section_from_phdr 0 +#define elf_backend_section_from_phdr _bfd_elf_make_section_from_phdr #endif #ifndef elf_backend_fake_sections #define elf_backend_fake_sections 0 |