OSDN Git Service

* config/obj-elf.c (elf_copy_symbol_attributes): Don't copy
authorjakub <jakub>
Fri, 1 Mar 2002 18:36:07 +0000 (18:36 +0000)
committerjakub <jakub>
Fri, 1 Mar 2002 18:36:07 +0000 (18:36 +0000)
visibility.
(obj_frob_symbol): Copy visibility.

gas/ChangeLog
gas/config/obj-elf.c

index 3651d2b..4eea491 100644 (file)
@@ -1,3 +1,9 @@
+2002-03-01  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/obj-elf.c (elf_copy_symbol_attributes): Don't copy
+       visibility.
+       (obj_frob_symbol): Copy visibility.
+
 2002-02-28  Jakub Jelinek  <jakub@redhat.com>
 
        * config/tc-alpha.c (s_alpha_text): Use obj_elf_text for OBJ_ELF, not
index 13c7482..dcbff5d 100644 (file)
@@ -1408,7 +1408,9 @@ elf_copy_symbol_attributes (dest, src)
       destelf->size = NULL;
     }
   S_SET_SIZE (dest, S_GET_SIZE (src));
-  S_SET_OTHER (dest, S_GET_OTHER (src));
+  /* Don't copy visibility.  */
+  S_SET_OTHER (dest, (ELF_ST_VISIBILITY (S_GET_OTHER (dest))
+                     | (S_GET_OTHER (src) & ~ELF_ST_VISIBILITY (-1))));
 }
 
 void
@@ -1839,6 +1841,8 @@ elf_frob_symbol (symp, puntp)
              /* This will copy over the size information.  */
              copy_symbol_attributes (symp2, symp);
 
+             S_SET_OTHER (symp2, S_GET_OTHER (symp));
+
              if (S_IS_WEAK (symp))
                S_SET_WEAK (symp2);