diff options
author | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-02-26 21:17:22 +0000 |
---|---|---|
committer | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-02-26 21:17:22 +0000 |
commit | b4cf9ec1b3186614f2a781fa2ed60b7186d09aa9 (patch) | |
tree | bf177b7375ac3fceb1bd51f1f20b2ff845e3fbba /gcc/crtstuff.c | |
parent | 7e03286092d39bb21446e09602b7bf37f312a2c0 (diff) | |
download | gcc-b4cf9ec1b3186614f2a781fa2ed60b7186d09aa9.tar.gz |
* 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: svn+ssh://gcc.gnu.org/svn/gcc/trunk@50061 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/crtstuff.c')
-rw-r--r-- | gcc/crtstuff.c | 6 |
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 |