diff options
author | Alan Modra <amodra@gmail.com> | 2020-03-18 07:31:47 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2020-03-20 11:02:49 +1030 |
commit | a859124df20f6544dbef96084e4e024bccebd853 (patch) | |
tree | 2722e09a084496b2acf4a26ae937df56cfbf0086 /bfd/elfcode.h | |
parent | ce2ea1c7e055b3b70f03dc33db3b77b0d775f5de (diff) | |
download | binutils-a859124df20f6544dbef96084e4e024bccebd853.zip binutils-a859124df20f6544dbef96084e4e024bccebd853.tar.gz binutils-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/elfcode.h')
-rw-r--r-- | bfd/elfcode.h | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/bfd/elfcode.h b/bfd/elfcode.h index 7745c53..68db3e9 100644 --- a/bfd/elfcode.h +++ b/bfd/elfcode.h @@ -987,12 +987,11 @@ elf_write_relocs (bfd *abfd, asection *sec, void *data) (*swap_out) (abfd, &src_rela, dst_rela); } - if (bed->write_secondary_relocs != NULL) - if (! bed->write_secondary_relocs (abfd, sec)) - { - *failedp = TRUE; - return; - } + if (!bed->write_secondary_relocs (abfd, sec)) + { + *failedp = TRUE; + return; + } } /* Write out the program headers. */ @@ -1596,8 +1595,7 @@ elf_slurp_reloc_table (bfd *abfd, symbols, dynamic)) return FALSE; - if (bed->slurp_secondary_relocs != NULL - && ! bed->slurp_secondary_relocs (abfd, asect, symbols)) + if (!bed->slurp_secondary_relocs (abfd, asect, symbols)) return FALSE; asect->relocation = relents; |