aboutsummaryrefslogtreecommitdiff
path: root/bfd/elf.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2020-03-18 07:31:47 +1030
committerAlan Modra <amodra@gmail.com>2020-03-20 11:02:49 +1030
commita859124df20f6544dbef96084e4e024bccebd853 (patch)
tree2722e09a084496b2acf4a26ae937df56cfbf0086 /bfd/elf.c
parentce2ea1c7e055b3b70f03dc33db3b77b0d775f5de (diff)
downloadfsf-binutils-gdb-a859124df20f6544dbef96084e4e024bccebd853.zip
fsf-binutils-gdb-a859124df20f6544dbef96084e4e024bccebd853.tar.gz
fsf-binutils-gdb-a859124df20f6544dbef96084e4e024bccebd853.tar.bz2
tidy elf_backend calls
Function pointers in elfNN_bed that are initialized by elfxx-target.h to non-zero values generally don't need a non-NULL test before calling them. Targets don't set a non-NULL function to NULL. The one exception being elfnn-ia64.c and that exception is removed here. * elf.c (_bfd_elf_setup_sections): Don't test known non-NULL backend functions for NULL before calling. (copy_special_section_fields, _bfd_elf_copy_private_bfd_data), (bfd_section_from_shdr, assign_section_numbers): Likewise. * elfcode.h (elf_write_relocs, elf_slurp_reloc_table): Likewise. * elfnn-ia64.c (ignore_errors): New function. (elf_backend_link_order_error_handler): Redefine as ignore_errors.
Diffstat (limited to 'bfd/elf.c')
-rw-r--r--bfd/elf.c33
1 files changed, 15 insertions, 18 deletions
diff --git a/bfd/elf.c b/bfd/elf.c
index 6cbc389..975eeb0 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -857,11 +857,10 @@ _bfd_elf_setup_sections (bfd *abfd)
if (elfsec == 0)
{
const struct elf_backend_data *bed = get_elf_backend_data (abfd);
- if (bed->link_order_error_handler)
- bed->link_order_error_handler
- /* xgettext:c-format */
- (_("%pB: warning: sh_link not set for section `%pA'"),
- abfd, s);
+ bed->link_order_error_handler
+ /* xgettext:c-format */
+ (_("%pB: warning: sh_link not set for section `%pA'"),
+ abfd, s);
}
else
{
@@ -1424,9 +1423,8 @@ copy_special_section_fields (const bfd *ibfd,
}
/* Allow the target a chance to decide how these fields should be set. */
- if (bed->elf_backend_copy_special_section_fields != NULL
- && bed->elf_backend_copy_special_section_fields
- (ibfd, obfd, iheader, oheader))
+ if (bed->elf_backend_copy_special_section_fields (ibfd, obfd,
+ iheader, oheader))
return TRUE;
/* We have an iheader which might match oheader, and which has non-zero
@@ -1610,8 +1608,8 @@ _bfd_elf_copy_private_bfd_data (bfd *ibfd, bfd *obfd)
{
/* Final attempt. Call the backend copy function
with a NULL input section. */
- if (bed->elf_backend_copy_special_section_fields != NULL)
- (void) bed->elf_backend_copy_special_section_fields (ibfd, obfd, NULL, oheader);
+ (void) bed->elf_backend_copy_special_section_fields (ibfd, obfd,
+ NULL, oheader);
}
}
@@ -2462,12 +2460,12 @@ bfd_section_from_shdr (bfd *abfd, unsigned int shindex)
sections. */
if (*p_hdr != NULL)
{
- if (bed->init_secondary_reloc_section == NULL
- || ! bed->init_secondary_reloc_section (abfd, hdr, name, shindex))
+ if (!bed->init_secondary_reloc_section (abfd, hdr, name, shindex))
{
_bfd_error_handler
/* xgettext:c-format */
- (_("%pB: warning: secondary relocation section '%s' for section %pA found - ignoring"),
+ (_("%pB: warning: secondary relocation section '%s' "
+ "for section %pA found - ignoring"),
abfd, name, target_sect);
}
goto success;
@@ -3940,11 +3938,10 @@ assign_section_numbers (bfd *abfd, struct bfd_link_info *link_info)
where s is NULL. */
const struct elf_backend_data *bed
= get_elf_backend_data (abfd);
- if (bed->link_order_error_handler)
- bed->link_order_error_handler
- /* xgettext:c-format */
- (_("%pB: warning: sh_link not set for section `%pA'"),
- abfd, sec);
+ bed->link_order_error_handler
+ /* xgettext:c-format */
+ (_("%pB: warning: sh_link not set for section `%pA'"),
+ abfd, sec);
}
}