Add startswith function and use it instead of CONST_STRNEQ.
authorMartin Liska <mliska@suse.cz>
Fri, 19 Mar 2021 10:50:26 +0000 (11:50 +0100)
committerMartin Liska <mliska@suse.cz>
Mon, 22 Mar 2021 10:01:43 +0000 (11:01 +0100)
bfd/ChangeLog:

* bfd-in.h (startswith): Add startswith function.
(CONST_STRNEQ): Remove.
* bfd-in2.h (startswith): Regenerate with make headers.
* archive.c (bfd_slurp_armap): Replace usage of CONST_STRNEQ with startswith.
(_bfd_slurp_extended_name_table): Likewise.
* archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise.
* bfd.c (bfd_get_sign_extend_vma): Likewise.
(bfd_convert_section_size): Likewise.
(bfd_convert_section_contents): Likewise.
* coff-stgo32.c (go32exe_create_stub): Likewise.
(go32exe_check_format): Likewise.
* coffcode.h (styp_to_sec_flags): Likewise.
(GNU_DEBUGALTLINK): Likewise.
* coffgen.c (_bfd_coff_section_already_linked): Likewise.
(coff_gc_sweep): Likewise.
(bfd_coff_gc_sections): Likewise.
* cofflink.c (coff_link_add_symbols): Likewise.
(process_embedded_commands): Likewise.
* compress.c (bfd_is_section_compressed_with_header): Likewise.
(bfd_init_section_decompress_status): Likewise.
* dwarf2.c (find_debug_info): Likewise.
(place_sections): Likewise.
* ecoff.c (_bfd_ecoff_slurp_armap): Likewise.
* elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Likewise.
* elf.c (_bfd_elf_make_section_from_shdr): Likewise.
(assign_section_numbers): Likewise.
(elfcore_grok_win32pstatus): Likewise.
* elf32-arm.c (cmse_scan): Likewise.
(elf32_arm_gc_mark_extra_sections): Likewise.
(elf32_arm_size_dynamic_sections): Likewise.
(is_arm_elf_unwind_section_name): Likewise.
* elf32-bfin.c (bfin_size_dynamic_sections): Likewise.
* elf32-cr16.c (_bfd_cr16_elf_size_dynamic_sections): Likewise.
* elf32-cris.c (elf_cris_size_dynamic_sections): Likewise.
* elf32-csky.c (csky_elf_size_dynamic_sections): Likewise.
* elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
* elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
* elf32-lm32.c (lm32_elf_size_dynamic_sections): Likewise.
* elf32-m32r.c (m32r_elf_size_dynamic_sections): Likewise.
* elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
* elf32-metag.c (elf_metag_size_dynamic_sections): Likewise.
* elf32-msp430.c (msp430_elf_relax_delete_bytes): Likewise.
* elf32-nios2.c (nios2_elf32_size_dynamic_sections): Likewise.
* elf32-or1k.c (or1k_elf_size_dynamic_sections): Likewise.
* elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
* elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
* elf32-score.c (s3_bfd_score_elf_size_dynamic_sections): Likewise.
* elf32-score7.c (s7_bfd_score_elf_size_dynamic_sections): Likewise.
* elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
* elf32-tic6x.c (is_tic6x_elf_unwind_section_name): Likewise.
(elf32_tic6x_size_dynamic_sections): Likewise.
* elf32-vax.c (elf_vax_size_dynamic_sections): Likewise.
* elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Likewise.
(xtensa_is_insntable_section): Likewise.
(xtensa_is_littable_section): Likewise.
(xtensa_is_proptable_section): Likewise.
(xtensa_property_section_name): Likewise.
(xtensa_callback_required_dependence): Likewise.
* elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
* elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
* elf64-ia64-vms.c (is_unwind_section_name): Likewise.
(get_reloc_section): Likewise.
(elf64_ia64_size_dynamic_sections): Likewise.
(elf64_ia64_object_p): Likewise.
* elf64-mmix.c (mmix_elf_add_symbol_hook): Likewise.
* elf64-ppc.c (ppc64_elf_size_dynamic_sections): Likewise.
* elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
* elflink.c (elf_link_add_object_symbols): Likewise.
(_bfd_elf_gc_mark_extra_sections): Likewise.
(bfd_elf_parse_eh_frame_entries): Likewise.
(_bfd_elf_section_already_linked): Likewise.
* elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Likewise.
* elfnn-ia64.c (is_unwind_section_name): Likewise.
(elfNN_ia64_size_dynamic_sections): Likewise.
(elfNN_ia64_object_p): Likewise.
* elfxx-mips.c (FN_STUB_P): Likewise.
(CALL_STUB_P): Likewise.
(CALL_FP_STUB_P): Likewise.
(_bfd_mips_elf_section_from_shdr): Likewise.
(_bfd_mips_elf_fake_sections): Likewise.
(_bfd_mips_elf_size_dynamic_sections): Likewise.
(_bfd_mips_final_write_processing): Likewise.
(_bfd_mips_elf_final_link): Likewise.
* elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Likewise.
* elfxx-x86.c (elf_i386_is_reloc_section): Likewise.
(elf_x86_64_is_reloc_section): Likewise.
* hpux-core.c (thread_section_p): Likewise.
* libcoff.h (bfd_pei_p): Likewise.
* linker.c (REAL): Likewise.
(unwrap_hash_lookup): Likewise.
(_bfd_generic_link_add_one_symbol): Likewise.
* mmo.c (mmo_internal_write_section): Likewise.
* osf-core.c (osf_core_core_file_p): Likewise.
* pef.c (bfd_pef_print_symbol): Likewise.
* pei-x86_64.c (pex64_print_all_pdata_sections): Likewise.
* som.c (som_slurp_symbol_table): Likewise.
(som_slurp_armap): Likewise.
* wasm-module.c (wasm_compute_custom_section_file_position): Likewise.

binutils/ChangeLog:

* dlltool.c (scan_drectve_symbols): Replace usage of CONST_STRNEQ with startswith.
* emul_aix.c (ar_emul_aix_parse_arg): Likewise.
* objcopy.c (is_mergeable_note_section): Likewise.
* objdump.c (dump_dwarf_section): Likewise.
* prdbg.c (pr_method_type): Likewise.
(pr_class_baseclass): Likewise.
(tg_class_baseclass): Likewise.
* readelf.c (process_lto_symbol_tables): Likewise.
* stabs.c (ULLHIGH): Likewise.
(parse_stab_argtypes): Likewise.
(stab_demangle_function_name): Likewise.

gas/ChangeLog:

* config/tc-i386.c (md_parse_option): Replace usage of CONST_STRNEQ with startswith.
(x86_64_section_word): Likewise.
* config/tc-sparc.c (md_parse_option): Likewise.

gdb/ChangeLog:

* arm-tdep.c (show_disassembly_style_sfunc): Replace usage of CONST_STRNEQ with startswith.
(_initialize_arm_tdep): Likewise.

ld/ChangeLog:

* emultempl/aix.em: Replace usage of CONST_STRNEQ with startswith.
* emultempl/beos.em: Likewise.
* emultempl/elf.em: Likewise.
* emultempl/pe.em: Likewise.
* emultempl/pep.em: Likewise.
* emultempl/xtensaelf.em: Likewise.
* ldctor.c (ctor_prio): Likewise.
* ldelf.c (ldelf_try_needed): Likewise.
(ldelf_parse_ld_so_conf): Likewise.
(ldelf_after_open): Likewise.
(output_rel_find): Likewise.
(ldelf_place_orphan): Likewise.
* ldfile.c (ldfile_add_library_path): Likewise.
* ldlang.c (lang_add_input_file): Likewise.
* ldmain.c (get_sysroot): Likewise.
(get_emulation): Likewise.
(add_archive_element): Likewise.
* ldwrite.c (unsplittable_name): Likewise.
(clone_section): Likewise.
* lexsup.c (parse_args): Likewise.
* pe-dll.c (is_import): Likewise.
(pe_implied_import_dll): Likewise.

opcodes/ChangeLog:

* aarch64-dis.c (parse_aarch64_dis_option): Replace usage of CONST_STRNEQ with startswith.
* arc-dis.c (parse_option): Likewise.
* arm-dis.c (parse_arm_disassembler_options): Likewise.
* cris-dis.c (print_with_operands): Likewise.
* h8300-dis.c (bfd_h8_disassemble): Likewise.
* i386-dis.c (print_insn): Likewise.
* ia64-gen.c (fetch_insn_class): Likewise.
(parse_resource_users): Likewise.
(in_iclass): Likewise.
(lookup_specifier): Likewise.
(insert_opcode_dependencies): Likewise.
* mips-dis.c (parse_mips_ase_option): Likewise.
(parse_mips_dis_option): Likewise.
* s390-dis.c (disassemble_init_s390): Likewise.
* wasm32-dis.c (parse_wasm32_disassembler_options): Likewise.

97 files changed:
bfd/ChangeLog
bfd/archive.c
bfd/archive64.c
bfd/bfd-in.h
bfd/bfd-in2.h
bfd/bfd.c
bfd/coff-stgo32.c
bfd/coffcode.h
bfd/coffgen.c
bfd/cofflink.c
bfd/compress.c
bfd/dwarf2.c
bfd/ecoff.c
bfd/elf-m10300.c
bfd/elf.c
bfd/elf32-arm.c
bfd/elf32-bfin.c
bfd/elf32-cr16.c
bfd/elf32-cris.c
bfd/elf32-csky.c
bfd/elf32-hppa.c
bfd/elf32-iq2000.c
bfd/elf32-lm32.c
bfd/elf32-m32r.c
bfd/elf32-m68k.c
bfd/elf32-metag.c
bfd/elf32-msp430.c
bfd/elf32-nios2.c
bfd/elf32-or1k.c
bfd/elf32-ppc.c
bfd/elf32-s390.c
bfd/elf32-score.c
bfd/elf32-score7.c
bfd/elf32-sh.c
bfd/elf32-tic6x.c
bfd/elf32-vax.c
bfd/elf32-xtensa.c
bfd/elf64-alpha.c
bfd/elf64-hppa.c
bfd/elf64-ia64-vms.c
bfd/elf64-mmix.c
bfd/elf64-ppc.c
bfd/elf64-s390.c
bfd/elflink.c
bfd/elfnn-aarch64.c
bfd/elfnn-ia64.c
bfd/elfxx-mips.c
bfd/elfxx-sparc.c
bfd/elfxx-x86.c
bfd/hpux-core.c
bfd/libcoff.h
bfd/linker.c
bfd/mmo.c
bfd/osf-core.c
bfd/pef.c
bfd/pei-x86_64.c
bfd/som.c
bfd/wasm-module.c
binutils/ChangeLog
binutils/dlltool.c
binutils/emul_aix.c
binutils/objcopy.c
binutils/objdump.c
binutils/prdbg.c
binutils/readelf.c
binutils/stabs.c
gas/ChangeLog
gas/config/tc-i386.c
gas/config/tc-sparc.c
gdb/ChangeLog
gdb/arm-tdep.c
ld/ChangeLog
ld/emultempl/aix.em
ld/emultempl/beos.em
ld/emultempl/elf.em
ld/emultempl/pe.em
ld/emultempl/pep.em
ld/emultempl/xtensaelf.em
ld/ldctor.c
ld/ldelf.c
ld/ldfile.c
ld/ldlang.c
ld/ldmain.c
ld/ldwrite.c
ld/lexsup.c
ld/pe-dll.c
opcodes/ChangeLog
opcodes/aarch64-dis.c
opcodes/arc-dis.c
opcodes/arm-dis.c
opcodes/cris-dis.c
opcodes/h8300-dis.c
opcodes/i386-dis.c
opcodes/ia64-gen.c
opcodes/mips-dis.c
opcodes/s390-dis.c
opcodes/wasm32-dis.c

index 6cdf3acc556a42a651ac798da3ce18eaac300baf..c4172ebe5e3085382704a1adf6a37c3e822b27d4 100644 (file)
@@ -1,3 +1,104 @@
+2021-03-22  Martin Liska  <mliska@suse.cz>
+
+       * bfd-in.h (startswith): Add startswith function.
+       (CONST_STRNEQ): Remove.
+       * bfd-in2.h (startswith): Regenerate with make headers.
+       * archive.c (bfd_slurp_armap): Replace usage of CONST_STRNEQ with startswith.
+       (_bfd_slurp_extended_name_table): Likewise.
+       * archive64.c (_bfd_archive_64_bit_slurp_armap): Likewise.
+       * bfd.c (bfd_get_sign_extend_vma): Likewise.
+       (bfd_convert_section_size): Likewise.
+       (bfd_convert_section_contents): Likewise.
+       * coff-stgo32.c (go32exe_create_stub): Likewise.
+       (go32exe_check_format): Likewise.
+       * coffcode.h (styp_to_sec_flags): Likewise.
+       (GNU_DEBUGALTLINK): Likewise.
+       * coffgen.c (_bfd_coff_section_already_linked): Likewise.
+       (coff_gc_sweep): Likewise.
+       (bfd_coff_gc_sections): Likewise.
+       * cofflink.c (coff_link_add_symbols): Likewise.
+       (process_embedded_commands): Likewise.
+       * compress.c (bfd_is_section_compressed_with_header): Likewise.
+       (bfd_init_section_decompress_status): Likewise.
+       * dwarf2.c (find_debug_info): Likewise.
+       (place_sections): Likewise.
+       * ecoff.c (_bfd_ecoff_slurp_armap): Likewise.
+       * elf-m10300.c (_bfd_mn10300_elf_size_dynamic_sections): Likewise.
+       * elf.c (_bfd_elf_make_section_from_shdr): Likewise.
+       (assign_section_numbers): Likewise.
+       (elfcore_grok_win32pstatus): Likewise.
+       * elf32-arm.c (cmse_scan): Likewise.
+       (elf32_arm_gc_mark_extra_sections): Likewise.
+       (elf32_arm_size_dynamic_sections): Likewise.
+       (is_arm_elf_unwind_section_name): Likewise.
+       * elf32-bfin.c (bfin_size_dynamic_sections): Likewise.
+       * elf32-cr16.c (_bfd_cr16_elf_size_dynamic_sections): Likewise.
+       * elf32-cris.c (elf_cris_size_dynamic_sections): Likewise.
+       * elf32-csky.c (csky_elf_size_dynamic_sections): Likewise.
+       * elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
+       * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
+       * elf32-lm32.c (lm32_elf_size_dynamic_sections): Likewise.
+       * elf32-m32r.c (m32r_elf_size_dynamic_sections): Likewise.
+       * elf32-m68k.c (elf_m68k_size_dynamic_sections): Likewise.
+       * elf32-metag.c (elf_metag_size_dynamic_sections): Likewise.
+       * elf32-msp430.c (msp430_elf_relax_delete_bytes): Likewise.
+       * elf32-nios2.c (nios2_elf32_size_dynamic_sections): Likewise.
+       * elf32-or1k.c (or1k_elf_size_dynamic_sections): Likewise.
+       * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
+       * elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
+       * elf32-score.c (s3_bfd_score_elf_size_dynamic_sections): Likewise.
+       * elf32-score7.c (s7_bfd_score_elf_size_dynamic_sections): Likewise.
+       * elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
+       * elf32-tic6x.c (is_tic6x_elf_unwind_section_name): Likewise.
+       (elf32_tic6x_size_dynamic_sections): Likewise.
+       * elf32-vax.c (elf_vax_size_dynamic_sections): Likewise.
+       * elf32-xtensa.c (elf_xtensa_size_dynamic_sections): Likewise.
+       (xtensa_is_insntable_section): Likewise.
+       (xtensa_is_littable_section): Likewise.
+       (xtensa_is_proptable_section): Likewise.
+       (xtensa_property_section_name): Likewise.
+       (xtensa_callback_required_dependence): Likewise.
+       * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Likewise.
+       * elf64-hppa.c (elf64_hppa_size_dynamic_sections): Likewise.
+       * elf64-ia64-vms.c (is_unwind_section_name): Likewise.
+       (get_reloc_section): Likewise.
+       (elf64_ia64_size_dynamic_sections): Likewise.
+       (elf64_ia64_object_p): Likewise.
+       * elf64-mmix.c (mmix_elf_add_symbol_hook): Likewise.
+       * elf64-ppc.c (ppc64_elf_size_dynamic_sections): Likewise.
+       * elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
+       * elflink.c (elf_link_add_object_symbols): Likewise.
+       (_bfd_elf_gc_mark_extra_sections): Likewise.
+       (bfd_elf_parse_eh_frame_entries): Likewise.
+       (_bfd_elf_section_already_linked): Likewise.
+       * elfnn-aarch64.c (elfNN_aarch64_size_dynamic_sections): Likewise.
+       * elfnn-ia64.c (is_unwind_section_name): Likewise.
+       (elfNN_ia64_size_dynamic_sections): Likewise.
+       (elfNN_ia64_object_p): Likewise.
+       * elfxx-mips.c (FN_STUB_P): Likewise.
+       (CALL_STUB_P): Likewise.
+       (CALL_FP_STUB_P): Likewise.
+       (_bfd_mips_elf_section_from_shdr): Likewise.
+       (_bfd_mips_elf_fake_sections): Likewise.
+       (_bfd_mips_elf_size_dynamic_sections): Likewise.
+       (_bfd_mips_final_write_processing): Likewise.
+       (_bfd_mips_elf_final_link): Likewise.
+       * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections): Likewise.
+       * elfxx-x86.c (elf_i386_is_reloc_section): Likewise.
+       (elf_x86_64_is_reloc_section): Likewise.
+       * hpux-core.c (thread_section_p): Likewise.
+       * libcoff.h (bfd_pei_p): Likewise.
+       * linker.c (REAL): Likewise.
+       (unwrap_hash_lookup): Likewise.
+       (_bfd_generic_link_add_one_symbol): Likewise.
+       * mmo.c (mmo_internal_write_section): Likewise.
+       * osf-core.c (osf_core_core_file_p): Likewise.
+       * pef.c (bfd_pef_print_symbol): Likewise.
+       * pei-x86_64.c (pex64_print_all_pdata_sections): Likewise.
+       * som.c (som_slurp_symbol_table): Likewise.
+       (som_slurp_armap): Likewise.
+       * wasm-module.c (wasm_compute_custom_section_file_position): Likewise.
+
 2021-03-22  Jan Beulich  <jbeulich@suse.com>
 
        * peXXigen.c (_bfd_XXi_swap_scnhdr_out): Add missing
index 81ef62f1690bebda38844628a28592931713c53c..2a9ca56b653a2b84d2af514362ccef32df436605 100644 (file)
@@ -1175,12 +1175,12 @@ bfd_slurp_armap (bfd *abfd)
   if (bfd_seek (abfd, (file_ptr) -16, SEEK_CUR) != 0)
     return FALSE;
 
