aboutsummaryrefslogtreecommitdiff
path: root/gcc/crtstuff.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2002-02-26 21:17:22 +0000
committerJakub Jelinek <jakub@redhat.com>2002-02-26 21:17:22 +0000
commitc31e98539498e86185a0c9955a6f0eec8010a33e (patch)
treebf177b7375ac3fceb1bd51f1f20b2ff845e3fbba /gcc/crtstuff.c
parent7cc85f2ec072e1721ab5ab4911bdf17e54d9a09a (diff)
* attribs.c (c_common_attribute_table): Add visibility.
(handle_visibility_attribute): New function. * varasm.c (assemble_visibility): New function. * output.h (assemble_visibility): Add prototype. * tree.h (MODULE_LOCAL_P): Define. * crtstuff.c (__dso_handle): Use visibility attribute. * config/i386/i386.h (ENCODE_SECTION_INFO): Set SYMBOL_REF_FLAG for MODULE_LOCAL_P symbols too. * config/ia64/ia64.c (ia64_encode_section_info): Handle MODULE_LOCAL_P symbols the same way as local symbols. Add SDATA_NAME_FLAG_CHAR even if decl was explicitely forced into .sdata/.sbss by the user. * doc/extend.texi (Function Attributes): Document visibility attribute. * gcc.dg/ia64-visibility-1.c: New test. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@50061 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/crtstuff.c')
-rw-r--r--gcc/crtstuff.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/gcc/crtstuff.c b/gcc/crtstuff.c
index d3484e3a846..bfe61168736 100644
--- a/gcc/crtstuff.c
+++ b/gcc/crtstuff.c
@@ -213,13 +213,9 @@ STATIC void *__JCR_LIST__[]
in one DSO or the main program is not used in another object. The
dynamic linker takes care of this. */
-/* XXX Ideally the following should be implemented using
- __attribute__ ((__visibility__ ("hidden")))
- but the __attribute__ support is not yet there. */
#ifdef HAVE_GAS_HIDDEN
-asm (".hidden\t__dso_handle");
+extern void *__dso_handle __attribute__ ((__visibility__ ("hidden")));
#endif
-
#ifdef CRTSTUFFS_O
void *__dso_handle = &__dso_handle;
#else