diff options
Diffstat (limited to 'bfd')
-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 |