Introduce program_space::remove_objfile
[deliverable/binutils-gdb.git] / ld / emultempl / mmix-elfnmmo.em
index beb6f09ff31d89f8d24d3c419bbb15ca280971c3..7cb4087a935f200d0ad2f05ad4fd96aaa5ce2a63 100644 (file)
@@ -1,5 +1,5 @@
 # This shell script emits a C file. -*- C -*-
-#   Copyright (C) 2001-2016 Free Software Foundation, Inc.
+#   Copyright (C) 2001-2019 Free Software Foundation, Inc.
 #
 # This file is part of the GNU Binutils.
 #
 # MA 02110-1301, USA.
 #
 
-# This file is sourced from elf32.em and mmo.em, used to define
+# This file is sourced from elf.em and mmo.em, used to define
 # MMIX-specific things common to ELF and MMO.
 
 fragment <<EOF
 #include "elf/mmix.h"
 
+static void gld${EMULATION_NAME}_before_parse (void);
+
+static void
+mmix_before_parse (void)
+{
+  link_info.check_relocs_after_open_input = TRUE;
+  gld${EMULATION_NAME}_before_parse ();
+}
+
 /* Set up handling of linker-allocated global registers.  */
 
 static void
@@ -44,7 +53,7 @@ mmix_before_allocation (void)
   ENABLE_RELAXATION;
 
   if (!_bfd_mmix_before_linker_allocation (link_info.output_bfd, &link_info))
-    einfo ("%X%P: Internal problems setting up section %s",
+    einfo (_("%X%P: internal problems setting up section %s"),
           MMIX_LD_ALLOCATED_REG_CONTENTS_SECTION_NAME);
 }
 
@@ -88,28 +97,29 @@ mmix_after_allocation (void)
      as an undefined symbol.  */
   if (regvma < 32 * 8)
     {
-      einfo ("%X%P: Too many global registers: %u, max 223\n",
+      einfo (_("%X%P: too many global registers: %u, max 223\n"),
             (unsigned) sec->size / 8);
       regvma = 32 * 8;
     }
 
   /* Set vma to correspond to first such register number * 8.  */
-  bfd_set_section_vma (link_info.output_bfd, sec, (bfd_vma) regvma);
+  bfd_set_section_vma (sec, (bfd_vma) regvma);
 
   /* Simplify symbol output for the register section (without contents;
      created for register symbols) by setting the output offset to 0.
      This section is only present when there are register symbols.  */
   sec = bfd_get_section_by_name (link_info.output_bfd, MMIX_REG_SECTION_NAME);
   if (sec != NULL)
-    bfd_set_section_vma (sec->owner, sec, 0);
+    bfd_set_section_vma (sec, 0);
 
   if (!_bfd_mmix_after_linker_allocation (link_info.output_bfd, &link_info))
     {
       /* This is a fatal error; make einfo call not return.  */
-      einfo ("%F%P: Can't finalize linker-allocated global registers\n");
+      einfo (_("%F%P: can't finalize linker-allocated global registers\n"));
     }
 }
 EOF
 
+LDEMUL_BEFORE_PARSE=mmix_before_parse
 LDEMUL_AFTER_ALLOCATION=mmix_after_allocation
 LDEMUL_BEFORE_ALLOCATION=mmix_before_allocation
This page took 0.034743 seconds and 4 git commands to generate.