Add startswith function and use it instead of CONST_STRNEQ.
[deliverable/binutils-gdb.git] / ld / emultempl / elf.em
index 59eed707ea7d6347d6df713b4ec4972e3f831168..986b77e92d9efd30fc1589e8c8df51c87f5c1d14 100644 (file)
@@ -10,7 +10,7 @@ fragment <<EOF
 /* This file is is generated by a shell script.  DO NOT EDIT! */
 
 /* ${ELFSIZE} bit ELF emulation code for ${EMULATION_NAME}
-   Copyright (C) 1991-2020 Free Software Foundation, Inc.
+   Copyright (C) 1991-2021 Free Software Foundation, Inc.
    Written by Steve Chamberlain <sac@cygnus.com>
    ELF support by Ian Lance Taylor <ian@cygnus.com>
 
@@ -712,25 +712,26 @@ 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;
 
-         config.maxpagesize = strtoul (optarg + 14, &end, 0);
-         if (*end || (config.maxpagesize & (config.maxpagesize - 1)) != 0)
+         link_info.maxpagesize = strtoul (optarg + 14, &end, 0);
+         if (*end
+             || (link_info.maxpagesize & (link_info.maxpagesize - 1)) != 0)
            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;
-         config.commonpagesize = strtoul (optarg + 17, &end, 0);
+         link_info.commonpagesize = strtoul (optarg + 17, &end, 0);
          if (*end
-             || (config.commonpagesize & (config.commonpagesize - 1)) != 0)
+             || (link_info.commonpagesize & (link_info.commonpagesize - 1)) != 0)
            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);
@@ -759,7 +760,11 @@ fragment <<EOF
        {
          link_info.flags_1 |= DF_1_GLOBAUDIT;
        }
-      else if (CONST_STRNEQ (optarg, "start-stop-visibility="))
+      else if (startswith (optarg, "start-stop-gc"))
+       link_info.start_stop_gc = TRUE;
+      else if (startswith (optarg, "nostart-stop-gc"))
+       link_info.start_stop_gc = FALSE;
+      else if (startswith (optarg, "start-stop-visibility="))
        {
          if (strcmp (optarg, "start-stop-visibility=default") == 0)
            link_info.start_stop_visibility = STV_DEFAULT;
@@ -809,6 +814,10 @@ fragment <<EOF
          link_info.flags |= (bfd_vma) DF_ORIGIN;
          link_info.flags_1 |= (bfd_vma) DF_1_ORIGIN;
        }
+      else if (strcmp (optarg, "unique") == 0)
+       link_info.gnu_flags_1 |= (bfd_vma) DF_GNU_1_UNIQUE;
+      else if (strcmp (optarg, "nounique") == 0)
+       link_info.gnu_flags_1 &= ~(bfd_vma) DF_GNU_1_UNIQUE;
       else if (strcmp (optarg, "combreloc") == 0)
        link_info.combreloc = TRUE;
       else if (strcmp (optarg, "nocombreloc") == 0)
@@ -910,7 +919,7 @@ struct ld_emulation_xfer_struct ld_${EMULATION_NAME}_emulation =
   ${LDEMUL_AFTER_CHECK_RELOCS-after_check_relocs_default},
   ${LDEMUL_BEFORE_PLACE_ORPHANS-ldelf_before_place_orphans},
   ${LDEMUL_AFTER_ALLOCATION-gld${EMULATION_NAME}_after_allocation},
-  ${LDEMUL_SET_OUTPUT_ARCH-set_output_arch_default},
+  ${LDEMUL_SET_OUTPUT_ARCH-ldelf_set_output_arch},
   ${LDEMUL_CHOOSE_TARGET-ldemul_default_target},
   ${LDEMUL_BEFORE_ALLOCATION-gld${EMULATION_NAME}_before_allocation},
   ${LDEMUL_GET_SCRIPT-gld${EMULATION_NAME}_get_script},
@@ -931,7 +940,8 @@ struct ld_emulation_xfer_struct ld_${EMULATION_NAME}_emulation =
   ${LDEMUL_NEW_VERS_PATTERN-NULL},
   ${LDEMUL_EXTRA_MAP_FILE_TEXT-NULL},
   ${LDEMUL_EMIT_CTF_EARLY-NULL},
-  ${LDEMUL_EXAMINE_STRTAB_FOR_CTF-NULL},
+  ${LDEMUL_ACQUIRE_STRINGS_FOR_CTF-NULL},
+  ${LDEMUL_NEW_DYNSYM_FOR_CTF-NULL},
   ${LDEMUL_PRINT_SYMBOL-NULL}
 };
 EOF
This page took 0.028167 seconds and 4 git commands to generate.