* coffcode.h (coff_write_object_contents): In comdat section lookup,
authorDavid Edelsohn <dje.gcc@gmail.com>
Thu, 2 May 1996 02:41:20 +0000 (02:41 +0000)
committerDavid Edelsohn <dje.gcc@gmail.com>
Thu, 2 May 1996 02:41:20 +0000 (02:41 +0000)
stop looking when section is found.

bfd/ChangeLog
bfd/coffcode.h

index f2e4ff52538441fa3024cdf238a3eb6c0d571db3..40c0fe4b4c6e25930f5563dde8cf95ebfeefe9d6 100644 (file)
@@ -1,3 +1,8 @@
+Wed May  1 18:39:32 1996  Doug Evans  <dje@canuck.cygnus.com>
+
+       * coffcode.h (coff_write_object_contents): In comdat section lookup,
+       stop looking when section is found.
+
 Wed May  1 14:17:57 1996  Ian Lance Taylor  <ian@cygnus.com>
 
        * coffcode.h (STRING_SIZE_SIZE): Define.
index 520d048b03a4875bfdd2bd0afba8c38bcf2b6bc9..2c716f66ff226840bb6bfe28de7ccfe6bf5ac360 100644 (file)
@@ -2471,28 +2471,35 @@ coff_write_object_contents (abfd)
        {
          unsigned int i, count;
          asymbol **psym;
+         coff_symbol_type *csym;
 
          count = bfd_get_symcount (abfd);
          for (i = 0, psym = abfd->outsymbols; i < count; i++, psym++)
            {
-             coff_symbol_type *csym;
-             combined_entry_type *aux;
-
-             if (strcmp ((*psym)->name, current->name) != 0)
-               continue;
+             /* Here *PSYM is the section symbol for CURRENT.  */
 
-             csym = coff_symbol_from (abfd, *psym);
-             if (csym == NULL
-                 || csym->native == NULL
-                 || csym->native->u.syment.n_numaux < 1
-                 || csym->native->u.syment.n_sclass != C_STAT
-                 || csym->native->u.syment.n_type != T_NULL)
-               continue;
+             if (strcmp ((*psym)->name, current->name) == 0)
+               {
+                 csym = coff_symbol_from (abfd, *psym);
+                 if (csym == NULL
+                     || csym->native == NULL
+                     || csym->native->u.syment.n_numaux < 1
+                     || csym->native->u.syment.n_sclass != C_STAT
+                     || csym->native->u.syment.n_type != T_NULL)
+                   continue;
+                 break;
+               }
+           }
 
-             /* Here *PSYM is the section symbol for CURRENT.  */
+         /* Did we find it?
+            Note that we might not if we're converting the file from
+            some other object file format.  */
+         if (i < count)
+           {
+             combined_entry_type *aux;
 
              /* We don't touch the x_checksum field.  The
-                 x_associated field is not currently supported.  */
+                x_associated field is not currently supported.  */
 
              aux = csym->native + 1;
              switch (current->flags & SEC_LINK_DUPLICATES)