* objcopy.c (mangle_section): Delete unused function.
authorJeff Law <law@redhat.com>
Mon, 14 Mar 1994 19:36:15 +0000 (19:36 +0000)
committerJeff Law <law@redhat.com>
Mon, 14 Mar 1994 19:36:15 +0000 (19:36 +0000)
        (setup_section): Set osection here instead of calling
        mangle section to do it.

binutils/ChangeLog
binutils/objcopy.c

index bc6e577949c4e8db032447c583be5f05d0bd7e8e..8ad4b09fe85487693ef2a44325565b0451a3482f 100644 (file)
@@ -1,3 +1,9 @@
+Mon Mar 14 11:15:58 1994  Jeffrey A. Law  (law@snake.cs.utah.edu)
+
+       * objcopy.c (mangle_section): Delete unused function.
+       (setup_section): Set osection here instead of calling
+       mangle section to do it.
+
 Mon Mar 14 12:11:01 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com)
 
        * ar.c (write_archive): Close inarch before unlinking it.
index 12ca0372e2dd605665c32c96ccec2461cac2e513..6b187fd421926d8dee0cfb6dc345e8770caca71b 100644 (file)
@@ -24,7 +24,6 @@
 
 static void setup_section ();
 static void copy_section ();
-static void mangle_section ();
 
 #define nonfatal(s) {bfd_nonfatal(s); status = 1; return;}
 
@@ -290,7 +289,6 @@ copy_object (ibfd, obfd)
      any output is done.  Thus, we traverse all sections multiple times.  */
   bfd_map_over_sections (ibfd, setup_section, (void *) obfd);
   bfd_map_over_sections (ibfd, copy_section, (void *) obfd);
-  bfd_map_over_sections (ibfd, mangle_section, (void *) obfd);
 }
 
 static char *
@@ -433,7 +431,7 @@ copy_file (input_filename, output_filename, input_target, output_target)
   else
     {
       bfd_nonfatal (input_filename);
-      if (bfd_error == file_ambiguously_recognized)
+      if (bfd_get_error () == bfd_error_file_ambiguously_recognized)
        {
          list_matching_formats (matching);
          free (matching);
@@ -504,6 +502,12 @@ setup_section (ibfd, isection, obfd)
       goto loser;
     }
 
+  /* This used to be mangle_section; we do here to avoid using
+     bfd_get_section_by_name since some formats allow multiple
+     sections with the same name.  */
+  isection->output_section = osection;
+  isection->output_offset = 0;
+
   /* All went well */
   return;
 
@@ -511,7 +515,7 @@ loser:
   fprintf (stderr, "%s: %s: section `%s': error in %s: %s\n",
           program_name,
           bfd_get_filename (ibfd), bfd_section_name (ibfd, isection),
-          err, bfd_errmsg (bfd_error));
+          err, bfd_errmsg (bfd_get_error ()));
   status = 1;
 }
 
@@ -583,21 +587,6 @@ copy_section (ibfd, isection, obfd)
     }
 }
 
-/* All the symbols have been read in and point to their owning input section.
-   They have been relocated so that they are all relative to the base of
-   their owning section.  On the way out, all the symbols will be relocated to
-   their new location in the output file, through some complex sums.  */
-
-static void
-mangle_section (ibfd, p, obfd)
-     bfd *ibfd;
-     asection *p;
-     bfd *obfd;
-{
-  p->output_section = bfd_get_section_by_name (obfd, p->name);
-  p->output_offset = 0;
-}
-
 /* The number of bytes to copy at once.  */
 #define COPY_BUF 8192