* archive.c (_bfd_get_elt_at_filepos): Don't release n_nfd.
authorAlan Modra <amodra@gmail.com>
Wed, 20 Apr 2011 07:00:46 +0000 (07:00 +0000)
committerAlan Modra <amodra@gmail.com>
Wed, 20 Apr 2011 07:00:46 +0000 (07:00 +0000)
* elflink.c (elf_link_add_object_symbols): Delete redundant code.

bfd/ChangeLog
bfd/archive.c
bfd/elflink.c

index 582e98f..afa1cf2 100644 (file)
@@ -1,5 +1,10 @@
 2011-04-20  Alan Modra  <amodra@gmail.com>
 
+       * archive.c (_bfd_get_elt_at_filepos): Don't release n_nfd.
+       * elflink.c (elf_link_add_object_symbols): Delete redundant code.
+
+2011-04-20  Alan Modra  <amodra@gmail.com>
+
        PR ld/12365
        * elfcode.h (elf_slurp_symbol_table): Put common plugin IR symbols
        in their own common section.
index 86d07e9..5de7a3e 100644 (file)
@@ -661,10 +661,6 @@ _bfd_get_elt_at_filepos (bfd *archive, file_ptr filepos)
   if (_bfd_add_bfd_to_archive_cache (archive, filepos, n_nfd))
     return n_nfd;
 
-  /* Huh?  */
-  /* FIXME:  n_nfd isn't allocated in the archive's memory pool.
-     If we reach this point, I think bfd_release will abort.  */
-  bfd_release (archive, n_nfd);
   bfd_release (archive, new_areldata);
   return NULL;
 }
index 110bb66..3c95b57 100644 (file)
@@ -4237,10 +4237,7 @@ error_free_dyn:
                 We need to get the alignment from the section.  */
              align = new_sec->alignment_power;
            }
-         if (align > old_alignment
-             /* Permit an alignment power of zero if an alignment of one
-                is specified and no other alignments have been specified.  */
-             || (isym->st_value == 1 && old_alignment == 0))
+         if (align > old_alignment)
            h->root.u.c.p->alignment_power = align;
          else
            h->root.u.c.p->alignment_power = old_alignment;