diff options
author | Alan Modra <amodra@gmail.com> | 2023-05-19 17:40:30 +0930 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2023-05-20 10:49:19 +0930 |
commit | 880853ed941dc1154e3bb2bd44ddd10b84dfecff (patch) | |
tree | f862234c33c3ae6738512e6ca642f83e26087e4a | |
parent | b196c8b3b6027714f50f75c1278843ee0e38d6de (diff) | |
download | fsf-binutils-gdb-880853ed941dc1154e3bb2bd44ddd10b84dfecff.zip fsf-binutils-gdb-880853ed941dc1154e3bb2bd44ddd10b84dfecff.tar.gz fsf-binutils-gdb-880853ed941dc1154e3bb2bd44ddd10b84dfecff.tar.bz2 |
tic54x set_arch_mach
The tic54x backend provides its own coff_set_arch_mach, but wants to
use the standard coff_set_section_contents. BFD_JUMP_TABLE_WRITE
defines both of these functions, so the code also provides a wrapper
for coff_set_section_contents. This is all quite OK, but I was on a
mission to remove unnecessary declarations in coffcode.h, and on
deleting the one for coff_set_arch_mach ran into a warning about the
function being unused. I could have kept that declaration with its
ATTRIBUTE_UNUSED or written "static bool ATTRIBUTE_UNUSED" on the
definition but the latter is not usual and looks odd to me. So I
had a closer look at tic54x_set_arch_mach and decided the function is
very likely wrong to allow bfd_arch_unknown. Thus the backend should
be using the standard coff_set_arch_mach.
* coff-tic54x.c: Use BFD_JUMP_TABLE_WRITE (coff) in target vecs.
(tic54x_coff_set_arch_mach): Delete.
(tic54x_set_section_contents): Delete.
* coffcode.h: Delete unnecessary forward declarations.
-rw-r--r-- | bfd/coff-tic54x.c | 40 | ||||
-rw-r--r-- | bfd/coffcode.h | 54 |
2 files changed, 6 insertions, 88 deletions
diff --git a/bfd/coff-tic54x.c b/bfd/coff-tic54x.c index 77d9994..55f87a1 100644 --- a/bfd/coff-tic54x.c +++ b/bfd/coff-tic54x.c @@ -109,23 +109,6 @@ bfd_ticoff_get_section_load_page (asection *sect) return page; } -/* Set the architecture appropriately. Allow unkown architectures - (e.g. binary). */ - -static bool -tic54x_set_arch_mach (bfd *abfd, - enum bfd_architecture arch, - unsigned long machine) -{ - if (arch == bfd_arch_unknown) - arch = bfd_arch_tic54x; - - else if (arch != bfd_arch_tic54x) - return false; - - return bfd_default_set_arch_mach (abfd, arch, machine); -} - static bfd_reloc_status_type tic54x_relocation (bfd *abfd ATTRIBUTE_UNUSED, arelent *reloc_entry, @@ -335,17 +318,6 @@ ticoff_bfd_is_local_label_name (bfd *abfd ATTRIBUTE_UNUSED, #include "coffcode.h" -static bool -tic54x_set_section_contents (bfd *abfd, - sec_ptr section, - const void * location, - file_ptr offset, - bfd_size_type bytes_to_do) -{ - return coff_set_section_contents (abfd, section, location, - offset, bytes_to_do); -} - static void tic54x_reloc_processing (arelent *relent, struct internal_reloc *reloc, @@ -448,7 +420,7 @@ const bfd_target tic54x_coff0_vec = BFD_JUMP_TABLE_ARCHIVE (_bfd_archive_coff), BFD_JUMP_TABLE_SYMBOLS (coff), BFD_JUMP_TABLE_RELOCS (coff), - BFD_JUMP_TABLE_WRITE (tic54x), + BFD_JUMP_TABLE_WRITE (coff), BFD_JUMP_TABLE_LINK (coff), BFD_JUMP_TABLE_DYNAMIC (_bfd_nodynamic), NULL, @@ -510,7 +482,7 @@ const bfd_target tic54x_coff0_beh_vec = BFD_JUMP_TABLE_ARCHIVE (_bfd_archive_coff), BFD_JUMP_TABLE_SYMBOLS (coff), BFD_JUMP_TABLE_RELOCS (coff), - BFD_JUMP_TABLE_WRITE (tic54x), + BFD_JUMP_TABLE_WRITE (coff), BFD_JUMP_TABLE_LINK (coff), BFD_JUMP_TABLE_DYNAMIC (_bfd_nodynamic), @@ -573,7 +545,7 @@ const bfd_target tic54x_coff1_vec = BFD_JUMP_TABLE_ARCHIVE (_bfd_archive_coff), BFD_JUMP_TABLE_SYMBOLS (coff), BFD_JUMP_TABLE_RELOCS (coff), - BFD_JUMP_TABLE_WRITE (tic54x), + BFD_JUMP_TABLE_WRITE (coff), BFD_JUMP_TABLE_LINK (coff), BFD_JUMP_TABLE_DYNAMIC (_bfd_nodynamic), @@ -636,7 +608,7 @@ const bfd_target tic54x_coff1_beh_vec = BFD_JUMP_TABLE_ARCHIVE (_bfd_archive_coff), BFD_JUMP_TABLE_SYMBOLS (coff), BFD_JUMP_TABLE_RELOCS (coff), - BFD_JUMP_TABLE_WRITE (tic54x), + BFD_JUMP_TABLE_WRITE (coff), BFD_JUMP_TABLE_LINK (coff), BFD_JUMP_TABLE_DYNAMIC (_bfd_nodynamic), @@ -699,7 +671,7 @@ const bfd_target tic54x_coff2_vec = BFD_JUMP_TABLE_ARCHIVE (_bfd_archive_coff), BFD_JUMP_TABLE_SYMBOLS (coff), BFD_JUMP_TABLE_RELOCS (coff), - BFD_JUMP_TABLE_WRITE (tic54x), + BFD_JUMP_TABLE_WRITE (coff), BFD_JUMP_TABLE_LINK (coff), BFD_JUMP_TABLE_DYNAMIC (_bfd_nodynamic), @@ -762,7 +734,7 @@ const bfd_target tic54x_coff2_beh_vec = BFD_JUMP_TABLE_ARCHIVE (_bfd_archive_coff), BFD_JUMP_TABLE_SYMBOLS (coff), BFD_JUMP_TABLE_RELOCS (coff), - BFD_JUMP_TABLE_WRITE (tic54x), + BFD_JUMP_TABLE_WRITE (coff), BFD_JUMP_TABLE_LINK (coff), BFD_JUMP_TABLE_DYNAMIC (_bfd_nodynamic), diff --git a/bfd/coffcode.h b/bfd/coffcode.h index 2d42982..ab22ed0 100644 --- a/bfd/coffcode.h +++ b/bfd/coffcode.h @@ -398,62 +398,8 @@ CODE_FRAGMENT #define COFF_DEFAULT_LONG_SECTION_NAMES (false), COFF_LONG_SECTION_NAMES_SETTER #endif /* COFF_ENABLE_LONG_SECTION_NAMES */ -#if defined (COFF_LONG_SECTION_NAMES) -static bool bfd_coff_set_long_section_names_allowed - (bfd *, int); -#else /* !defined (COFF_LONG_SECTION_NAMES) */ -static bool bfd_coff_set_long_section_names_disallowed - (bfd *, int); -#endif /* defined (COFF_LONG_SECTION_NAMES) */ -static long sec_to_styp_flags - (const char *, flagword); -static bool styp_to_sec_flags - (bfd *, void *, const char *, asection *, flagword *); -static bool coff_bad_format_hook - (bfd *, void *); -static void coff_set_custom_section_alignment - (bfd *, asection *, const struct coff_section_alignment_entry *, - const unsigned int); -static bool coff_new_section_hook - (bfd *, asection *); -static bool coff_set_arch_mach_hook - (bfd *, void *); -static bool coff_write_relocs - (bfd *, int); -static bool coff_set_flags - (bfd *, unsigned int *, unsigned short *); -static bool coff_set_arch_mach - (bfd *, enum bfd_architecture, unsigned long) ATTRIBUTE_UNUSED; -static bool coff_compute_section_file_positions - (bfd *); -static bool coff_write_object_contents - (bfd *) ATTRIBUTE_UNUSED; -static bool coff_set_section_contents - (bfd *, asection *, const void *, file_ptr, bfd_size_type); -static bool coff_slurp_line_table - (bfd *, asection *); -static bool coff_slurp_symbol_table - (bfd *); static enum coff_symbol_classification coff_classify_symbol (bfd *, struct internal_syment *); -static bool coff_slurp_reloc_table - (bfd *, asection *, asymbol **); -static long coff_canonicalize_reloc - (bfd *, asection *, arelent **, asymbol **); -#ifndef coff_mkobject_hook -static void * coff_mkobject_hook - (bfd *, void *, void *); -#endif -#ifdef COFF_WITH_PE -static flagword handle_COMDAT - (bfd *, flagword, void *, const char *, asection *); -#endif -#ifdef TICOFF -static bool ticoff0_bad_format_hook - (bfd *, void * ); -static bool ticoff1_bad_format_hook - (bfd *, void * ); -#endif /* void warning(); */ |