-  if (CONST_STRNEQ (nextname, "__.SYMDEF       ")
-      || CONST_STRNEQ (nextname, "__.SYMDEF/      ")) /* Old Linux archives.  */
+  if (startswith (nextname, "__.SYMDEF       ")
+      || startswith (nextname, "__.SYMDEF/      ")) /* Old Linux archives.  */
     return do_slurp_bsd_armap (abfd);
-  else if (CONST_STRNEQ (nextname, "/               "))
+  else if (startswith (nextname, "/               "))
     return do_slurp_coff_armap (abfd);
-  else if (CONST_STRNEQ (nextname, "/SYM64/         "))
+  else if (startswith (nextname, "/SYM64/         "))
     {
       /* 64bit (Irix 6) archive.  */
 #ifdef BFD64
@@ -1190,7 +1190,7 @@ bfd_slurp_armap (bfd *abfd)
       return FALSE;
 #endif
     }
-  else if (CONST_STRNEQ (nextname, "#1/20           "))
+  else if (startswith (nextname, "#1/20           "))
     {
       /* Mach-O has a special name for armap when the map is sorted by name.
         However because this name has a space it is slightly more difficult
@@ -1206,8 +1206,8 @@ bfd_slurp_armap (bfd *abfd)
       if (bfd_seek (abfd, -(file_ptr) (sizeof (hdr) + 20), SEEK_CUR) != 0)
        return FALSE;
       extname[20] = 0;
-      if (CONST_STRNEQ (extname, "__.SYMDEF SORTED")
-         || CONST_STRNEQ (extname, "__.SYMDEF"))
+      if (startswith (extname, "__.SYMDEF SORTED")
+         || startswith (extname, "__.SYMDEF"))
        return do_slurp_bsd_armap (abfd);
     }
 
@@ -1246,8 +1246,8 @@ _bfd_slurp_extended_name_table (bfd *abfd)
       if (bfd_seek (abfd, (file_ptr) -16, SEEK_CUR) != 0)
        return FALSE;
 
-      if (! CONST_STRNEQ (nextname, "ARFILENAMES/    ")
-         && ! CONST_STRNEQ (nextname, "//              "))
+      if (! startswith (nextname, "ARFILENAMES/    ")
+         && ! startswith (nextname, "//              "))
        {
          bfd_ardata (abfd)->extended_names = NULL;
          bfd_ardata (abfd)->extended_names_size = 0;
index 42e24cd849b2c1b02dbcee35e42a284bec8ac14d..6d76b4d7796e0abcec68138b43460b930a6f8a9c 100644 (file)
@@ -62,10 +62,10 @@ _bfd_archive_64_bit_slurp_armap (bfd *abfd)
     return FALSE;
 
   /* Archives with traditional armaps are still permitted.  */
-  if (CONST_STRNEQ (nextname, "/               "))
+  if (startswith (nextname, "/               "))
     return bfd_slurp_armap (abfd);
 
-  if (! CONST_STRNEQ (nextname, "/SYM64/         "))
+  if (! startswith (nextname, "/SYM64/         "))
     {
       abfd->has_armap = FALSE;
       return TRUE;
index 453ac48e262e99110c1b62903d7c5a74b6cf94dd..fda9fe0198ebecf2a294fa9a9ce4b959e443d326 100644 (file)
@@ -56,15 +56,7 @@ extern "C" {
    comma and then the length of the string.  Doing this by hand
    is error prone, so using this macro is safer.  */
 #define STRING_COMMA_LEN(STR) (STR), (sizeof (STR) - 1)
-/* Unfortunately it is not possible to use the STRING_COMMA_LEN macro
-   to create the arguments to another macro, since the preprocessor
-   will mis-count the number of arguments to the outer macro (by not
-   evaluating STRING_COMMA_LEN and so missing the comma).  This is a
-   problem for example when trying to use STRING_COMMA_LEN to build
-   the arguments to the strncmp() macro.  Hence this alternative
-   definition of strncmp is provided here.
-
-   Note - these macros do NOT work if STR2 is not a constant string.  */
+
   /* strcpy() can have a similar problem, but since we know we are
      copying a constant string, we can use memcpy which will be faster
      since there is no need to check for a NUL byte inside STR.  We
@@ -72,7 +64,6 @@ extern "C" {
 #define LITMEMCPY(DEST,STR2) memcpy ((DEST), (STR2), sizeof (STR2) - 1)
 #define LITSTRCPY(DEST,STR2) memcpy ((DEST), (STR2), sizeof (STR2))
 
-
 #define BFD_SUPPORTS_PLUGINS @supports_plugins@
 
 /* The word size used by BFD on the host.  This may be 64 with a 32
@@ -571,4 +562,3 @@ startswith (const char *str, const char *prefix)
 {
   return strncmp (str, prefix, strlen (prefix)) == 0;
 }
-#define CONST_STRNEQ(STR1,STR2) startswith (STR1, STR2)
index c8bf687ba2db54c02daa1fe6d2deff33c965f0ea..8874da88afdaf60321d47beedc27fdba3799d11c 100644 (file)
@@ -63,15 +63,7 @@ extern "C" {
    comma and then the length of the string.  Doing this by hand
    is error prone, so using this macro is safer.  */
 #define STRING_COMMA_LEN(STR) (STR), (sizeof (STR) - 1)
-/* Unfortunately it is not possible to use the STRING_COMMA_LEN macro
-   to create the arguments to another macro, since the preprocessor
-   will mis-count the number of arguments to the outer macro (by not
-   evaluating STRING_COMMA_LEN and so missing the comma).  This is a
-   problem for example when trying to use STRING_COMMA_LEN to build
-   the arguments to the strncmp() macro.  Hence this alternative
-   definition of strncmp is provided here.
-
-   Note - these macros do NOT work if STR2 is not a constant string.  */
+
   /* strcpy() can have a similar problem, but since we know we are
      copying a constant string, we can use memcpy which will be faster
      since there is no need to check for a NUL byte inside STR.  We
@@ -79,7 +71,6 @@ extern "C" {
 #define LITMEMCPY(DEST,STR2) memcpy ((DEST), (STR2), sizeof (STR2) - 1)
 #define LITSTRCPY(DEST,STR2) memcpy ((DEST), (STR2), sizeof (STR2))
 
-
 #define BFD_SUPPORTS_PLUGINS @supports_plugins@
 
 /* The word size used by BFD on the host.  This may be 64 with a 32
@@ -578,7 +569,6 @@ startswith (const char *str, const char *prefix)
 {
   return strncmp (str, prefix, strlen (prefix)) == 0;
 }
-#define CONST_STRNEQ(STR1,STR2) startswith (STR1, STR2)
 /* Extracted from init.c.  */
 unsigned int bfd_init (void);
 
index 2c6208578630c51651b680b01944eb69bd29a35f..757fa5f281932845ce3c5bd6fa40477b6ba5d99f 100644 (file)
--- a/bfd/bfd.c
+++ b/bfd/bfd.c
@@ -1746,7 +1746,7 @@ bfd_get_sign_extend_vma (bfd *abfd)
      no place to store this information in the COFF back end.
      Should enough other COFF targets add support for DWARF2,
      a place will have to be found.  Until then, this hack will do.  */
-  if (CONST_STRNEQ (name, "coff-go32")
+  if (startswith (name, "coff-go32")
       || strcmp (name, "pe-i386") == 0
       || strcmp (name, "pei-i386") == 0
       || strcmp (name, "pe-x86-64") == 0
@@ -1757,7 +1757,7 @@ bfd_get_sign_extend_vma (bfd *abfd)
       || strcmp (name, "aix5coff64-rs6000") == 0)
     return 1;
 
-  if (CONST_STRNEQ (name, "mach-o"))
+  if (startswith (name, "mach-o"))
     return 0;
 
   bfd_set_error (bfd_error_wrong_format);
@@ -2660,7 +2660,7 @@ bfd_convert_section_size (bfd *ibfd, sec_ptr isec, bfd *obfd,
     return size;
 
   /* Convert GNU property size.  */
-  if (CONST_STRNEQ (isec->name, NOTE_GNU_PROPERTY_SECTION_NAME))
+  if (startswith (isec->name, NOTE_GNU_PROPERTY_SECTION_NAME))
     return _bfd_elf_convert_gnu_property_size (ibfd, obfd);
 
   /* Do nothing if input file will be decompressed.  */
@@ -2718,7 +2718,7 @@ bfd_convert_section_contents (bfd *ibfd, sec_ptr isec, bfd *obfd,
     return TRUE;
 
   /* Convert GNU properties.  */
-  if (CONST_STRNEQ (isec->name, NOTE_GNU_PROPERTY_SECTION_NAME))
+  if (startswith (isec->name, NOTE_GNU_PROPERTY_SECTION_NAME))
     return _bfd_elf_convert_gnu_properties (ibfd, isec, obfd, ptr,
                                            ptr_size);
 
index 7593b62e8e69a1664720c7eb05acba07b35d3187..8f75eecf4ee15546829147c1e472281f404518bb 100644 (file)
@@ -176,7 +176,7 @@ go32exe_create_stub (bfd *abfd)
          close (f);
          goto stub_end;
        }
-      if (! CONST_STRNEQ (magic, "go32stub"))
+      if (! startswith (magic, "go32stub"))
        {
          close (f);
          goto stub_end;
@@ -306,7 +306,7 @@ go32exe_check_format (bfd *abfd)
   header_end = H_GET_16 (abfd, filehdr_dos.e_cparhdr) * 16UL;
   if (go32exe_temp_stub_size < header_end
       || go32exe_temp_stub_size - header_end < sizeof "go32stub" - 1
-      || !CONST_STRNEQ (go32exe_temp_stub + header_end, "go32stub"))
+      || !startswith (go32exe_temp_stub + header_end, "go32stub"))
     goto fail_format;
 
   /* Set origin to where the COFF header starts and seek there.  */
index bcd34d469b63435a3868cdbc1a0abc4525f9b5c3..d1ad669a6db72b2602b9b66509c93f904c1a910f 100644 (file)
@@ -527,8 +527,8 @@ sec_to_styp_flags (const char *sec_name, flagword sec_flags)
       styp_flags = STYP_LIT;
 #endif /* _LIT */
     }
-  else if (CONST_STRNEQ (sec_name, DOT_DEBUG)
-          || CONST_STRNEQ (sec_name, DOT_ZDEBUG))
+  else if (startswith (sec_name, DOT_DEBUG)
+          || startswith (sec_name, DOT_ZDEBUG))
     {
       /* Handle the XCOFF debug section and DWARF2 debug sections.  */
       if (!sec_name[6])
@@ -536,13 +536,13 @@ sec_to_styp_flags (const char *sec_name, flagword sec_flags)
       else
        styp_flags = STYP_DEBUG_INFO;
     }
-  else if (CONST_STRNEQ (sec_name, ".stab"))
+  else if (startswith (sec_name, ".stab"))
     {
       styp_flags = STYP_DEBUG_INFO;
     }
 #ifdef COFF_LONG_SECTION_NAMES
-  else if (CONST_STRNEQ (sec_name, GNU_LINKONCE_WI)
-          || CONST_STRNEQ (sec_name, GNU_LINKONCE_WT))
+  else if (startswith (sec_name, GNU_LINKONCE_WI)
+          || startswith (sec_name, GNU_LINKONCE_WT))
     {
       styp_flags = STYP_DEBUG_INFO;
     }
@@ -642,13 +642,13 @@ sec_to_styp_flags (const char *sec_name, flagword sec_flags)
   long styp_flags = 0;
   bfd_boolean is_dbg = FALSE;
 
-  if (CONST_STRNEQ (sec_name, DOT_DEBUG)
-      || CONST_STRNEQ (sec_name, DOT_ZDEBUG)
+  if (startswith (sec_name, DOT_DEBUG)
+      || startswith (sec_name, DOT_ZDEBUG)
 #ifdef COFF_LONG_SECTION_NAMES
-      || CONST_STRNEQ (sec_name, GNU_LINKONCE_WI)
-      || CONST_STRNEQ (sec_name, GNU_LINKONCE_WT)
+      || startswith (sec_name, GNU_LINKONCE_WI)
+      || startswith (sec_name, GNU_LINKONCE_WT)
 #endif
-      || CONST_STRNEQ (sec_name, ".stab"))
+      || startswith (sec_name, ".stab"))
     is_dbg = TRUE;
 
   /* caution: there are at least three groups of symbols that have
@@ -843,16 +843,16 @@ styp_to_sec_flags (bfd *abfd,
 #endif
        sec_flags |= SEC_ALLOC;
     }
-  else if (CONST_STRNEQ (name, DOT_DEBUG)
-          || CONST_STRNEQ (name, DOT_ZDEBUG)
+  else if (startswith (name, DOT_DEBUG)
+          || startswith (name, DOT_ZDEBUG)
 #ifdef _COMMENT
           || strcmp (name, _COMMENT) == 0
 #endif
 #ifdef COFF_LONG_SECTION_NAMES
-          || CONST_STRNEQ (name, GNU_LINKONCE_WI)
-          || CONST_STRNEQ (name, GNU_LINKONCE_WT)
+          || startswith (name, GNU_LINKONCE_WI)
+          || startswith (name, GNU_LINKONCE_WT)
 #endif
-          || CONST_STRNEQ (name, ".stab"))
+          || startswith (name, ".stab"))
     {
 #ifdef COFF_PAGE_SIZE
       sec_flags |= SEC_DEBUGGING;
@@ -880,8 +880,8 @@ styp_to_sec_flags (bfd *abfd,
 #endif /* STYP_SDATA */
 
   if ((bfd_applicable_section_flags (abfd) & SEC_SMALL_DATA) != 0
-      && (CONST_STRNEQ (name, ".sbss")
-         || CONST_STRNEQ (name, ".sdata")))
+      && (startswith (name, ".sbss")
+         || startswith (name, ".sdata")))
     sec_flags |= SEC_SMALL_DATA;
 
 #if defined (COFF_LONG_SECTION_NAMES) && defined (COFF_SUPPORT_GNU_LINKONCE)
@@ -891,7 +891,7 @@ styp_to_sec_flags (bfd *abfd,
      The symbols will be defined as weak, so that multiple definitions
      are permitted.  The GNU linker extension is to actually discard
      all but one of the sections.  */
-  if (CONST_STRNEQ (name, ".gnu.linkonce"))
+  if (startswith (name, ".gnu.linkonce"))
     sec_flags |= SEC_LINK_ONCE | SEC_LINK_DUPLICATES_DISCARD;
 #endif
 
@@ -1203,18 +1203,18 @@ styp_to_sec_flags (bfd *abfd,
   bfd_boolean result = TRUE;
   bfd_boolean is_dbg = FALSE;
 
-  if (CONST_STRNEQ (name, DOT_DEBUG)
-      || CONST_STRNEQ (name, DOT_ZDEBUG)
+  if (startswith (name, DOT_DEBUG)
+      || startswith (name, DOT_ZDEBUG)
 #ifdef COFF_LONG_SECTION_NAMES
-      || CONST_STRNEQ (name, GNU_LINKONCE_WI)
-      || CONST_STRNEQ (name, GNU_LINKONCE_WT)
+      || startswith (name, GNU_LINKONCE_WI)
+      || startswith (name, GNU_LINKONCE_WT)
       /* FIXME: These definitions ought to be in a header file.  */
 #define GNU_DEBUGLINK          ".gnu_debuglink"
 #define GNU_DEBUGALTLINK       ".gnu_debugaltlink"
-      || CONST_STRNEQ (name, GNU_DEBUGLINK)
-      || CONST_STRNEQ (name, GNU_DEBUGALTLINK)
+      || startswith (name, GNU_DEBUGLINK)
+      || startswith (name, GNU_DEBUGALTLINK)
 #endif
-      || CONST_STRNEQ (name, ".stab"))
+      || startswith (name, ".stab"))
     is_dbg = TRUE;
   /* Assume read only unless IMAGE_SCN_MEM_WRITE is specified.  */
   sec_flags = SEC_READONLY;
@@ -1347,8 +1347,8 @@ styp_to_sec_flags (bfd *abfd,
     }
 
   if ((bfd_applicable_section_flags (abfd) & SEC_SMALL_DATA) != 0
-      && (CONST_STRNEQ (name, ".sbss")
-         || CONST_STRNEQ (name, ".sdata")))
+      && (startswith (name, ".sbss")
+         || startswith (name, ".sdata")))
     sec_flags |= SEC_SMALL_DATA;
 
 #if defined (COFF_LONG_SECTION_NAMES) && defined (COFF_SUPPORT_GNU_LINKONCE)
@@ -1358,7 +1358,7 @@ styp_to_sec_flags (bfd *abfd,
      The symbols will be defined as weak, so that multiple definitions
      are permitted.  The GNU linker extension is to actually discard
      all but one of the sections.  */
-  if (CONST_STRNEQ (name, ".gnu.linkonce"))
+  if (startswith (name, ".gnu.linkonce"))
     sec_flags |= SEC_LINK_ONCE | SEC_LINK_DUPLICATES_DISCARD;
 #endif
 
@@ -1679,7 +1679,7 @@ Special entry points for gdb to swap in coff symbol table parts:
 .{* Macro: Returns true if the bfd is a PE executable as opposed to a
 .   PE object file.  *}
 .#define bfd_pei_p(abfd) \
-.  (CONST_STRNEQ ((abfd)->xvec->name, "pei-"))
+.  (startswith ((abfd)->xvec->name, "pei-"))
 */
 
 /* See whether the magic number matches.  */
index 526e26c662ac55e6beae01dc3b28dab589e7f5b1..f493978815e0d91a94e5c45baeba2cacb37a9cc0 100644 (file)
@@ -2635,7 +2635,7 @@ _bfd_coff_section_already_linked (bfd *abfd,
     key = s_comdat->name;
   else
     {
-      if (CONST_STRNEQ (name, ".gnu.linkonce.")
+      if (startswith (name, ".gnu.linkonce.")
          && (key = strchr (name + sizeof (".gnu.linkonce.") - 1, '.')) != NULL)
        key++;
       else
@@ -2995,10 +2995,10 @@ coff_gc_sweep (bfd *abfd ATTRIBUTE_UNUSED, struct bfd_link_info *info)
          if ((o->flags & (SEC_DEBUGGING | SEC_LINKER_CREATED)) != 0
              || (o->flags & (SEC_ALLOC | SEC_LOAD | SEC_RELOC)) == 0)
            o->gc_mark = 1;
-         else if (CONST_STRNEQ (o->name, ".idata")
-                  || CONST_STRNEQ (o->name, ".pdata")
-                  || CONST_STRNEQ (o->name, ".xdata")
-                  || CONST_STRNEQ (o->name, ".rsrc"))
+         else if (startswith (o->name, ".idata")
+                  || startswith (o->name, ".pdata")
+                  || startswith (o->name, ".xdata")
+                  || startswith (o->name, ".rsrc"))
            o->gc_mark = 1;
 
          if (o->gc_mark)
@@ -3109,9 +3109,9 @@ bfd_coff_gc_sections (bfd *abfd ATTRIBUTE_UNUSED, struct bfd_link_info *info)
       for (o = sub->sections; o != NULL; o = o->next)
        {
          if (((o->flags & (SEC_EXCLUDE | SEC_KEEP)) == SEC_KEEP
-              || CONST_STRNEQ (o->name, ".vectors")
-              || CONST_STRNEQ (o->name, ".ctors")
-              || CONST_STRNEQ (o->name, ".dtors"))
+              || startswith (o->name, ".vectors")
+              || startswith (o->name, ".ctors")
+              || startswith (o->name, ".dtors"))
              && !o->gc_mark)
            {
              if (!_bfd_coff_gc_mark (info, o, _bfd_coff_gc_mark_hook))
index 874354a70d00c06579072cb9dfa3e689228c9e1e..05c6fff746c8f371774956fa6884258cae375590 100644 (file)
@@ -397,7 +397,7 @@ coff_link_add_symbols (bfd *abfd,
                  || classification == COFF_SYMBOL_PE_SECTION)
              && coff_section_data (abfd, section) != NULL
              && coff_section_data (abfd, section)->comdat != NULL
-             && CONST_STRNEQ (name, "??_")
+             && startswith (name, "??_")
              && strcmp (name, coff_section_data (abfd, section)->comdat->name) == 0)
            {
              if (*sym_hash == NULL)
@@ -546,7 +546,7 @@ coff_link_add_symbols (bfd *abfd,
          asection *stab;
 
          for (stab = abfd->sections; stab; stab = stab->next)
-           if (CONST_STRNEQ (stab->name, ".stab")
+           if (startswith (stab->name, ".stab")
                && (!stab->name[5]
                    || (stab->name[5] == '.' && ISDIGIT (stab->name[6]))))
            {
@@ -1274,7 +1274,7 @@ process_embedded_commands (bfd *output_bfd,
          s++;
          continue;
        }
-      if (CONST_STRNEQ (s, "-attr"))
+      if (startswith (s, "-attr"))
        {
          char *name;
          char *attribs;
@@ -1314,14 +1314,14 @@ process_embedded_commands (bfd *output_bfd,
                asec->flags |= SEC_READONLY;
            }
        }
-      else if (CONST_STRNEQ (s, "-heap"))
+      else if (startswith (s, "-heap"))
        s = dores_com (s + 5, output_bfd, 1);
 
-      else if (CONST_STRNEQ (s, "-stack"))
+      else if (startswith (s, "-stack"))
        s = dores_com (s + 6, output_bfd, 0);
 
       /* GNU extension for aligned commons.  */
-      else if (CONST_STRNEQ (s, "-aligncomm:"))
+      else if (startswith (s, "-aligncomm:"))
        {
          /* Common symbols must be aligned on reading, as it
          is too late to do anything here, after they have
index 2e73c760e757f108821620d4cc39e2eb9680afce..054ea08bb14fc6d4f7f42623fa6a752fca593ba1 100644 (file)
@@ -431,7 +431,7 @@ bfd_is_section_compressed_with_header (bfd *abfd, sec_ptr sec,
       if (compression_header_size == 0)
        /* In this case, it should be "ZLIB" followed by the uncompressed
           section size, 8 bytes in big-endian order.  */
-       compressed = CONST_STRNEQ ((char*) header , "ZLIB");
+       compressed = startswith ((char*) header , "ZLIB");
       else
        compressed = TRUE;
     }
@@ -536,7 +536,7 @@ bfd_init_section_decompress_status (bfd *abfd, sec_ptr sec)
     {
       /* In this case, it should be "ZLIB" followed by the uncompressed
         section size, 8 bytes in big-endian order.  */
-      if (! CONST_STRNEQ ((char*) header, "ZLIB"))
+      if (! startswith ((char*) header, "ZLIB"))
        {
          bfd_set_error (bfd_error_wrong_format);
          return FALSE;
index 1d5ddef332933d1da54ee81801479d4bb7d314c1..9f895b1a20a7b43d550180aba5df1073150b297f 100644 (file)
@@ -4234,7 +4234,7 @@ find_debug_info (bfd *abfd, const struct dwarf_debug_section *debug_sections,
        }
 
       for (msec = abfd->sections; msec != NULL; msec = msec->next)
-       if (CONST_STRNEQ (msec->name, GNU_LINKONCE_INFO))
+       if (startswith (msec->name, GNU_LINKONCE_INFO))
          return msec;
 
       return NULL;
@@ -4250,7 +4250,7 @@ find_debug_info (bfd *abfd, const struct dwarf_debug_section *debug_sections,
       if (look != NULL && strcmp (msec->name, look) == 0)
        return msec;
 
-      if (CONST_STRNEQ (msec->name, GNU_LINKONCE_INFO))
+      if (startswith (msec->name, GNU_LINKONCE_INFO))
        return msec;
     }
 
@@ -4375,7 +4375,7 @@ place_sections (bfd *orig_bfd, struct dwarf2_debug *stash)
            continue;
 
          is_debug_info = (strcmp (sect->name, debug_info_name) == 0
-                          || CONST_STRNEQ (sect->name, GNU_LINKONCE_INFO));
+                          || startswith (sect->name, GNU_LINKONCE_INFO));
 
          if (!((sect->flags & SEC_ALLOC) != 0 && abfd == orig_bfd)
              && !is_debug_info)
@@ -4419,7 +4419,7 @@ place_sections (bfd *orig_bfd, struct dwarf2_debug *stash)
                continue;
 
              is_debug_info = (strcmp (sect->name, debug_info_name) == 0
-                              || CONST_STRNEQ (sect->name, GNU_LINKONCE_INFO));
+                              || startswith (sect->name, GNU_LINKONCE_INFO));
 
              if (!((sect->flags & SEC_ALLOC) != 0 && abfd == orig_bfd)
                  && !is_debug_info)
index 98a00e5da63d15fbbdf52b2346f16d9b7bfb801b..dc12b180adbf322136d3b0795687aa23bc0dd574 100644 (file)
@@ -2866,7 +2866,7 @@ _bfd_ecoff_slurp_armap (bfd *abfd)
      bfd_slurp_armap, but that seems inappropriate since no other
      target uses this format.  Instead, we check directly for a COFF
      armap.  */
-  if (CONST_STRNEQ (nextname, "/               "))
+  if (startswith (nextname, "/               "))
     return bfd_slurp_armap (abfd);
 
   /* See if the first element is an armap.  */
index 32aa0be568d0fd3913754ce8a139d3bc3abe8d26..752c1210c27bba0bfb3443738af5ad00a70ebc10 100644 (file)
@@ -5070,7 +5070,7 @@ _bfd_mn10300_elf_size_dynamic_sections (bfd * output_bfd,
          /* Remember whether there is a PLT.  */
          ;
        }
-      else if (CONST_STRNEQ (name, ".rela"))
+      else if (startswith (name, ".rela"))
        {
          if (s->size != 0)
            {
@@ -5084,7 +5084,7 @@ _bfd_mn10300_elf_size_dynamic_sections (bfd * output_bfd,
              s->reloc_count = 0;
            }
        }
-      else if (! CONST_STRNEQ (name, ".got")
+      else if (! startswith (name, ".got")
               && ! streq (name, ".dynbss"))
        /* It's not one of our sections, so don't allocate space.  */
        continue;
index 381951da12cc6ee865a2396e7fe9a61b4989eda1..3f9927072ef6fc05124c11eb7a28e417f3443120 100644 (file)
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -1113,7 +1113,7 @@ _bfd_elf_make_section_from_shdr (bfd *abfd,
      The symbols will be defined as weak, so that multiple definitions
      are permitted.  The GNU linker extension is to actually discard
      all but one of the sections.  */
-  if (CONST_STRNEQ (name, ".gnu.linkonce")
+  if (startswith (name, ".gnu.linkonce")
       && elf_next_in_group (newsect) == NULL)
     flags |= SEC_LINK_ONCE | SEC_LINK_DUPLICATES_DISCARD;
 
@@ -3942,7 +3942,7 @@ assign_section_numbers (bfd *abfd, struct bfd_link_info *link_info)
             string section.  We look for a section with the same name
             but without the trailing ``str'', and set its sh_link
             field to point to this section.  */
-         if (CONST_STRNEQ (sec->name, ".stab")
+         if (startswith (sec->name, ".stab")
              && strcmp (sec->name + strlen (sec->name) - 3, "str") == 0)
            {
              size_t len;
@@ -10190,7 +10190,7 @@ elfcore_grok_win32pstatus (bfd *abfd, Elf_Internal_Note *note)
   if (note->descsz < 4)
     return TRUE;
 
-  if (! CONST_STRNEQ (note->namedata, "win32"))
+  if (! startswith (note->namedata, "win32"))
     return TRUE;
 
   type = bfd_get_32 (abfd, note->descdata);
index d3b412c710af71fd7b77fd9cc5665b5a681e085b..bf0be0c881e538a3e7c6a9bd1cba89b60cb10775 100644 (file)
@@ -5961,7 +5961,7 @@ cmse_scan (bfd *input_bfd, struct elf32_arm_link_hash_table *htab,
          sym_name = bfd_elf_string_from_elf_section (input_bfd,
                                                      symtab_hdr->sh_link,
                                                      cmse_sym->st_name);
-         if (!sym_name || !CONST_STRNEQ (sym_name, CMSE_PREFIX))
+         if (!sym_name || !startswith (sym_name, CMSE_PREFIX))
            continue;
 
          /* Special symbol with local binding.  */
@@ -5971,7 +5971,7 @@ cmse_scan (bfd *input_bfd, struct elf32_arm_link_hash_table *htab,
        {
          cmse_hash = elf32_arm_hash_entry (sym_hashes[i - ext_start]);
          sym_name = (char *) cmse_hash->root.root.root.string;
-         if (!CONST_STRNEQ (sym_name, CMSE_PREFIX))
+         if (!startswith (sym_name, CMSE_PREFIX))
            continue;
 
          /* Special symbol has incorrect binding or type.  */
@@ -15847,7 +15847,7 @@ elf32_arm_gc_mark_extra_sections (struct bfd_link_info *info,
 
                  /* Assume it is a special symbol.  If not, cmse_scan will
                     warn about it and user can do something about it.  */
-                 if (CONST_STRNEQ (cmse_hash->root.root.root.string,
+                 if (startswith (cmse_hash->root.root.root.string,
                                    CMSE_PREFIX))
                    {
                      cmse_sec = cmse_hash->root.root.u.def.section;
@@ -16902,7 +16902,7 @@ elf32_arm_size_dynamic_sections (bfd * output_bfd ATTRIBUTE_UNUSED,
          /* Remember whether there is a PLT.  */
          ;
        }
-      else if (CONST_STRNEQ (name, ".rel"))
+      else if (startswith (name, ".rel"))
        {
          if (s->size != 0)
            {
@@ -17564,8 +17564,8 @@ elf32_arm_final_write_processing (bfd *abfd)
 static bfd_boolean
 is_arm_elf_unwind_section_name (bfd * abfd ATTRIBUTE_UNUSED, const char * name)
 {
-  return (CONST_STRNEQ (name, ELF_STRING_ARM_unwind)
-         || CONST_STRNEQ (name, ELF_STRING_ARM_unwind_once));
+  return (startswith (name, ELF_STRING_ARM_unwind)
+         || startswith (name, ELF_STRING_ARM_unwind_once));
 }
 
 
index 401683c536792ab1156dd941eca2631b027b8ba2..a0cb1661b9a5dddb90bb63b958703b1fba47da2a 100644 (file)
@@ -5186,7 +5186,7 @@ bfin_size_dynamic_sections (bfd * output_bfd ATTRIBUTE_UNUSED,
 
       strip = FALSE;
 
-       if (CONST_STRNEQ (name, ".rela"))
+       if (startswith (name, ".rela"))
        {
          if (s->size == 0)
            {
@@ -5210,7 +5210,7 @@ bfin_size_dynamic_sections (bfd * output_bfd ATTRIBUTE_UNUSED,
              s->reloc_count = 0;
            }
        }
-      else if (! CONST_STRNEQ (name, ".got"))
+      else if (! startswith (name, ".got"))
        {
          /* It's not one of our sections, so don't allocate space.  */
          continue;
index 9c101cbf9f72fa88e413692c924022393470b5e0..4c327d511ed7c96af7b30475042a572c4d5f1473 100644 (file)
@@ -2439,7 +2439,7 @@ _bfd_cr16_elf_size_dynamic_sections (bfd * output_bfd,
          /* Remember whether there is a PLT.  */
          ;
        }
-      else if (CONST_STRNEQ (name, ".rela"))
+      else if (startswith (name, ".rela"))
        {
          if (s->size != 0)
            {
@@ -2453,7 +2453,7 @@ _bfd_cr16_elf_size_dynamic_sections (bfd * output_bfd,
              s->reloc_count = 0;
            }
        }
-      else if (! CONST_STRNEQ (name, ".got")
+      else if (! startswith (name, ".got")
               && strcmp (name, ".dynbss") != 0)
        /* It's not one of our sections, so don't allocate space.  */
        continue;
index 0228920e1fdb3416d76a4c9e93fb638c47b863dd..080f95849b065dfce6a536e94b41b5d1454e1e38 100644 (file)
@@ -3593,7 +3593,7 @@ elf_cris_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
          s->size += htab->dtpmod_refcount != 0
            ? 8 : 0;
        }
-      else if (CONST_STRNEQ (name, ".rela"))
+      else if (startswith (name, ".rela"))
        {
          if (strcmp (name, ".rela.got") == 0
              && htab->dtpmod_refcount != 0
@@ -3612,7 +3612,7 @@ elf_cris_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
              s->reloc_count = 0;
            }
        }
-      else if (! CONST_STRNEQ (name, ".got")
+      else if (! startswith (name, ".got")
               && strcmp (name, ".dynbss") != 0
               && s != htab->root.sdynrelro)
        {
index 0b776e5fd8fadc9bebd27417c978054d7092ad18..4e6db39cf409066e504394b812160524903c4e10 100644 (file)
@@ -2045,7 +2045,7 @@ csky_elf_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
          if (htab->elf.hplt != NULL)
            strip_section = FALSE;
        }
-      else if (CONST_STRNEQ (bfd_section_name (s), ".rel") )
+      else if (startswith (bfd_section_name (s), ".rel") )
        {
          if (s->size != 0 )
            relocs = TRUE;
index e47af49b230f105f63347007c711294aeb4bb4a7..ec354c88ff24696886704b6a140fbf53ee04df29 100644 (file)
@@ -2232,7 +2232,7 @@ elf32_hppa_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
               || sec == htab->etab.sdynbss
               || sec == htab->etab.sdynrelro)
        ;
-      else if (CONST_STRNEQ (bfd_section_name (sec), ".rela"))
+      else if (startswith (bfd_section_name (sec), ".rela"))
        {
          if (sec->size != 0)
            {
index e17b0c646ae90e98f07b321bed2926ae45d844ed..b29be24878e7d15a10f26bb26a347c9217ebaa9b 100644 (file)
@@ -507,9 +507,9 @@ iq2000_elf_check_relocs (bfd *abfd,
 
        case R_IQ2000_32:
          /* For debug section, change to special harvard-aware relocations.  */
-         if (CONST_STRNEQ (sec->name, ".debug")
-             || CONST_STRNEQ (sec->name, ".stab")
-             || CONST_STRNEQ (sec->name, ".eh_frame"))
+         if (startswith (sec->name, ".debug")
+             || startswith (sec->name, ".stab")
+             || startswith (sec->name, ".eh_frame"))
            {
              ((Elf_Internal_Rela *) rel)->r_info
                = ELF32_R_INFO (ELF32_R_SYM (rel->r_info), R_IQ2000_32_DEBUG);
index fa0b2fcfff3efbd9b1363828d94e1b371e5713d2..9d72150ccc1a525a09ee5bd98152988d0092256e 100644 (file)
@@ -2020,7 +2020,7 @@ lm32_elf_size_dynamic_sections (bfd *output_bfd,
          /* Strip this section if we don't need it; see the
             comment below.  */
        }
-      else if (CONST_STRNEQ (bfd_section_name (s), ".rela"))
+      else if (startswith (bfd_section_name (s), ".rela"))
        {
          if (s->size != 0 && s != htab->root.srelplt)
            relocs = TRUE;
index e73bbdeeff271ed6156b2d817918abd2e2bc5ec3..95e0c17bc5c71dad45bda76e45e07323916594e6 100644 (file)
@@ -2073,7 +2073,7 @@ m32r_elf_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
          /* Strip this section if we don't need it; see the
             comment below.  */
        }
-      else if (CONST_STRNEQ (bfd_section_name (s), ".rela"))
+      else if (startswith (bfd_section_name (s), ".rela"))
        {
          if (s->size != 0 && s != htab->srelplt)
            relocs = TRUE;
index 16aa591851825d30cc81c83ef83bc3f503c7126d..f2222d0ed68f24165407c252c666e412070cdd03 100644 (file)
@@ -3171,7 +3171,7 @@ elf_m68k_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
          /* Remember whether there is a PLT.  */
          ;
        }
-      else if (CONST_STRNEQ (name, ".rela"))
+      else if (startswith (name, ".rela"))
        {
          if (s->size != 0)
            {
@@ -3182,7 +3182,7 @@ elf_m68k_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
              s->reloc_count = 0;
            }
        }
-      else if (! CONST_STRNEQ (name, ".got")
+      else if (! startswith (name, ".got")
               && strcmp (name, ".dynbss") != 0)
        {
          /* It's not one of our sections, so don't allocate space.  */
index 65453639768665062d4f18053bcc1cbdf096dd83..ac6d37977cc0565675b3440d2c6d853a9e322366 100644 (file)
@@ -2847,7 +2847,7 @@ elf_metag_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
          /* Strip this section if we don't need it; see the
             comment below.  */
        }
-      else if (CONST_STRNEQ (bfd_section_name (s), ".rela"))
+      else if (startswith (bfd_section_name (s), ".rela"))
        {
          if (s->size != 0 && s != htab->etab.srelplt)
            relocs = TRUE;
index 1aafa844b55791eabc70a6d1ee382c4d6937b42d..eebe74a6791031be5fd16b364d50d22f1cac2e57 100644 (file)
@@ -1855,8 +1855,8 @@ msp430_elf_relax_delete_bytes (bfd * abfd, asection * sec, bfd_vma addr,
                 the start of the next section.  */
              || (isym->st_value == toaddr
                  && name != NULL
-                 && (CONST_STRNEQ (name, ".Letext")
-                     || CONST_STRNEQ (name, ".LFE")))))
+                 && (startswith (name, ".Letext")
+                     || startswith (name, ".LFE")))))
        {
          if (debug_relocs)
            printf ("      adjusting value of local symbol %s from 0x%lx ",
index c1727ccac0c1425b7647a88e60ff8e4fc8c34578..c925bc975e71894756ee0f01df6e0a133ec5e26c 100644 (file)
@@ -5825,7 +5825,7 @@ nios2_elf32_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
         of the dynobj section names depend upon the input files.  */
       name = bfd_section_name (s);
 
-      if (CONST_STRNEQ (name, ".rela"))
+      if (startswith (name, ".rela"))
        {
          if (s->size != 0)
            {
index 65938e51378d2c68b60769ba7d6f5443f18bea5d..82a5b4ac8e255b0f54fe6ed6fde081134319a2da 100644 (file)
@@ -3034,7 +3034,7 @@ or1k_elf_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
          /* Strip this section if we don't need it; see the
             comment below.  */
        }
-      else if (CONST_STRNEQ (bfd_section_name (s), ".rela"))
+      else if (startswith (bfd_section_name (s), ".rela"))
        {
          if (s->size != 0 && s != htab->root.srelplt)
            relocs = TRUE;
index 65f59a39d25d71623dafbc97edb5711c7b1d7a02..fe8b6fdb7d1bfcdca27c3e6b913bdf1689e1f945 100644 (file)
@@ -5812,7 +5812,7 @@ ppc_elf_size_dynamic_sections (bfd *output_bfd,
        {
          strip_section = (s->flags & SEC_KEEP) == 0;
        }
-      else if (CONST_STRNEQ (bfd_section_name (s), ".rela"))
+      else if (startswith (bfd_section_name (s), ".rela"))
        {
          if (s->size != 0)
            {
index 0cc1edb79297d7c93dcebdb628c35540ae29d84e..55e61031a04c491262471d3dca0f6952808cbcd4 100644 (file)
@@ -1919,7 +1919,7 @@ elf_s390_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
          /* Strip this section if we don't need it; see the
             comment below.  */
        }
-      else if (CONST_STRNEQ (bfd_section_name (s), ".rela"))
+      else if (startswith (bfd_section_name (s), ".rela"))
        {
          if (s->size != 0)
            relocs = TRUE;
index 50c7405c32a918e367a8db33b52309c55062f889..e34169e989f576766993259974b9337867ceadb3 100644 (file)
@@ -3282,7 +3282,7 @@ s3_bfd_score_elf_size_dynamic_sections (bfd *output_bfd, struct bfd_link_info *i
         of the dynobj section names depend upon the input files.  */
       name = bfd_section_name (s);
 
-      if (CONST_STRNEQ (name, ".rel"))
+      if (startswith (name, ".rel"))
        {
          if (s->size == 0)
            {
@@ -3320,7 +3320,7 @@ s3_bfd_score_elf_size_dynamic_sections (bfd *output_bfd, struct bfd_link_info *i
                s->reloc_count = 0;
            }
        }
-      else if (CONST_STRNEQ (name, ".got"))
+      else if (startswith (name, ".got"))
        {
          /* s3_bfd_score_elf_always_size_sections() has already done
             most of the work, but some symbols may have been mapped
@@ -3333,7 +3333,7 @@ s3_bfd_score_elf_size_dynamic_sections (bfd *output_bfd, struct bfd_link_info *i
             of .text section. So put a dummy. XXX  */
          s->size += SCORE_FUNCTION_STUB_SIZE;
        }
-      else if (! CONST_STRNEQ (name, ".init"))
+      else if (! startswith (name, ".init"))
        {
          /* It's not one of our sections, so don't allocate space.  */
          continue;
index 2f63ab8cd5b85dbacb013aa222fbb9f5714968c1..9e1b7dae0cb415f84fc2318c4816e3448cb21855 100644 (file)
@@ -3090,7 +3090,7 @@ s7_bfd_score_elf_size_dynamic_sections (bfd *output_bfd, struct bfd_link_info *i
         of the dynobj section names depend upon the input files.  */
       name = bfd_section_name (s);
 
-      if (CONST_STRNEQ (name, ".rel"))
+      if (startswith (name, ".rel"))
        {
          if (s->size == 0)
            {
@@ -3128,7 +3128,7 @@ s7_bfd_score_elf_size_dynamic_sections (bfd *output_bfd, struct bfd_link_info *i
                s->reloc_count = 0;
            }
        }
-      else if (CONST_STRNEQ (name, ".got"))
+      else if (startswith (name, ".got"))
        {
          /* s7_bfd_score_elf_always_size_sections() has already done
             most of the work, but some symbols may have been mapped
@@ -3141,7 +3141,7 @@ s7_bfd_score_elf_size_dynamic_sections (bfd *output_bfd, struct bfd_link_info *i
             of .text section. So put a dummy. XXX  */
          s->size += SCORE_FUNCTION_STUB_SIZE;
        }
-      else if (! CONST_STRNEQ (name, ".init"))
+      else if (! startswith (name, ".init"))
        {
          /* It's not one of our sections, so don't allocate space.  */
          continue;
index 19375b06a433a2207837b33c54de83b034ed14ed..10145505c3e9e9dcfec89ef94e5fac2d1e7a2e3b 100644 (file)
@@ -3152,7 +3152,7 @@ sh_elf_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
          /* Strip this section if we don't need it; see the
             comment below.  */
        }
-      else if (CONST_STRNEQ (bfd_section_name (s), ".rela"))
+      else if (startswith (bfd_section_name (s), ".rela"))
        {
          if (s->size != 0 && s != htab->root.srelplt && s != htab->srelplt2)
            relocs = TRUE;
index 3d0640e12d115e6d372897735fde248f1dab8f1b..53ec572fab9e40fd01796269651d1dbd98732a3d 100644 (file)
@@ -1938,8 +1938,8 @@ elf32_tic6x_gc_mark_extra_sections (struct bfd_link_info *info,
 static bfd_boolean
 is_tic6x_elf_unwind_section_name (const char *name)
 {
-  return (CONST_STRNEQ (name, ELF_STRING_C6000_unwind)
-         || CONST_STRNEQ (name, ELF_STRING_C6000_unwind_once));
+  return (startswith (name, ELF_STRING_C6000_unwind)
+         || startswith (name, ELF_STRING_C6000_unwind_once));
 }
 
 
@@ -3284,7 +3284,7 @@ elf32_tic6x_size_dynamic_sections (bfd *output_bfd, struct bfd_link_info *info)
          if (s == htab->elf.splt && s->size > 0)
            s->size = (s->size + 31) & ~(bfd_vma)31;
        }
-      else if (CONST_STRNEQ (bfd_section_name (s), ".rela"))
+      else if (startswith (bfd_section_name (s), ".rela"))
        {
          if (s->size != 0
              && s != htab->elf.srelplt)
index c7fe7f2f600883f0096c3251a0ac9f85f19449c3..ff83062a37aa6e09ff3f3cc06b1c394faa2373df 100644 (file)
@@ -1082,7 +1082,7 @@ elf_vax_size_dynamic_sections (bfd *output_bfd, struct bfd_link_info *info)
          /* Remember whether there is a PLT.  */
          ;
        }
-      else if (CONST_STRNEQ (name, ".rela"))
+      else if (startswith (name, ".rela"))
        {
          if (s->size != 0)
            {
@@ -1094,7 +1094,7 @@ elf_vax_size_dynamic_sections (bfd *output_bfd, struct bfd_link_info *info)
              s->reloc_count = 0;
            }
        }
-      else if (! CONST_STRNEQ (name, ".got")
+      else if (! startswith (name, ".got")
               && strcmp (name, ".dynbss") != 0)
        {
          /* It's not one of our sections, so don't allocate space.  */
index 6338bc98e820339a05a549b60bd58a3d8d26ce32..abc244c04cb0989048505af1b6e05f797a13a2de 100644 (file)
@@ -1691,7 +1691,7 @@ elf_xtensa_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
         of the dynobj section names depend upon the input files.  */
       name = bfd_section_name (s);
 
-      if (CONST_STRNEQ (name, ".rela"))
+      if (startswith (name, ".rela"))
        {
          if (s->size != 0)
            {
@@ -1705,8 +1705,8 @@ elf_xtensa_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
              s->reloc_count = 0;
            }
        }
-      else if (! CONST_STRNEQ (name, ".plt.")
-              && ! CONST_STRNEQ (name, ".got.plt.")
+      else if (! startswith (name, ".plt.")
+              && ! startswith (name, ".got.plt.")
               && strcmp (name, ".got") != 0
               && strcmp (name, ".plt") != 0
               && strcmp (name, ".got.plt") != 0
@@ -11144,8 +11144,8 @@ xtensa_is_property_section (asection *sec)
 static bfd_boolean
 xtensa_is_insntable_section (asection *sec)
 {
-  if (CONST_STRNEQ (sec->name, XTENSA_INSN_SEC_NAME)
-      || CONST_STRNEQ (sec->name, ".gnu.linkonce.x."))
+  if (startswith (sec->name, XTENSA_INSN_SEC_NAME)
+      || startswith (sec->name, ".gnu.linkonce.x."))
     return TRUE;
 
   return FALSE;
@@ -11155,8 +11155,8 @@ xtensa_is_insntable_section (asection *sec)
 static bfd_boolean
 xtensa_is_littable_section (asection *sec)
 {
-  if (CONST_STRNEQ (sec->name, XTENSA_LIT_SEC_NAME)
-      || CONST_STRNEQ (sec->name, ".gnu.linkonce.p."))
+  if (startswith (sec->name, XTENSA_LIT_SEC_NAME)
+      || startswith (sec->name, ".gnu.linkonce.p."))
     return TRUE;
 
   return FALSE;
@@ -11166,8 +11166,8 @@ xtensa_is_littable_section (asection *sec)
 static bfd_boolean
 xtensa_is_proptable_section (asection *sec)
 {
-  if (CONST_STRNEQ (sec->name, XTENSA_PROP_SEC_NAME)
-      || CONST_STRNEQ (sec->name, ".gnu.linkonce.prop."))
+  if (startswith (sec->name, XTENSA_PROP_SEC_NAME)
+      || startswith (sec->name, ".gnu.linkonce.prop."))
     return TRUE;
 
   return FALSE;
@@ -11281,7 +11281,7 @@ xtensa_property_section_name (asection *sec, const char *base_name,
       suffix = sec->name + linkonce_len;
       /* For backward compatibility, replace "t." instead of inserting
         the new linkonce_kind (but not for "prop" sections).  */
-      if (CONST_STRNEQ (suffix, "t.") && linkonce_kind[1] == '.')
+      if (startswith (suffix, "t.") && linkonce_kind[1] == '.')
        suffix += 2;
       strcat (prop_sec_name + linkonce_len, suffix);
     }
@@ -11396,7 +11396,7 @@ xtensa_callback_required_dependence (bfd *abfd,
   /* ".plt*" sections have no explicit relocations but they contain L32R
      instructions that reference the corresponding ".got.plt*" sections.  */
   if ((sec->flags & SEC_LINKER_CREATED) != 0
-      && CONST_STRNEQ (sec->name, ".plt"))
+      && startswith (sec->name, ".plt"))
     {
       asection *sgotplt;
 
index 3d214374753433df9802b72aac890ea183d72532..6fffc438fc4da1b0507968610b8aebc95a322614 100644 (file)
@@ -2859,7 +2859,7 @@ elf64_alpha_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
         of the dynobj section names depend upon the input files.  */
       name = bfd_section_name (s);
 
-      if (CONST_STRNEQ (name, ".rela"))
+      if (startswith (name, ".rela"))
        {
          if (s->size != 0)
            {
@@ -2873,7 +2873,7 @@ elf64_alpha_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
              s->reloc_count = 0;
            }
        }
-      else if (! CONST_STRNEQ (name, ".got")
+      else if (! startswith (name, ".got")
               && strcmp (name, ".plt") != 0
               && strcmp (name, ".dynbss") != 0)
        {
@@ -2890,7 +2890,7 @@ elf64_alpha_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
             linker does that before adjust_dynamic_symbol is called, and
             it is that function which decides whether anything needs to
             go into these sections.  */
-         if (!CONST_STRNEQ (name, ".got"))
+         if (!startswith (name, ".got"))
            s->flags |= SEC_EXCLUDE;
        }
       else if ((s->flags & SEC_HAS_CONTENTS) != 0)
index 50782fe2c4c02b49362e45e9a4f098d7a50db339..0ce85cced143b89870febd26ae7c0f7233736acf 100644 (file)
@@ -1754,13 +1754,13 @@ elf64_hppa_size_dynamic_sections (bfd *output_bfd, struct bfd_link_info *info)
          ;
        }
       else if (strcmp (name, ".opd") == 0
-              || CONST_STRNEQ (name, ".dlt")
+              || startswith (name, ".dlt")
               || strcmp (name, ".stub") == 0
               || strcmp (name, ".got") == 0)
        {
          /* Strip this section if we don't need it; see the comment below.  */
        }
-      else if (CONST_STRNEQ (name, ".rela"))
+      else if (startswith (name, ".rela"))
        {
          if (sec->size != 0)
            {
index b69c9cde7f1e0cd6f124ad11e3ecfaaf2578a183..317253fb9a61696ab7762d3b6feba7bad83e64b8 100644 (file)
@@ -809,9 +809,9 @@ elf64_ia64_relax_section (bfd *abfd, asection *sec,
 static inline bfd_boolean
 is_unwind_section_name (bfd *abfd ATTRIBUTE_UNUSED, const char *name)
 {
-  return ((CONST_STRNEQ (name, ELF_STRING_ia64_unwind)
-          && ! CONST_STRNEQ (name, ELF_STRING_ia64_unwind_info))
-         || CONST_STRNEQ (name, ELF_STRING_ia64_unwind_once));
+  return ((startswith (name, ELF_STRING_ia64_unwind)
+          && ! startswith (name, ELF_STRING_ia64_unwind_info))
+         || startswith (name, ELF_STRING_ia64_unwind_once));
 }
 
 
@@ -1847,9 +1847,9 @@ get_reloc_section (bfd *abfd,
   if (srel_name == NULL)
     return NULL;
 
-  BFD_ASSERT ((CONST_STRNEQ (srel_name, ".rela")
+  BFD_ASSERT ((startswith (srel_name, ".rela")
               && strcmp (bfd_section_name (sec), srel_name+5) == 0)
-             || (CONST_STRNEQ (srel_name, ".rel")
+             || (startswith (srel_name, ".rel")
                  && strcmp (bfd_section_name (sec), srel_name+4) == 0));
 
   dynobj = ia64_info->root.dynobj;
@@ -2745,7 +2745,7 @@ elf64_ia64_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
 
          if (strcmp (name, ".got.plt") == 0)
            strip = FALSE;
-         else if (CONST_STRNEQ (name, ".rel"))
+         else if (startswith (name, ".rel"))
            {
              if (!strip)
                {
@@ -4387,7 +4387,7 @@ elf64_ia64_object_p (bfd *abfd)
       if (elf_sec_group (sec) == NULL
          && ((sec->flags & (SEC_LINK_ONCE | SEC_CODE | SEC_GROUP))
              == (SEC_LINK_ONCE | SEC_CODE))
-         && CONST_STRNEQ (sec->name, ".gnu.linkonce.t."))
+         && startswith (sec->name, ".gnu.linkonce.t."))
        {
          name = sec->name + 16;
 
index f87b26e4929a3191a8652f6a98543aa5e37a7834..62365e1e4f79924cad96d005a483847595ea06be 100644 (file)
@@ -2139,7 +2139,7 @@ mmix_elf_add_symbol_hook (bfd *abfd,
       (*secp)->flags |= SEC_LINKER_CREATED;
     }
   else if ((*namep)[0] == '_' && (*namep)[1] == '_' && (*namep)[2] == '.'
-          && CONST_STRNEQ (*namep, MMIX_LOC_SECTION_START_SYMBOL_PREFIX))
+          && startswith (*namep, MMIX_LOC_SECTION_START_SYMBOL_PREFIX))
     {
       /* See if we have another one.  */
       struct bfd_link_hash_entry *h = bfd_link_hash_lookup (info->hash,
index ab0e0d33aac8ea1bf404fbb14fb69b094f1fbfdf..741f510a28d8359b1a53509a727dc0e7d818b407 100644 (file)
@@ -10226,7 +10226,7 @@ ppc64_elf_size_dynamic_sections (bfd *output_bfd,
            /* Not sized yet.  */
            continue;
        }
-      else if (CONST_STRNEQ (s->name, ".rela"))
+      else if (startswith (s->name, ".rela"))
        {
          if (s->size != 0)
            {
index 69a011f7c9343e6a804a9673c1c2b0be5d20c1c0..01dcefed48e41e5a5ccdb34fcee2c2de520e72d1 100644 (file)
@@ -1873,7 +1873,7 @@ elf_s390_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
          /* Strip this section if we don't need it; see the
             comment below.  */
        }
-      else if (CONST_STRNEQ (bfd_section_name (s), ".rela"))
+      else if (startswith (bfd_section_name (s), ".rela"))
        {
          if (s->size != 0 && s != htab->elf.srelplt)
            relocs = TRUE;
index 69362670667586d8448b41bd14fe5954d135f8ee..c5db406f2b4ba47568c2ec704d9a6cf05660eda3 100644 (file)
@@ -4129,7 +4129,7 @@ elf_link_add_object_symbols (bfd *abfd, struct bfd_link_info *info)
       const char *name;
 
       name = bfd_section_name (s);
-      if (CONST_STRNEQ (name, ".gnu.warning."))
+      if (startswith (name, ".gnu.warning."))
        {
          char *msg;
          bfd_size_type sz;
@@ -5693,7 +5693,7 @@ elf_link_add_object_symbols (bfd *abfd, struct bfd_link_info *info)
          asection *stab;
 
          for (stab = abfd->sections; stab; stab = stab->next)
-           if (CONST_STRNEQ (stab->name, ".stab")
+           if (startswith (stab->name, ".stab")
                && (!stab->name[5] ||
                    (stab->name[5] == '.' && ISDIGIT (stab->name[6])))
                && (stab->flags & SEC_MERGE) == 0
@@ -13698,7 +13698,7 @@ _bfd_elf_gc_mark_extra_sections (struct bfd_link_info *info,
 
          if (!debug_frag_seen
              && (isec->flags & SEC_DEBUGGING)
-             && CONST_STRNEQ (isec->name, ".debug_line."))
+             && startswith (isec->name, ".debug_line."))
            debug_frag_seen = TRUE;
          else if (strcmp (bfd_section_name (isec),
                           "__patchable_function_entries") == 0
@@ -14015,7 +14015,7 @@ bfd_elf_parse_eh_frame_entries (bfd *abfd ATTRIBUTE_UNUSED,
 
       for (sec = ibfd->sections; sec; sec = sec->next)
        {
-         if (CONST_STRNEQ (bfd_section_name (sec), ".eh_frame_entry")
+         if (startswith (bfd_section_name (sec), ".eh_frame_entry")
              && init_reloc_cookie_rels (&cookie, info, ibfd, sec))
            {
              _bfd_elf_parse_eh_frame_entry (info, sec, &cookie);
@@ -14722,7 +14722,7 @@ _bfd_elf_section_already_linked (bfd *abfd,
   else
     {
       /* Otherwise we should have a .gnu.linkonce.<type>.<key> section.  */
-      if (CONST_STRNEQ (name, ".gnu.linkonce.")
+      if (startswith (name, ".gnu.linkonce.")
          && (key = strchr (name + sizeof (".gnu.linkonce.") - 1, '.')) != NULL)
        key++;
       else
@@ -14821,10 +14821,10 @@ _bfd_elf_section_already_linked (bfd *abfd,
      `.gnu.linkonce.r.F' section.  The order of sections in a bfd does not
      matter as here were are looking only for cross-bfd sections.  */
 
-  if ((flags & SEC_GROUP) == 0 && CONST_STRNEQ (name, ".gnu.linkonce.r."))
+  if ((flags & SEC_GROUP) == 0 && startswith (name, ".gnu.linkonce.r."))
     for (l = already_linked_list->entry; l != NULL; l = l->next)
       if ((l->sec->flags & SEC_GROUP) == 0
-         && CONST_STRNEQ (l->sec->name, ".gnu.linkonce.t."))
+         && startswith (l->sec->name, ".gnu.linkonce.t."))
        {
          if (abfd != l->sec->owner)
            sec->output_section = bfd_abs_section_ptr;
index 1ec405ef1e00456371f6b301b6e1c63306cc753b..2fee93aa5f95ace156a25d6488e01d2a8c7648d9 100644 (file)
@@ -9047,7 +9047,7 @@ elfNN_aarch64_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
          /* Strip this section if we don't need it; see the
             comment below.  */
        }
-      else if (CONST_STRNEQ (bfd_section_name (s), ".rela"))
+      else if (startswith (bfd_section_name (s), ".rela"))
        {
          if (s->size != 0 && s != htab->root.srelplt)
            relocs = TRUE;
index aaa69c4b2cd86d738453c23624c68d16ada0a237..281a8375d511c04c3c5a9e8163f49c269e73e965 100644 (file)
@@ -893,9 +893,9 @@ is_unwind_section_name (bfd *abfd, const char *name)
       && !strcmp (name, ELF_STRING_ia64_unwind_hdr))
     return FALSE;
 
-  return ((CONST_STRNEQ (name, ELF_STRING_ia64_unwind)
-          && ! CONST_STRNEQ (name, ELF_STRING_ia64_unwind_info))
-         || CONST_STRNEQ (name, ELF_STRING_ia64_unwind_once));
+  return ((startswith (name, ELF_STRING_ia64_unwind)
+          && ! startswith (name, ELF_STRING_ia64_unwind_info))
+         || startswith (name, ELF_STRING_ia64_unwind_once));
 }
 
 /* Handle an IA-64 specific section when reading an object file.  This
@@ -3161,7 +3161,7 @@ elfNN_ia64_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
 
          if (strcmp (name, ".got.plt") == 0)
            strip = FALSE;
-         else if (CONST_STRNEQ (name, ".rel"))
+         else if (startswith (name, ".rel"))
            {
              if (!strip)
                {
@@ -4859,7 +4859,7 @@ elfNN_ia64_object_p (bfd *abfd)
       if (elf_sec_group (sec) == NULL
          && ((sec->flags & (SEC_LINK_ONCE | SEC_CODE | SEC_GROUP))
              == (SEC_LINK_ONCE | SEC_CODE))
-         && CONST_STRNEQ (sec->name, ".gnu.linkonce.t."))
+         && startswith (sec->name, ".gnu.linkonce.t."))
        {
          name = sec->name + 16;
 
index 86e15b61edf592d4ffe4f5e28befb5837f39260b..41abf4954dc20ca297f4cc84e5043bcaae488da7 100644 (file)
@@ -1030,9 +1030,9 @@ static bfd *reldyn_sorting_bfd;
 #define CALL_STUB ".mips16.call."
 #define CALL_FP_STUB ".mips16.call.fp."
 
-#define FN_STUB_P(name) CONST_STRNEQ (name, FN_STUB)
-#define CALL_STUB_P(name) CONST_STRNEQ (name, CALL_STUB)
-#define CALL_FP_STUB_P(name) CONST_STRNEQ (name, CALL_FP_STUB)
+#define FN_STUB_P(name) startswith (name, FN_STUB)
+#define CALL_STUB_P(name) startswith (name, CALL_STUB)
+#define CALL_FP_STUB_P(name) startswith (name, CALL_FP_STUB)
 \f
 /* The format of the first PLT entry in an O32 executable.  */
 static const bfd_vma mips_o32_exec_plt0_entry[] =
@@ -7411,7 +7411,7 @@ _bfd_mips_elf_section_from_shdr (bfd *abfd,
        return FALSE;
       break;
     case SHT_MIPS_GPTAB:
-      if (! CONST_STRNEQ (name, ".gptab."))
+      if (! startswith (name, ".gptab."))
        return FALSE;
       break;
     case SHT_MIPS_UCODE:
@@ -7434,7 +7434,7 @@ _bfd_mips_elf_section_from_shdr (bfd *abfd,
        return FALSE;
       break;
     case SHT_MIPS_CONTENT:
-      if (! CONST_STRNEQ (name, ".MIPS.content"))
+      if (! startswith (name, ".MIPS.content"))
        return FALSE;
       break;
     case SHT_MIPS_OPTIONS:
@@ -7447,8 +7447,8 @@ _bfd_mips_elf_section_from_shdr (bfd *abfd,
       flags = (SEC_LINK_ONCE | SEC_LINK_DUPLICATES_SAME_SIZE);
       break;
     case SHT_MIPS_DWARF:
-      if (! CONST_STRNEQ (name, ".debug_")
-         && ! CONST_STRNEQ (name, ".zdebug_"))
+      if (! startswith (name, ".debug_")
+         && ! startswith (name, ".zdebug_"))
        return FALSE;
       break;
     case SHT_MIPS_SYMBOL_LIB:
@@ -7456,8 +7456,8 @@ _bfd_mips_elf_section_from_shdr (bfd *abfd,
        return FALSE;
       break;
     case SHT_MIPS_EVENTS:
-      if (! CONST_STRNEQ (name, ".MIPS.events")
-         && ! CONST_STRNEQ (name, ".MIPS.post_rel"))
+      if (! startswith (name, ".MIPS.events")
+         && ! startswith (name, ".MIPS.post_rel"))
        return FALSE;
       break;
     case SHT_MIPS_XHASH:
@@ -7594,7 +7594,7 @@ _bfd_mips_elf_fake_sections (bfd *abfd, Elf_Internal_Shdr *hdr, asection *sec)
     }
   else if (strcmp (name, ".conflict") == 0)
     hdr->sh_type = SHT_MIPS_CONFLICT;
-  else if (CONST_STRNEQ (name, ".gptab."))
+  else if (startswith (name, ".gptab."))
     {
       hdr->sh_type = SHT_MIPS_GPTAB;
       hdr->sh_entsize = sizeof (Elf32_External_gptab);
@@ -7651,7 +7651,7 @@ _bfd_mips_elf_fake_sections (bfd *abfd, Elf_Internal_Shdr *hdr, asection *sec)
       hdr->sh_type = SHT_MIPS_IFACE;
       hdr->sh_flags |= SHF_MIPS_NOSTRIP;
     }
-  else if (CONST_STRNEQ (name, ".MIPS.content"))
+  else if (startswith (name, ".MIPS.content"))
     {
       hdr->sh_type = SHT_MIPS_CONTENT;
       hdr->sh_flags |= SHF_MIPS_NOSTRIP;
@@ -7663,20 +7663,20 @@ _bfd_mips_elf_fake_sections (bfd *abfd, Elf_Internal_Shdr *hdr, asection *sec)
       hdr->sh_entsize = 1;
       hdr->sh_flags |= SHF_MIPS_NOSTRIP;
     }
-  else if (CONST_STRNEQ (name, ".MIPS.abiflags"))
+  else if (startswith (name, ".MIPS.abiflags"))
     {
       hdr->sh_type = SHT_MIPS_ABIFLAGS;
       hdr->sh_entsize = sizeof (Elf_External_ABIFlags_v0);
     }
-  else if (CONST_STRNEQ (name, ".debug_")
-          || CONST_STRNEQ (name, ".zdebug_"))
+  else if (startswith (name, ".debug_")
+          || startswith (name, ".zdebug_"))
     {
       hdr->sh_type = SHT_MIPS_DWARF;
 
       /* Irix facilities such as libexc expect a single .debug_frame
         per executable, the system ones have NOSTRIP set and the linker
         doesn't merge sections with different flags so ...  */
-      if (SGI_COMPAT (abfd) && CONST_STRNEQ (name, ".debug_frame"))
+      if (SGI_COMPAT (abfd) && startswith (name, ".debug_frame"))
        hdr->sh_flags |= SHF_MIPS_NOSTRIP;
     }
   else if (strcmp (name, ".MIPS.symlib") == 0)
@@ -7685,8 +7685,8 @@ _bfd_mips_elf_fake_sections (bfd *abfd, Elf_Internal_Shdr *hdr, asection *sec)
       /* The sh_link and sh_info fields are set in
         final_write_processing.  */
     }
-  else if (CONST_STRNEQ (name, ".MIPS.events")
-          || CONST_STRNEQ (name, ".MIPS.post_rel"))
+  else if (startswith (name, ".MIPS.events")
+          || startswith (name, ".MIPS.post_rel"))
     {
       hdr->sh_type = SHT_MIPS_EVENTS;
       hdr->sh_flags |= SHF_MIPS_NOSTRIP;
@@ -10007,7 +10007,7 @@ _bfd_mips_elf_size_dynamic_sections (bfd *output_bfd,
       if ((s->flags & SEC_LINKER_CREATED) == 0)
        continue;
 
-      if (CONST_STRNEQ (name, ".rel"))
+      if (startswith (name, ".rel"))
        {
          if (s->size != 0)
            {
@@ -10044,14 +10044,14 @@ _bfd_mips_elf_size_dynamic_sections (bfd *output_bfd,
        }
       else if (bfd_link_executable (info)
               && ! mips_elf_hash_table (info)->use_rld_obj_head
-              && CONST_STRNEQ (name, ".rld_map"))
+              && startswith (name, ".rld_map"))
        {
          /* We add a room for __rld_map.  It will be filled in by the
             rtld to contain a pointer to the _r_debug structure.  */
          s->size += MIPS_ELF_RLD_MAP_SIZE (output_bfd);
        }
       else if (SGI_COMPAT (output_bfd)
-              && CONST_STRNEQ (name, ".compact_rel"))
+              && startswith (name, ".compact_rel"))
        s->size += mips_elf_hash_table (info)->compact_rel_size;
       else if (s == htab->root.splt)
        {
@@ -10063,7 +10063,7 @@ _bfd_mips_elf_size_dynamic_sections (bfd *output_bfd,
              && s->size > 0)
            s->size += 4;
        }
-      else if (! CONST_STRNEQ (name, ".init")
+      else if (! startswith (name, ".init")
               && s != htab->root.sgot
               && s != htab->root.sgotplt
               && s != htab->sstubs
@@ -12422,7 +12422,7 @@ _bfd_mips_final_write_processing (bfd *abfd)
          BFD_ASSERT ((*hdrpp)->bfd_section != NULL);
          name = bfd_section_name ((*hdrpp)->bfd_section);
          BFD_ASSERT (name != NULL
-                     && CONST_STRNEQ (name, ".gptab."));
+                     && startswith (name, ".gptab."));
          sec = bfd_get_section_by_name (abfd, name + sizeof ".gptab" - 1);
          BFD_ASSERT (sec != NULL);
          (*hdrpp)->sh_info = elf_section_data (sec)->this_idx;
@@ -12432,7 +12432,7 @@ _bfd_mips_final_write_processing (bfd *abfd)
          BFD_ASSERT ((*hdrpp)->bfd_section != NULL);
          name = bfd_section_name ((*hdrpp)->bfd_section);
          BFD_ASSERT (name != NULL
-                     && CONST_STRNEQ (name, ".MIPS.content"));
+                     && startswith (name, ".MIPS.content"));
          sec = bfd_get_section_by_name (abfd,
                                         name + sizeof ".MIPS.content" - 1);
          BFD_ASSERT (sec != NULL);
@@ -12452,12 +12452,12 @@ _bfd_mips_final_write_processing (bfd *abfd)
          BFD_ASSERT ((*hdrpp)->bfd_section != NULL);
          name = bfd_section_name ((*hdrpp)->bfd_section);
          BFD_ASSERT (name != NULL);
-         if (CONST_STRNEQ (name, ".MIPS.events"))
+         if (startswith (name, ".MIPS.events"))
            sec = bfd_get_section_by_name (abfd,
                                           name + sizeof ".MIPS.events" - 1);
          else
            {
-             BFD_ASSERT (CONST_STRNEQ (name, ".MIPS.post_rel"));
+             BFD_ASSERT (startswith (name, ".MIPS.post_rel"));
              sec = bfd_get_section_by_name (abfd,
                                             (name
                                              + sizeof ".MIPS.post_rel" - 1));
@@ -15085,7 +15085,7 @@ _bfd_mips_elf_final_link (bfd *abfd, struct bfd_link_info *info)
          mdebug_sec = o;
        }
 
-      if (CONST_STRNEQ (o->name, ".gptab."))
+      if (startswith (o->name, ".gptab."))
        {
          const char *subname;
          unsigned int c;
index bbf129c86e3931eae1fe907a21494930f61419e1..c498d1cb70ba59d680cb1e708ff4273bdcf1f4b1 100644 (file)
@@ -2540,7 +2540,7 @@ _bfd_sparc_elf_size_dynamic_sections (bfd *output_bfd,
          /* Strip this section if we don't need it; see the
             comment below.  */
        }
-      else if (CONST_STRNEQ (s->name, ".rela"))
+      else if (startswith (s->name, ".rela"))
        {
          if (s->size != 0)
            {
index 93ad38c5eb0a9f212b11efcf05d5aee171587be0..6ff9fd56ee732a36e35fd0207bee346392d9f01a 100644 (file)
@@ -686,13 +686,13 @@ elf_x86_link_hash_table_free (bfd *obfd)
 static bfd_boolean
 elf_i386_is_reloc_section (const char *secname)
 {
-  return CONST_STRNEQ (secname, ".rel");
+  return startswith (secname, ".rel");
 }
 
 static bfd_boolean
 elf_x86_64_is_reloc_section (const char *secname)
 {
-  return CONST_STRNEQ (secname, ".rela");
+  return startswith (secname, ".rela");
 }
 
 /* Create an x86 ELF linker hash table.  */
index 03d0de338227f3cbd8580f9815af051a134495c9..d84df68c823b7422ad66fdd1c875dd5e328c0bfe 100644 (file)
@@ -145,7 +145,7 @@ thread_section_p (bfd *abfd ATTRIBUTE_UNUSED,
                  asection *sect,
                  void *obj ATTRIBUTE_UNUSED)
 {
-  return CONST_STRNEQ (sect->name, ".reg/");
+  return startswith (sect->name, ".reg/");
 }
 
 /* this function builds a bfd target if the file is a corefile.
index bb9066f5ec52d358f9bb93f03541475cb70e2b26..f2ce3c5e0ca6c2fc162537af30dc967b8329993d 100644 (file)
@@ -977,7 +977,7 @@ typedef struct
 /* Macro: Returns true if the bfd is a PE executable as opposed to a
    PE object file.  */
 #define bfd_pei_p(abfd) \
-  (CONST_STRNEQ ((abfd)->xvec->name, "pei-"))
+  (startswith ((abfd)->xvec->name, "pei-"))
 #ifdef __cplusplus
 }
 #endif
index 7e0415cbed276016dc844f8e38bcebe0a4238631..6f6e68429267da83cfef0b63913b0004380f75d4 100644 (file)
@@ -579,7 +579,7 @@ bfd_wrapped_link_hash_lookup (bfd *abfd,
 #define REAL "__real_"
 
       if (*l == '_'
-         && CONST_STRNEQ (l, REAL)
+         && startswith (l, REAL)
          && bfd_hash_lookup (info->wrap_hash, l + sizeof REAL - 1,
                              FALSE, FALSE) != NULL)
        {
@@ -623,7 +623,7 @@ unwrap_hash_lookup (struct bfd_link_info *info,
       || *l == info->wrap_char)
     ++l;
 
-  if (CONST_STRNEQ (l, WRAP))
+  if (startswith (l, WRAP))
     {
       l += sizeof WRAP - 1;
 
@@ -964,7 +964,7 @@ _bfd_generic_link_add_archive_symbols
 
          if (h == NULL
              && info->pei386_auto_import
-             && CONST_STRNEQ (arsym->name, "__imp_"))
+             && startswith (arsym->name, "__imp_"))
            h = bfd_link_hash_lookup (info->hash, arsym->name + 6,
                                      FALSE, FALSE, TRUE);
          if (h == NULL)
@@ -1536,7 +1536,7 @@ _bfd_generic_link_add_one_symbol (struct bfd_link_info *info,
                s = name + 1;
                while (*s == '_')
                  ++s;
-               if (s[0] == 'G' && CONST_STRNEQ (s, CONS_PREFIX))
+               if (s[0] == 'G' && startswith (s, CONS_PREFIX))
                  {
                    char c;
 
index 4ba62d0bc69377db7651c1ee0215c024ed897487..53883a31843c0168e9dbd7f42eaee0c6dfef009a 100644 (file)
--- a/bfd/mmo.c
+++ b/bfd/mmo.c
@@ -2505,7 +2505,7 @@ mmo_internal_write_section (bfd *abfd, asection *sec)
       bfd_set_error (bfd_error_bad_value);
       return FALSE;
     }
-  else if (CONST_STRNEQ (sec->name, MMIX_OTHER_SPEC_SECTION_PREFIX))
+  else if (startswith (sec->name, MMIX_OTHER_SPEC_SECTION_PREFIX))
     {
       int n = atoi (sec->name + strlen (MMIX_OTHER_SPEC_SECTION_PREFIX));
 
index 17cc532396a31e274809bdcf999549078f768362..999796753f5d5825cd70d49928dc750db1b58d96 100644 (file)
@@ -84,7 +84,7 @@ osf_core_core_file_p (bfd *abfd)
   if (val != sizeof core_header)
     return NULL;
 
-  if (! CONST_STRNEQ (core_header.magic, "Core"))
+  if (! startswith (core_header.magic, "Core"))
     return NULL;
 
   core_hdr (abfd) = (struct osf_core_struct *)
index 93bc933eec1ee727cab3934b52e9884e28570afd..c9304115f6d91c7b741b7dc42aa42a6d4f76997f 100644 (file)
--- a/bfd/pef.c
+++ b/bfd/pef.c
@@ -219,7 +219,7 @@ bfd_pef_print_symbol (bfd *abfd,
     default:
       bfd_print_symbol_vandf (abfd, (void *) file, symbol);
       fprintf (file, " %-5s %s", symbol->section->name, symbol->name);
-      if (CONST_STRNEQ (symbol->name, "__traceback_"))
+      if (startswith (symbol->name, "__traceback_"))
        {
          unsigned char *buf;
          size_t offset = symbol->value + 4;
index 6ce808a2c8c03b202c95405b9bf649b8e995f445..85c0ca2113b4e6fe6c60ed694e80d70dc8dde264 100644 (file)
@@ -835,7 +835,7 @@ static void
 pex64_print_all_pdata_sections (bfd *abfd, asection *pdata, void *arg)
 {
   struct pex64_paps *paps = arg;
-  if (CONST_STRNEQ (pdata->name, ".pdata"))
+  if (startswith (pdata->name, ".pdata"))
     {
       if (pex64_bfd_print_pdata_section (abfd, paps->obj, pdata))
        paps->pdata_count++;
index 872e93341d15df72eff76da5250383e11a0de31f..01bcd16cc1eb8a0748e08977c4312c268cf024e7 100644 (file)
--- a/bfd/som.c
+++ b/bfd/som.c
@@ -4803,12 +4803,12 @@ som_slurp_symbol_table (bfd *abfd)
          && sym->symbol.name[strlen (sym->symbol.name) - 1] == '$'
          && !strcmp (sym->symbol.name, sym->symbol.section->name))
        sym->symbol.flags |= BSF_SECTION_SYM;
-      else if (CONST_STRNEQ (sym->symbol.name, "L$0\002"))
+      else if (startswith (sym->symbol.name, "L$0\002"))
        {
          sym->symbol.flags |= BSF_SECTION_SYM;
          sym->symbol.name = sym->symbol.section->name;
        }
-      else if (CONST_STRNEQ (sym->symbol.name, "L$0\001"))
+      else if (startswith (sym->symbol.name, "L$0\001"))
        sym->symbol.flags |= BSF_DEBUGGING;
 
       /* Note increment at bottom of loop, since we skip some symbols
@@ -6186,7 +6186,7 @@ som_slurp_armap (bfd *abfd)
     return FALSE;
 
   /* For archives without .o files there is no symbol table.  */
-  if (! CONST_STRNEQ (nextname, "/               "))
+  if (! startswith (nextname, "/               "))
     {
       abfd->has_armap = FALSE;
       return TRUE;
index a8f65479af904c199dffbc807da8c1d19e5169fc..da9616e3c97141fe2cfc6ff476ac0af62450bddb 100644 (file)
@@ -536,7 +536,7 @@ wasm_compute_custom_section_file_position (bfd *abfd,
   if (idx != 0)
     return;
 
-  if (CONST_STRNEQ (asect->name, WASM_SECTION_PREFIX))
+  if (startswith (asect->name, WASM_SECTION_PREFIX))
     {
       const char *name = asect->name + strlen (WASM_SECTION_PREFIX);
       bfd_size_type payload_len = asect->size;
index c6f7963ae915094a9b836ad20cac5a5de72008ea..461a1f5c66e83cc53947bcf66a337d104c69b97f 100644 (file)
@@ -1,3 +1,17 @@
+2021-03-22  Martin Liska  <mliska@suse.cz>
+
+       * dlltool.c (scan_drectve_symbols): Replace usage of CONST_STRNEQ with startswith.
+       * emul_aix.c (ar_emul_aix_parse_arg): Likewise.
+       * objcopy.c (is_mergeable_note_section): Likewise.
+       * objdump.c (dump_dwarf_section): Likewise.
+       * prdbg.c (pr_method_type): Likewise.
+       (pr_class_baseclass): Likewise.
+       (tg_class_baseclass): Likewise.
+       * readelf.c (process_lto_symbol_tables): Likewise.
+       * stabs.c (ULLHIGH): Likewise.
+       (parse_stab_argtypes): Likewise.
+       (stab_demangle_function_name): Likewise.
+
 2021-03-19  H.J. Lu  <hongjiu.lu@intel.com>
 
        * readelf.c (get_machine_name): Add EM_INTELGT.
index 3d44a0b9630302ae9f60763267bd47f438083bf6..ca31df964ef53946c302831da9ad2300d38b081d 100644 (file)
@@ -1367,7 +1367,7 @@ scan_drectve_symbols (bfd *abfd)
   while (p < e)
     {
       if (p[0] == '-'
-         && CONST_STRNEQ (p, "-export:"))
+         && startswith (p, "-export:"))
        {
          char * name;
          char * c;
@@ -1399,7 +1399,7 @@ scan_drectve_symbols (bfd *abfd)
              char *tag_start = ++p;
              while (p < e && *p != ' ' && *p != '-')
                p++;
-             if (CONST_STRNEQ (tag_start, "data"))
+             if (startswith (tag_start, "data"))
                flags &= ~BSF_FUNCTION;
            }
 
index 5be8f3891c5844394c9653a5feb2aef3bbaf12f1..c11c28bd030dec952d96def3d1bf9af9983c8a92 100644 (file)
@@ -91,25 +91,25 @@ ar_emul_aix_replace (bfd **after_bfd, bfd *new_bfd,
 static bfd_boolean
 ar_emul_aix_parse_arg (char *arg)
 {
-  if (CONST_STRNEQ (arg, "-X32_64"))
+  if (startswith (arg, "-X32_64"))
     {
       big_archive = TRUE;
       X32 = TRUE;
       X64 = TRUE;
     }
-  else if (CONST_STRNEQ (arg, "-X32"))
+  else if (startswith (arg, "-X32"))
     {
       big_archive = TRUE;
       X32 = TRUE;
       X64 = FALSE;
     }
-  else if (CONST_STRNEQ (arg, "-X64"))
+  else if (startswith (arg, "-X64"))
     {
       big_archive = TRUE;
       X32 = FALSE;
       X64 = TRUE;
     }
-  else if (CONST_STRNEQ (arg, "-g"))
+  else if (startswith (arg, "-g"))
     {
       big_archive = FALSE;
       X32 = TRUE;
index d58f910f2fa7c0d1238db09df43c14cae96a3320..f5e48e80d08ebc46732fe1a77b22c508886dd7b5 100644 (file)
@@ -1316,7 +1316,7 @@ is_mergeable_note_section (bfd * abfd, asection * sec)
       && elf_section_data (sec)->this_hdr.sh_type == SHT_NOTE
       /* FIXME: We currently only support merging GNU_BUILD_NOTEs.
         We should add support for more note types.  */
-      && (CONST_STRNEQ (sec->name, GNU_BUILD_ATTRS_SECTION_NAME)))
+      && (startswith (sec->name, GNU_BUILD_ATTRS_SECTION_NAME)))
     return TRUE;
 
   return FALSE;
index 0aa037384c6d8d3315d0fd3a02fe1c7b22f7d0cb..cb5ce5b057c1d18093563ad62f20eb15a68f1030 100644 (file)
@@ -3748,7 +3748,7 @@ dump_dwarf_section (bfd *abfd, asection *section,
   const char *match;
   int i;
 
-  if (CONST_STRNEQ (name, ".gnu.linkonce.wi."))
+  if (startswith (name, ".gnu.linkonce.wi."))
     match = ".debug_info";
   else
     match = name;
index a93dccd544d334e5de002da2023bc43d8eb1eecd..614d7f918f573cecef0f7b52fa300464b11ab724 100644 (file)
@@ -937,10 +937,10 @@ pr_method_type (void *p, bfd_boolean domain, int argcount, bfd_boolean varargs)
       domain_type = pop_type (info);
       if (domain_type == NULL)
        return FALSE;
-      if (CONST_STRNEQ (domain_type, "class ")
+      if (startswith (domain_type, "class ")
          && strchr (domain_type + sizeof "class " - 1, ' ') == NULL)
        domain_type += sizeof "class " - 1;
-      else if (CONST_STRNEQ (domain_type, "union class ")
+      else if (startswith (domain_type, "union class ")
               && (strchr (domain_type + sizeof "union class " - 1, ' ')
                   == NULL))
        domain_type += sizeof "union class " - 1;
@@ -1349,7 +1349,7 @@ pr_class_baseclass (void *p, bfd_vma bitpos, bfd_boolean is_virtual,
   if (t == NULL)
     return FALSE;
 
-  if (CONST_STRNEQ (t, "class "))
+  if (startswith (t, "class "))
     t += sizeof "class " - 1;
 
   /* Push it back on to take advantage of the prepend_type and
@@ -2238,7 +2238,7 @@ tg_class_baseclass (void *p, bfd_vma bitpos ATTRIBUTE_UNUSED,
   if (t == NULL)
     return FALSE;
 
-  if (CONST_STRNEQ (t, "class "))
+  if (startswith (t, "class "))
     t += sizeof "class " - 1;
 
   /* Push it back on to take advantage of the prepend_type and
index cf62843667841fd3c9736e0ce7493f5160df7de9..7370aa9358a6db6d254cb651775a2dbd11cdc150 100644 (file)
@@ -12708,7 +12708,7 @@ process_lto_symbol_tables (Filedata * filedata)
        i < filedata->file_header.e_shnum;
        i++, section++)
     if (SECTION_NAME_VALID (section)
-       && CONST_STRNEQ (SECTION_NAME (section), ".gnu.lto_.symtab."))
+       && startswith (SECTION_NAME (section), ".gnu.lto_.symtab."))
       res &= display_lto_symtab (filedata, section);
 
   return res;
index 90254fdb2a60dd143630a808ba2091c86f212b3e..5b6842ef04cdf77ced0ad11af806ab45dd8f246f 100644 (file)
@@ -1760,12 +1760,12 @@ parse_stab_range_type (void *                dhandle,
 #define ULLHIGH "01777777777777777777777;"
       if (index_type == DEBUG_TYPE_NULL)
        {
-         if (CONST_STRNEQ (s2, LLLOW)
-             && CONST_STRNEQ (s3, LLHIGH))
+         if (startswith (s2, LLLOW)
+             && startswith (s3, LLHIGH))
            return debug_make_int_type (dhandle, 8, FALSE);
          if (! ov2
              && n2 == 0
-             && CONST_STRNEQ (s3, ULLHIGH))
+             && startswith (s3, ULLHIGH))
            return debug_make_int_type (dhandle, 8, TRUE);
        }
 
@@ -2987,7 +2987,7 @@ parse_stab_argtypes (void *dhandle, struct stab_handle *info,
                                   && (ISDIGIT (argtypes[2])
                                       || argtypes[2] == 'Q'
                                       || argtypes[2] == 't'))
-                                 || CONST_STRNEQ (argtypes, "__ct"));
+                                 || startswith (argtypes, "__ct"));
 
   is_constructor = (is_full_physname_constructor
                    || (tagname != NULL
@@ -2995,7 +2995,7 @@ parse_stab_argtypes (void *dhandle, struct stab_handle *info,
   is_destructor = ((argtypes[0] == '_'
                    && (argtypes[1] == '$' || argtypes[1] == '.')
                    && argtypes[2] == '_')
-                  || CONST_STRNEQ (argtypes, "__dt"));
+                  || startswith (argtypes, "__dt"));
   is_v3 = argtypes[0] == '_' && argtypes[1] == 'Z';
 
   if (!(is_destructor || is_full_physname_constructor || is_v3))
@@ -3995,7 +3995,7 @@ stab_demangle_function_name (struct stab_demangle_info *minfo,
   *pp = scan + 2;
 
   if (*pp - name >= 5
-          && CONST_STRNEQ (name, "type")
+          && startswith (name, "type")
           && (name[4] == '$' || name[4] == '.'))
     {
       const char *tem;
index 66768110c61335367624e9546474fe47fa6c2a58..91bb3dd3ebe7a026336de7fdedba3e6beccba06c 100644 (file)
@@ -1,3 +1,9 @@
+2021-03-22  Martin Liska  <mliska@suse.cz>
+
+       * config/tc-i386.c (md_parse_option): Replace usage of CONST_STRNEQ with startswith.
+       (x86_64_section_word): Likewise.
+       * config/tc-sparc.c (md_parse_option): Likewise.
+
 2021-03-19  Alan Modra  <amodra@gmail.com>
 
        * app.c (do_scrub_chars): Don't lose spaces before a slash.
index 079012267fd5834738b59096f6360f512e2ed754..84a3f292656fc93e4cc87f08aba035275f4e62c6 100644 (file)
@@ -13016,7 +13016,7 @@ md_parse_option (int c, const char *arg)
 
        list = bfd_target_list ();
        for (l = list; *l != NULL; l++)
-         if (CONST_STRNEQ (*l, "elf64-x86-64")
+         if (startswith (*l, "elf64-x86-64")
              || strcmp (*l, "coff-x86-64") == 0
              || strcmp (*l, "pe-x86-64") == 0
              || strcmp (*l, "pei-x86-64") == 0
@@ -13040,7 +13040,7 @@ md_parse_option (int c, const char *arg)
 
          list = bfd_target_list ();
          for (l = list; *l != NULL; l++)
-           if (CONST_STRNEQ (*l, "elf32-x86-64"))
+           if (startswith (*l, "elf32-x86-64"))
              {
                default_arch = "x86_64:32";
                break;
@@ -14366,7 +14366,7 @@ x86_64_section_letter (int letter, const char **ptr_msg)
 bfd_vma
 x86_64_section_word (char *str, size_t len)
 {
-  if (len == 5 && flag_code == CODE_64BIT && CONST_STRNEQ (str, "large"))
+  if (len == 5 && flag_code == CODE_64BIT && startswith (str, "large"))
     return SHF_X86_64_LARGE;
 
   return -1;
index d526a34489a4db531bd7404f579d3c77d23c6e57..61cd27d7239efb6d6e2efb99dbf21b383052c231 100644 (file)
@@ -548,12 +548,12 @@ md_parse_option (int c, const char *arg)
          {
            if (sparc_arch_size == 32)
              {
-               if (CONST_STRNEQ (*l, "elf32-sparc"))
+               if (startswith (*l, "elf32-sparc"))
                  break;
              }
            else
              {
-               if (CONST_STRNEQ (*l, "elf64-sparc"))
+               if (startswith (*l, "elf64-sparc"))
                  break;
              }
          }
index 03235e98d72a7c11c5ce8a4b1c1585e3fabb069a..8f7537e37668a5f412b9f922507ee23cd79d10e2 100644 (file)
@@ -1,3 +1,8 @@
+2021-03-22  Martin Liska  <mliska@suse.cz>
+
+       * arm-tdep.c (show_disassembly_style_sfunc): Replace usage of CONST_STRNEQ with startswith.
+       (_initialize_arm_tdep): Likewise.
+
 2021-03-20  Tom Tromey  <tom@tromey.com>
 
        * xcoffread.c (xcoff_initial_scan): Create partial symtabs.
index 4e2ab32b5ee05ca5ad0fb39a398b1903e18f1228..23540092e77f12dc5d8196a4f8e4706bf21755df 100644 (file)
@@ -8535,7 +8535,7 @@ show_disassembly_style_sfunc (struct ui_file *file, int from_tty,
   const char *opt;
 
   FOR_EACH_DISASSEMBLER_OPTION (opt, options)
-    if (CONST_STRNEQ (opt, "reg-names-"))
+    if (startswith (opt, "reg-names-"))
       {
        style = &opt[strlen ("reg-names-")];
        len = strcspn (style, ",");
@@ -9575,14 +9575,14 @@ _initialize_arm_tdep ()
     = &disassembler_options_arm ()->options;
   int num_disassembly_styles = 0;
   for (i = 0; disasm_options->name[i] != NULL; i++)
-    if (CONST_STRNEQ (disasm_options->name[i], "reg-names-"))
+    if (startswith (disasm_options->name[i], "reg-names-"))
       num_disassembly_styles++;
 
   /* Initialize the array that will be passed to add_setshow_enum_cmd().  */
   valid_disassembly_styles = XNEWVEC (const char *,
                                      num_disassembly_styles + 1);
   for (i = j = 0; disasm_options->name[i] != NULL; i++)
-    if (CONST_STRNEQ (disasm_options->name[i], "reg-names-"))
+    if (startswith (disasm_options->name[i], "reg-names-"))
       {
        size_t offset = strlen ("reg-names-");
        const char *style = disasm_options->name[i];
index cdbdc7b6fb97e19637a12b23d11df2ab97313e4e..19b56f02b549bb3cff5da160b660d05de95903df 100644 (file)
@@ -1,3 +1,28 @@
+2021-03-22  Martin Liska  <mliska@suse.cz>
+
+       * emultempl/aix.em: Replace usage of CONST_STRNEQ with startswith.
+       * emultempl/beos.em: Likewise.
+       * emultempl/elf.em: Likewise.
+       * emultempl/pe.em: Likewise.
+       * emultempl/pep.em: Likewise.
+       * emultempl/xtensaelf.em: Likewise.
+       * ldctor.c (ctor_prio): Likewise.
+       * ldelf.c (ldelf_try_needed): Likewise.
+       (ldelf_parse_ld_so_conf): Likewise.
+       (ldelf_after_open): Likewise.
+       (output_rel_find): Likewise.
+       (ldelf_place_orphan): Likewise.
+       * ldfile.c (ldfile_add_library_path): Likewise.
+       * ldlang.c (lang_add_input_file): Likewise.
+       * ldmain.c (get_sysroot): Likewise.
+       (get_emulation): Likewise.
+       (add_archive_element): Likewise.
+       * ldwrite.c (unsplittable_name): Likewise.
+       (clone_section): Likewise.
+       * lexsup.c (parse_args): Likewise.
+       * pe-dll.c (is_import): Likewise.
+       (pe_implied_import_dll): Likewise.
+
 2021-03-19  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR ld/27590
index e098f2a8850641914c369304b6eed9f2aa346241..6fd67b2b7f8cf7d5241f1deab29ec7634bb2b18e 100644 (file)
@@ -287,7 +287,7 @@ gld${EMULATION_NAME}_parse_args (int argc, char **argv)
   if (indx == 0)
     indx = 1;
 
-  if (indx < argc && CONST_STRNEQ (argv[indx], "-b"))
+  if (indx < argc && startswith (argv[indx], "-b"))
     {
       char *s;
 
index fc43ce146771fad0c63714f45fb732becdde9bdb..d984d3dd198884e392ee6a7a411d930c043c591a 100644 (file)
@@ -461,8 +461,8 @@ sort_by_section_name (const void *a, const void *b)
      FIXME stripping images with a .rsrc section still needs to be fixed.  */
   if (i != 0)
     {
-      if ((CONST_STRNEQ (sna, ".stab"))
-         && (!CONST_STRNEQ (snb, ".stab")))
+      if ((startswith (sna, ".stab"))
+         && (!startswith (snb, ".stab")))
        return 1;
     }
   return i;
@@ -536,7 +536,7 @@ sort_sections (lang_statement_union_type *s)
            {
              /* Is this the .idata section?  */
              if (sec->spec.name != NULL
-                 && CONST_STRNEQ (sec->spec.name, ".idata"))
+                 && startswith (sec->spec.name, ".idata"))
                {
                  /* Sort the children.  We want to sort any objects in
                     the same archive.  In order to handle the case of
index 9e7c3d86a9e6e0ee403bea488ece29c992fa53fe..986b77e92d9efd30fc1589e8c8df51c87f5c1d14 100644 (file)
@@ -712,7 +712,7 @@ fragment <<EOF
        link_info.unresolved_syms_in_objects = RM_IGNORE;
       else if (strcmp (optarg, "muldefs") == 0)
        link_info.allow_multiple_definition = TRUE;
-      else if (CONST_STRNEQ (optarg, "max-page-size="))
+      else if (startswith (optarg, "max-page-size="))
        {
          char *end;
 
@@ -722,7 +722,7 @@ fragment <<EOF
            einfo (_("%F%P: invalid maximum page size \`%s'\n"),
                   optarg + 14);
        }
-      else if (CONST_STRNEQ (optarg, "common-page-size="))
+      else if (startswith (optarg, "common-page-size="))
        {
          char *end;
          link_info.commonpagesize = strtoul (optarg + 17, &end, 0);
@@ -731,7 +731,7 @@ fragment <<EOF
            einfo (_("%F%P: invalid common page size \`%s'\n"),
                   optarg + 17);
        }
-      else if (CONST_STRNEQ (optarg, "stack-size="))
+      else if (startswith (optarg, "stack-size="))
        {
          char *end;
          link_info.stacksize = strtoul (optarg + 11, &end, 0);
@@ -760,11 +760,11 @@ fragment <<EOF
        {
          link_info.flags_1 |= DF_1_GLOBAUDIT;
        }
-      else if (CONST_STRNEQ (optarg, "start-stop-gc"))
+      else if (startswith (optarg, "start-stop-gc"))
        link_info.start_stop_gc = TRUE;
-      else if (CONST_STRNEQ (optarg, "nostart-stop-gc"))
+      else if (startswith (optarg, "nostart-stop-gc"))
        link_info.start_stop_gc = FALSE;
-      else if (CONST_STRNEQ (optarg, "start-stop-visibility="))
+      else if (startswith (optarg, "start-stop-visibility="))
        {
          if (strcmp (optarg, "start-stop-visibility=default") == 0)
            link_info.start_stop_visibility = STV_DEFAULT;
index 748a6b494128e140c846e8a6d550f40c6c0c452a..ea11a02e7c87d1fa64feeff6662de626bea343ee 100644 (file)
@@ -1529,7 +1529,7 @@ gld_${EMULATION_NAME}_after_open (void)
              {
                if (strcmp (sec->name, ".idata\$2") == 0)
                  idata2 = 1;
-               if (CONST_STRNEQ (sec->name, ".idata\$"))
+               if (startswith (sec->name, ".idata\$"))
                  is_imp = 1;
                reloc_count += sec->reloc_count;
              }
index ff49c15c002af126beb20fa4a18577e0f7f0084f..5f539cb7a3e4e8bbcb2cf52501ab68315f7c5958 100644 (file)
@@ -1501,7 +1501,7 @@ gld_${EMULATION_NAME}_after_open (void)
              {
                if (strcmp (sec->name, ".idata\$2") == 0)
                  idata2 = 1;
-               if (CONST_STRNEQ (sec->name, ".idata\$"))
+               if (startswith (sec->name, ".idata\$"))
                  is_imp = 1;
                reloc_count += sec->reloc_count;
              }
index cdab038db7e4ffe708cd2185bb06870724bb8201..2b0fa5af64cc94978a723dbd221b5fc378f252a3 100644 (file)
@@ -262,7 +262,7 @@ replace_instruction_table_sections (bfd *abfd, asection *sec)
       insn_sec_name = INSN_SEC_BASE_NAME;
       prop_sec_name = PROP_SEC_BASE_NAME;
     }
-  else if (CONST_STRNEQ (sec_name, LINKONCE_SEC_OLD_TEXT_BASE_NAME))
+  else if (startswith (sec_name, LINKONCE_SEC_OLD_TEXT_BASE_NAME))
     {
       insn_sec_name = sec_name;
       owned_prop_sec_name = (char *) xmalloc (strlen (sec_name) + 20);
@@ -1320,7 +1320,7 @@ is_inconsistent_linkonce_section (asection *sec)
   /* Check if this is an Xtensa property section or an exception table
      for Tensilica's XCC compiler.  */
   name = sec_name + linkonce_len;
-  if (CONST_STRNEQ (name, "prop."))
+  if (startswith (name, "prop."))
     name = strchr (name + 5, '.') ? strchr (name + 5, '.') + 1 : name + 5;
   else if (name[1] == '.'
           && (name[0] == 'p' || name[0] == 'e' || name[0] == 'h'))
index 7ab6f36c46fe1840ad510bf9e591893474f58da5..841ffe3b1e50f58111bcc14b0d6b72f5ea39a50a 100644 (file)
@@ -131,7 +131,7 @@ ctor_prio (const char *name)
   while (*name == '_')
     ++name;
 
-  if (!CONST_STRNEQ (name, "GLOBAL_"))
+  if (!startswith (name, "GLOBAL_"))
     return -1;
 
   name += sizeof "GLOBAL_" - 1;
index a733131e51c2aadab191e7c4106a977679e83000..94d775db5cd98b5bb7b7b933f69afc007dd6c0bb 100644 (file)
@@ -321,7 +321,7 @@ ldelf_try_needed (struct dt_needed *needed, int force, int is_linux)
              struct bfd_link_needed_list *l;
 
              for (l = needs; l != NULL; l = l->next)
-               if (CONST_STRNEQ (l->name, "libc.so"))
+               if (startswith (l->name, "libc.so"))
                  break;
              if (l == NULL)
                {
@@ -837,7 +837,7 @@ ldelf_parse_ld_so_conf (struct ldelf_ld_so_conf *info, const char *filename)
       if (p[0] == '\0')
        continue;
 
-      if (CONST_STRNEQ (p, "include") && (p[7] == ' ' || p[7] == '\t'))
+      if (startswith (p, "include") && (p[7] == ' ' || p[7] == '\t'))
        {
          char *dir, c;
          p += 8;
@@ -1089,7 +1089,7 @@ ldelf_after_open (int use_libpath, int native, int is_linux, int is_freebsd,
 
              if (bfd_is_abs_section (s->output_section))
                continue;
-             if (CONST_STRNEQ (name, ".eh_frame_entry"))
+             if (startswith (name, ".eh_frame_entry"))
                type = COMPACT_EH_HDR;
              else if (strcmp (name, ".eh_frame") == 0 && s->size > 8)
                type = DWARF2_EH_HDR;
@@ -1820,7 +1820,7 @@ output_rel_find (int isdyn, int rela)
        lookup = lookup->next)
     {
       if (lookup->constraint >= 0
-         && CONST_STRNEQ (lookup->name, ".rel"))
+         && startswith (lookup->name, ".rel"))
        {
          int lookrela = lookup->name[4] == 'a';
 
@@ -1971,7 +1971,7 @@ ldelf_place_orphan (asection *s, const char *secname, int constraint)
          default:
            break;
          }
-      else if (CONST_STRNEQ (secname, ".rel"))
+      else if (startswith (secname, ".rel"))
        {
          secname = secname[4] == 'a' ? ".rela.dyn" : ".rel.dyn";
          isdyn = 1;
@@ -2084,7 +2084,7 @@ ldelf_place_orphan (asection *s, const char *secname, int constraint)
   /* If this is a final link, then always put .gnu.warning.SYMBOL
      sections into the .text section to get them out of the way.  */
   if (bfd_link_executable (&link_info)
-      && CONST_STRNEQ (s->name, ".gnu.warning.")
+      && startswith (s->name, ".gnu.warning.")
       && hold[orphan_text].os != NULL)
     {
       os = hold[orphan_text].os;
@@ -2124,7 +2124,7 @@ ldelf_place_orphan (asection *s, const char *secname, int constraint)
   else if ((flags & SEC_LOAD) != 0
           && (elfinput
               ? sh_type == SHT_NOTE
-              : CONST_STRNEQ (secname, ".note")))
+              : startswith (secname, ".note")))
     place = &hold[orphan_interp];
   else if ((flags & (SEC_LOAD | SEC_HAS_CONTENTS | SEC_THREAD_LOCAL)) == 0)
     place = &hold[orphan_bss];
@@ -2137,7 +2137,7 @@ ldelf_place_orphan (asection *s, const char *secname, int constraint)
   else if ((flags & SEC_LOAD) != 0
           && (elfinput
               ? sh_type == SHT_RELA || sh_type == SHT_REL
-              : CONST_STRNEQ (secname, ".rel")))
+              : startswith (secname, ".rel")))
     place = &hold[orphan_rel];
   else if ((flags & SEC_CODE) == 0)
     place = &hold[orphan_rodata];
index 81cb86d51e2c28fbab025ddd213d74c341b8f4eb..c428d1487f3f8820df134d22f91be3dbb94a0fb8 100644 (file)
@@ -113,7 +113,7 @@ ldfile_add_library_path (const char *name, bfd_boolean cmdline)
      now.  */
   if (name[0] == '=')
     new_dirs->name = concat (ld_sysroot, name + 1, (const char *) NULL);
-  else if (CONST_STRNEQ (name, "$SYSROOT"))
+  else if (startswith (name, "$SYSROOT"))
     new_dirs->name = concat (ld_sysroot, name + strlen ("$SYSROOT"), (const char *) NULL);
   else
     new_dirs->name = xstrdup (name);
index df8a5d17acacb7bdc31a1c8f27973f1e2e1d87d2..629be32efaf40a0b74a80f0322dba4a7c7ca8015 100644 (file)
@@ -1186,7 +1186,7 @@ lang_add_input_file (const char *name,
                     const char *target)
 {
   if (name != NULL
-      && (*name == '=' || CONST_STRNEQ (name, "$SYSROOT")))
+      && (*name == '=' || startswith (name, "$SYSROOT")))
     {
       lang_input_statement_type *ret;
       char *sysrooted_name
index 7a3c02aeaa62fd9d579fc9c13e8bf26fc0e1d973..aa52205daf45cd6b951aed903a56cfe940b66d30 100644 (file)
@@ -648,7 +648,7 @@ get_sysroot (int argc, char **argv)
   const char *path = NULL;
 
   for (i = 1; i < argc; i++)
-    if (CONST_STRNEQ (argv[i], "--sysroot="))
+    if (startswith (argv[i], "--sysroot="))
       path = argv[i] + strlen ("--sysroot=");
 
   if (!path)
@@ -681,7 +681,7 @@ get_emulation (int argc, char **argv)
 
   for (i = 1; i < argc; i++)
     {
-      if (CONST_STRNEQ (argv[i], "-m"))
+      if (startswith (argv[i], "-m"))
        {
          if (argv[i][2] == '\0')
            {
@@ -935,7 +935,7 @@ add_archive_element (struct bfd_link_info *info,
       h = bfd_link_hash_lookup (info->hash, name, FALSE, FALSE, TRUE);
       if (h == NULL
          && info->pei386_auto_import
-         && CONST_STRNEQ (name, "__imp_"))
+         && startswith (name, "__imp_"))
        h = bfd_link_hash_lookup (info->hash, name + 6, FALSE, FALSE, TRUE);
 
       if (h == NULL)
index 2db0b63b79224d4205e52f25be934a6ae30fe2e6..ef1d88c6ce27f01bdcb4a93bc8de95c5cd66bd23 100644 (file)
@@ -281,7 +281,7 @@ build_link_order (lang_statement_union_type *statement)
 static bfd_boolean
 unsplittable_name (const char *name)
 {
-  if (CONST_STRNEQ (name, ".stab"))
+  if (startswith (name, ".stab"))
     {
       /* There are several stab like string sections. We pattern match on
         ".stab...str"  */
@@ -326,7 +326,7 @@ clone_section (bfd *abfd, asection *s, const char *name, int *count)
     {
       /* Some section names cannot be truncated, as the name is
         used to locate some other section.  */
-      if (CONST_STRNEQ (name, ".stab")
+      if (startswith (name, ".stab")
          || strcmp (name, "$GDB_SYMBOLS$") == 0)
        {
          einfo (_ ("%F%P: cannot create split section name for %s\n"), name);
index 36492abb405c95a84bd5f743534afb02e5a1db7f..88eb79e7f693c8cbc26f9d8405a893cc1b60033b 100644 (file)
@@ -1560,7 +1560,7 @@ parse_args (unsigned argc, char **argv)
          link_info.discard = discard_all;
          break;
        case 'Y':
-         if (CONST_STRNEQ (optarg, "P,"))
+         if (startswith (optarg, "P,"))
            optarg += 2;
          free (default_dirlist);
          default_dirlist = xstrdup (optarg);
index 7aba09cd3596631e10b8f8bd85c195480dbbbb50..154c6846beb8c576e57c86bab729ab2f033fcb6a 100644 (file)
@@ -545,7 +545,7 @@ pe_dll_add_excludes (const char *new_excludes, const exclude_type type)
 static bfd_boolean
 is_import (const char* n)
 {
-  return (CONST_STRNEQ (n, "__imp_"));
+  return (startswith (n, "__imp_"));
 }
 
 /* abfd is a bfd containing n (or NULL)
@@ -3531,7 +3531,7 @@ pe_implied_import_dll (const char *filename)
 
       /* Skip unwanted symbols, which are
         exported in buggy auto-import releases.  */
-      if (! CONST_STRNEQ (erva + name_rva, "__nm_"))
+      if (! startswith (erva + name_rva, "__nm_"))
        {
          int is_dup = 0;
          /* is_data is true if the address is in the data, rdata or bss
index ee67cb57de35046cf8adf5998be68c71a2b3d83b..bd8cfef1b9490e707e646592b970340d0029f536 100644 (file)
@@ -1,3 +1,21 @@
+2021-03-22  Martin Liska  <mliska@suse.cz>
+
+       * aarch64-dis.c (parse_aarch64_dis_option): Replace usage of CONST_STRNEQ with startswith.
+       * arc-dis.c (parse_option): Likewise.
+       * arm-dis.c (parse_arm_disassembler_options): Likewise.
+       * cris-dis.c (print_with_operands): Likewise.
+       * h8300-dis.c (bfd_h8_disassemble): Likewise.
+       * i386-dis.c (print_insn): Likewise.
+       * ia64-gen.c (fetch_insn_class): Likewise.
+       (parse_resource_users): Likewise.
+       (in_iclass): Likewise.
+       (lookup_specifier): Likewise.
+       (insert_opcode_dependencies): Likewise.
+       * mips-dis.c (parse_mips_ase_option): Likewise.
+       (parse_mips_dis_option): Likewise.
+       * s390-dis.c (disassemble_init_s390): Likewise.
+       * wasm32-dis.c (parse_wasm32_disassembler_options): Likewise.
+
 2021-03-16  Kuan-Lin Chen  <kuanlinchentw@gmail.com>
 
        * riscv-opc.c (riscv_opcodes): Add zba, zbb and zbc instructions.
index 19482f729ab77329b97d8a82803c63a4bdc16b3b..349d7ea7ec07a8726fca86c493bf44801c19df0b 100644 (file)
@@ -58,32 +58,32 @@ static void
 parse_aarch64_dis_option (const char *option, unsigned int len ATTRIBUTE_UNUSED)
 {
   /* Try to match options that are simple flags */
-  if (CONST_STRNEQ (option, "no-aliases"))
+  if (startswith (option, "no-aliases"))
     {
       no_aliases = 1;
       return;
     }
 
-  if (CONST_STRNEQ (option, "aliases"))
+  if (startswith (option, "aliases"))
     {
       no_aliases = 0;
       return;
     }
 
-  if (CONST_STRNEQ (option, "no-notes"))
+  if (startswith (option, "no-notes"))
     {
       no_notes = 1;
       return;
     }
 
-  if (CONST_STRNEQ (option, "notes"))
+  if (startswith (option, "notes"))
     {
       no_notes = 0;
       return;
     }
 
 #ifdef DEBUG_AARCH64
-  if (CONST_STRNEQ (option, "debug_dump"))
+  if (startswith (option, "debug_dump"))
     {
       debug_dump = 1;
       return;
index 6a6404a162428bcc06fd1fddddc412e74c2ca936..0c9b379bd2b7bf5741be495cc900673d9b434245 100644 (file)
@@ -795,7 +795,7 @@ parse_option (const char *option)
       add_to_decodelist (FLOAT, DP);
       add_to_decodelist (FLOAT, CVT);
     }
-  else if (CONST_STRNEQ (option, "hex"))
+  else if (startswith (option, "hex"))
     print_hex = TRUE;
   else
     /* xgettext:c-format */
index f16a5902479acebadff5e912b6b0355bc8381259..9647d0019dbbe3b2f466f40c3ba89cd1d28fc6f8 100644 (file)
@@ -11600,7 +11600,7 @@ parse_arm_disassembler_options (const char *options)
 
   FOR_EACH_DISASSEMBLER_OPTION (opt, options)
     {
-      if (CONST_STRNEQ (opt, "reg-names-"))
+      if (startswith (opt, "reg-names-"))
        {
          unsigned int i;
          for (i = 0; i < NUM_ARM_OPTIONS; i++)
@@ -11615,11 +11615,11 @@ parse_arm_disassembler_options (const char *options)
            opcodes_error_handler (_("unrecognised register name set: %s"),
                                   opt);
        }
-      else if (CONST_STRNEQ (opt, "force-thumb"))
+      else if (startswith (opt, "force-thumb"))
        force_thumb = 1;
-      else if (CONST_STRNEQ (opt, "no-force-thumb"))
+      else if (startswith (opt, "no-force-thumb"))
        force_thumb = 0;
-      else if (CONST_STRNEQ (opt, "coproc"))
+      else if (startswith (opt, "coproc"))
        {
          const char *procptr = opt + sizeof ("coproc") - 1;
          char *endptr;
@@ -11637,10 +11637,10 @@ parse_arm_disassembler_options (const char *options)
              continue;
            }
          endptr += 1;
-         if (CONST_STRNEQ (endptr, "generic"))
+         if (startswith (endptr, "generic"))
            cde_coprocs &= ~(1 << coproc_number);
-         else if (CONST_STRNEQ (endptr, "cde")
-                  || CONST_STRNEQ (endptr, "CDE"))
+         else if (startswith (endptr, "cde")
+                  || startswith (endptr, "CDE"))
            cde_coprocs |= (1 << coproc_number);
          else
            {
index f434249131523ab02dcade4416fbba533ab4cb71..3f98cb028b5cd91bcba541f0b68c85da1249aabc 100644 (file)
@@ -786,7 +786,7 @@ print_with_operands (const struct cris_opcode *opcodep,
      better way).  */
   if (opcodep->name[0] == 'j')
     {
-      if (CONST_STRNEQ (opcodep->name, "jsr"))
+      if (startswith (opcodep->name, "jsr"))
        /* It's "jsr" or "jsrc".  */
        info->insn_type = dis_jsr;
       else
@@ -1360,16 +1360,16 @@ print_with_operands (const struct cris_opcode *opcodep,
      itself or in a "move.d const,rN, sub.d rN,rM"-like sequence.  */
   if (TRACE_CASE && case_offset_counter == 0)
     {
-      if (CONST_STRNEQ (opcodep->name, "sub"))
+      if (startswith (opcodep->name, "sub"))
        case_offset = last_immediate;
 
       /* It could also be an "add", if there are negative case-values.  */
-      else if (CONST_STRNEQ (opcodep->name, "add"))
+      else if (startswith (opcodep->name, "add"))
        /* The first case is the negated operand to the add.  */
        case_offset = -last_immediate;
 
       /* A bound insn will tell us the number of cases.  */
-      else if (CONST_STRNEQ (opcodep->name, "bound"))
+      else if (startswith (opcodep->name, "bound"))
        no_of_case_offsets = last_immediate + 1;
 
       /* A jump or jsr or branch breaks the chain of insns for a
index 4cd8e3cced4d3d974c12dc9285b829a1235fdf9e..4696235a8db5abba0abcb653eb67937b86ccd5fa 100644 (file)
@@ -655,7 +655,7 @@ bfd_h8_disassemble (bfd_vma addr, disassemble_info *info, int mach)
                   regno[1]);
          return qi->length;
        }
-      if (CONST_STRNEQ (q->name, "mova"))
+      if (startswith (q->name, "mova"))
        {
          const op_type *args = q->args.nib;
 
index 4e3304d4a4c12d948df436fb1d22210b53f74cea..9e5c412fa4adaee94a1f9e19c748b467a138405e 100644 (file)
@@ -9413,38 +9413,38 @@ print_insn (bfd_vma pc, disassemble_info *info)
 
   for (p = info->disassembler_options; p != NULL; )
     {
-      if (CONST_STRNEQ (p, "amd64"))
+      if (startswith (p, "amd64"))
        isa64 = amd64;
-      else if (CONST_STRNEQ (p, "intel64"))
+      else if (startswith (p, "intel64"))
        isa64 = intel64;
-      else if (CONST_STRNEQ (p, "x86-64"))
+      else if (startswith (p, "x86-64"))
        {
          address_mode = mode_64bit;
          priv.orig_sizeflag |= AFLAG | DFLAG;
        }
-      else if (CONST_STRNEQ (p, "i386"))
+      else if (startswith (p, "i386"))
        {
          address_mode = mode_32bit;
          priv.orig_sizeflag |= AFLAG | DFLAG;
        }
-      else if (CONST_STRNEQ (p, "i8086"))
+      else if (startswith (p, "i8086"))
        {
          address_mode = mode_16bit;
          priv.orig_sizeflag &= ~(AFLAG | DFLAG);
        }
-      else if (CONST_STRNEQ (p, "intel"))
+      else if (startswith (p, "intel"))
        {
          intel_syntax = 1;
-         if (CONST_STRNEQ (p + 5, "-mnemonic"))
+         if (startswith (p + 5, "-mnemonic"))
            intel_mnemonic = 1;
        }
-      else if (CONST_STRNEQ (p, "att"))
+      else if (startswith (p, "att"))
        {
          intel_syntax = 0;
-         if (CONST_STRNEQ (p + 3, "-mnemonic"))
+         if (startswith (p + 3, "-mnemonic"))
            intel_mnemonic = 0;
        }
-      else if (CONST_STRNEQ (p, "addr"))
+      else if (startswith (p, "addr"))
        {
          if (address_mode == mode_64bit)
            {
@@ -9461,14 +9461,14 @@ print_insn (bfd_vma pc, disassemble_info *info)
                priv.orig_sizeflag |= AFLAG;
            }
        }
-      else if (CONST_STRNEQ (p, "data"))
+      else if (startswith (p, "data"))
        {
          if (p[4] == '1' && p[5] == '6')
            priv.orig_sizeflag &= ~DFLAG;
          else if (p[4] == '3' && p[5] == '2')
            priv.orig_sizeflag |= DFLAG;
        }
-      else if (CONST_STRNEQ (p, "suffix"))
+      else if (startswith (p, "suffix"))
        priv.orig_sizeflag |= SUFFIX_ALWAYS;
 
       p = strchr (p, ',');
index 7f3f0edd5d34969c941bbd0cbc8e85c391436bdc..de409bb2abd0c1d5196b84742e8760dcbef8a75c 100644 (file)
@@ -467,7 +467,7 @@ fetch_insn_class (const char *full_name, int create)
   int ind;
   int is_class = 0;
 
-  if (CONST_STRNEQ (full_name, "IC:"))
+  if (startswith (full_name, "IC:"))
     {
       name = xstrdup (full_name + 3);
       is_class = 1;
@@ -746,7 +746,7 @@ parse_resource_users (const char *ref, int **usersp, int *nusersp,
          are read.  Only create new classes if it's *not* an insn class,
          or if it's a composite class (which wouldn't necessarily be in the IC
          table).  */
-      if (! CONST_STRNEQ (name, "IC:") || xsect != NULL)
+      if (! startswith (name, "IC:") || xsect != NULL)
         create = 1;
 
       iclass = fetch_insn_class (name, create);
@@ -1039,7 +1039,7 @@ in_iclass (struct ia64_opcode *idesc, struct iclass *ic,
 
   if (ic->comment)
     {
-      if (CONST_STRNEQ (ic->comment, "Format"))
+      if (startswith (ic->comment, "Format"))
         {
           /* Assume that the first format seen is the most restrictive, and
              only keep a later one if it looks like it's more restrictive.  */
@@ -1055,7 +1055,7 @@ in_iclass (struct ia64_opcode *idesc, struct iclass *ic,
           else
             format = ic->comment;
         }
-      else if (CONST_STRNEQ (ic->comment, "Field"))
+      else if (startswith (ic->comment, "Field"))
         {
           if (field)
             warn (_("overlapping field %s->%s\n"),
@@ -1069,7 +1069,7 @@ in_iclass (struct ia64_opcode *idesc, struct iclass *ic,
      instructions.  */
   if (ic->nsubs == 0 && ic->nxsubs == 0)
     {
-      int is_mov = CONST_STRNEQ (idesc->name, "mov");
+      int is_mov = startswith (idesc->name, "mov");
       int plain_mov = strcmp (idesc->name, "mov") == 0;
       int len = strlen(ic->name);
 
@@ -1128,32 +1128,32 @@ in_iclass (struct ia64_opcode *idesc, struct iclass *ic,
 
       if (resolved && format)
         {
-          if (CONST_STRNEQ (idesc->name, "dep")
+          if (startswith (idesc->name, "dep")
                    && strstr (format, "I13") != NULL)
             resolved = idesc->operands[1] == IA64_OPND_IMM8;
-          else if (CONST_STRNEQ (idesc->name, "chk")
+          else if (startswith (idesc->name, "chk")
                    && strstr (format, "M21") != NULL)
             resolved = idesc->operands[0] == IA64_OPND_F2;
-          else if (CONST_STRNEQ (idesc->name, "lfetch"))
+          else if (startswith (idesc->name, "lfetch"))
             resolved = (strstr (format, "M14 M15") != NULL
                         && (idesc->operands[1] == IA64_OPND_R2
                             || idesc->operands[1] == IA64_OPND_IMM9b));
-          else if (CONST_STRNEQ (idesc->name, "br.call")
+          else if (startswith (idesc->name, "br.call")
                    && strstr (format, "B5") != NULL)
             resolved = idesc->operands[1] == IA64_OPND_B2;
-          else if (CONST_STRNEQ (idesc->name, "br.call")
+          else if (startswith (idesc->name, "br.call")
                    && strstr (format, "B3") != NULL)
             resolved = idesc->operands[1] == IA64_OPND_TGT25c;
-          else if (CONST_STRNEQ (idesc->name, "brp")
+          else if (startswith (idesc->name, "brp")
                    && strstr (format, "B7") != NULL)
             resolved = idesc->operands[0] == IA64_OPND_B2;
           else if (strcmp (ic->name, "invala") == 0)
             resolved = strcmp (idesc->name, ic->name) == 0;
-         else if (CONST_STRNEQ (idesc->name, "st")
+         else if (startswith (idesc->name, "st")
                   && (strstr (format, "M5") != NULL
                       || strstr (format, "M10") != NULL))
            resolved = idesc->flags & IA64_OPCODE_POSTINC;
-         else if (CONST_STRNEQ (idesc->name, "ld")
+         else if (startswith (idesc->name, "ld")
                   && (strstr (format, "M2 M3") != NULL
                       || strstr (format, "M12") != NULL
                       || strstr (format, "M7 M8") != NULL))
@@ -1166,7 +1166,7 @@ in_iclass (struct ia64_opcode *idesc, struct iclass *ic,
          plain brl matches brl.cond.  */
       if (!resolved
           && (strcmp (idesc->name, "brl") == 0
-              || CONST_STRNEQ (idesc->name, "brl."))
+              || startswith (idesc->name, "brl."))
           && strcmp (ic->name, "brl.cond") == 0)
         {
           resolved = 1;
@@ -1175,7 +1175,7 @@ in_iclass (struct ia64_opcode *idesc, struct iclass *ic,
       /* Misc br variations ('.cond' is optional).  */
       if (!resolved
           && (strcmp (idesc->name, "br") == 0
-              || CONST_STRNEQ (idesc->name, "br."))
+              || startswith (idesc->name, "br."))
           && strcmp (ic->name, "br.cond") == 0)
         {
           if (format)
@@ -1188,7 +1188,7 @@ in_iclass (struct ia64_opcode *idesc, struct iclass *ic,
         }
 
       /* probe variations.  */
-      if (!resolved && CONST_STRNEQ (idesc->name, "probe"))
+      if (!resolved && startswith (idesc->name, "probe"))
         {
           resolved = strcmp (ic->name, "probe") == 0
             && !((strstr (idesc->name, "fault") != NULL)
@@ -1222,7 +1222,7 @@ in_iclass (struct ia64_opcode *idesc, struct iclass *ic,
             }
 
           /* Some variants of mov and mov.[im].  */
-          if (!resolved && CONST_STRNEQ (ic->name, "mov_"))
+          if (!resolved && startswith (ic->name, "mov_"))
            resolved = in_iclass_mov_x (idesc, ic, format, field);
         }
 
@@ -1487,13 +1487,13 @@ lookup_specifier (const char *name)
       warn (_("Don't know how to specify # dependency %s\n"),
            name);
     }
-  else if (CONST_STRNEQ (name, "AR[FPSR]"))
+  else if (startswith (name, "AR[FPSR]"))
     return IA64_RS_AR_FPSR;
-  else if (CONST_STRNEQ (name, "AR["))
+  else if (startswith (name, "AR["))
     return IA64_RS_ARX;
-  else if (CONST_STRNEQ (name, "CR["))
+  else if (startswith (name, "CR["))
     return IA64_RS_CRX;
-  else if (CONST_STRNEQ (name, "PSR."))
+  else if (startswith (name, "PSR."))
     return IA64_RS_PSR;
   else if (strcmp (name, "InService*") == 0)
     return IA64_RS_INSERVICE;
@@ -2444,7 +2444,7 @@ insert_opcode_dependencies (struct ia64_opcode *opc,
       int j;
 
       if (strcmp (opc->name, "cmp.eq.and") == 0
-          && CONST_STRNEQ (rs->name, "PR%")
+          && startswith (rs->name, "PR%")
           && rs->mode == 1)
         no_class_found = 99;
 
@@ -2455,7 +2455,7 @@ insert_opcode_dependencies (struct ia64_opcode *opc,
           if (in_iclass (opc, ics[rs->regs[j]], NULL, NULL, &ic_note))
             {
               /* We can ignore ic_note 11 for non PR resources.  */
-              if (ic_note == 11 && ! CONST_STRNEQ (rs->name, "PR"))
+              if (ic_note == 11 && ! startswith (rs->name, "PR"))
                 ic_note = 0;
 
               if (ic_note != 0 && rs->regnotes[j] != 0
@@ -2483,7 +2483,7 @@ insert_opcode_dependencies (struct ia64_opcode *opc,
           if (in_iclass (opc, ics[rs->chks[j]], NULL, NULL, &ic_note))
             {
               /* We can ignore ic_note 11 for non PR resources.  */
-              if (ic_note == 11 && ! CONST_STRNEQ (rs->name, "PR"))
+              if (ic_note == 11 && ! startswith (rs->name, "PR"))
                 ic_note = 0;
 
               if (ic_note != 0 && rs->chknotes[j] != 0
index 317ced51204037a50de8cb69199f11da19c6147c..d1f73b4d9f64c4fecaab1ed6ef3805473c893bc7 100644 (file)
@@ -923,7 +923,7 @@ set_default_mips_dis_options (struct disassemble_info *info)
 static bfd_boolean
 parse_mips_ase_option (const char *option)
 {
-  if (CONST_STRNEQ (option, "msa"))
+  if (startswith (option, "msa"))
     {
       mips_ase |= ASE_MSA;
       if ((mips_isa & INSN_ISA_MASK) == ISA_MIPS64R2
@@ -934,7 +934,7 @@ parse_mips_ase_option (const char *option)
       return TRUE;
     }
 
-  if (CONST_STRNEQ (option, "virt"))
+  if (startswith (option, "virt"))
     {
       mips_ase |= ASE_VIRT;
       if (mips_isa & ISA_MIPS64R2
@@ -945,38 +945,38 @@ parse_mips_ase_option (const char *option)
       return TRUE;
     }
 
-  if (CONST_STRNEQ (option, "xpa"))
+  if (startswith (option, "xpa"))
     {
       mips_ase |= ASE_XPA;
       return TRUE;
     }
 
-  if (CONST_STRNEQ (option, "ginv"))
+  if (startswith (option, "ginv"))
     {
       mips_ase |= ASE_GINV;
       return TRUE;
     }
 
-  if (CONST_STRNEQ (option, "loongson-mmi"))
+  if (startswith (option, "loongson-mmi"))
     {
       mips_ase |= ASE_LOONGSON_MMI;
       return TRUE;
     }
 
-  if (CONST_STRNEQ (option, "loongson-cam"))
+  if (startswith (option, "loongson-cam"))
     {
       mips_ase |= ASE_LOONGSON_CAM;
       return TRUE;
     }
   
   /* Put here for match ext2 frist */
-  if (CONST_STRNEQ (option, "loongson-ext2"))
+  if (startswith (option, "loongson-ext2"))
     {
       mips_ase |= ASE_LOONGSON_EXT2;
       return TRUE;
     }
 
-  if (CONST_STRNEQ (option, "loongson-ext"))
+  if (startswith (option, "loongson-ext"))
     {
       mips_ase |= ASE_LOONGSON_EXT;
       return TRUE;
@@ -994,7 +994,7 @@ parse_mips_dis_option (const char *option, unsigned int len)
   const struct mips_arch_choice *chosen_arch;
 
   /* Try to match options that are simple flags */
-  if (CONST_STRNEQ (option, "no-aliases"))
+  if (startswith (option, "no-aliases"))
     {
       no_aliases = 1;
       return;
index 1eb372554da360017177dafea622589b892978d9..4708b094560f4568bd66379892248ea9a5c712fa 100644 (file)
@@ -65,11 +65,11 @@ disassemble_init_s390 (struct disassemble_info *info)
 
   for (p = info->disassembler_options; p != NULL; )
     {
-      if (CONST_STRNEQ (p, "esa"))
+      if (startswith (p, "esa"))
        current_arch_mask = 1 << S390_OPCODE_ESA;
-      else if (CONST_STRNEQ (p, "zarch"))
+      else if (startswith (p, "zarch"))
        current_arch_mask = 1 << S390_OPCODE_ZARCH;
-      else if (CONST_STRNEQ (p, "insnlength"))
+      else if (startswith (p, "insnlength"))
        option_use_insn_len_bits_p = 1;
       else
        /* xgettext:c-format */
index 2fe5132e1299ccbe9f4dd4a700d70d095b3107e6..69266610ad317ed74d8f7009ce13b3c6468c6870 100644 (file)
@@ -120,9 +120,9 @@ parse_wasm32_disassembler_options (struct disassemble_info *info,
 
   while (opts != NULL)
     {
-      if (CONST_STRNEQ (opts, "registers"))
+      if (startswith (opts, "registers"))
         private->print_registers = TRUE;
-      else if (CONST_STRNEQ (opts, "globals"))
+      else if (startswith (opts, "globals"))
         private->print_well_known_globals = TRUE;
 
       opts = strchr (opts, ',');