aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc/extend.texi
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2005-06-24 17:14:04 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2005-06-24 15:14:04 +0000
commitce91e74c187986865c3de8fbd871242183afa93d (patch)
treecb74c75feb0a3380d0f1a108528cdc35a05f7892 /gcc/doc/extend.texi
parent62765fb14a52c42422b31938deb5893ebe13e735 (diff)
downloadgcc-ce91e74c187986865c3de8fbd871242183afa93d.zip
gcc-ce91e74c187986865c3de8fbd871242183afa93d.tar.gz
gcc-ce91e74c187986865c3de8fbd871242183afa93d.tar.bz2
tree-optimize.c (init_tree_optimization_passes): Fix flags of all_passes and all_ipa_passes.
* tree-optimize.c (init_tree_optimization_passes): Fix flags of all_passes and all_ipa_passes. * c-common.c: Include cgraph.h (handle_externally_visible_attribute): New function. (c_common_att): Add "externally_visible" attribute. * cgraph.c (decide_is_variable_needed): Obey externally visible flag. (cgraph_varpool_finalize_decl): Avoid redundant checking. * cgraph.h (struct cgraph_node): New flag externally_visible. (decide_is_function_needed): Obey externally visible flag. (cgraph_finalize_function): Avoid redundant checks. (cgraph_function_and_variable_visibility): Bring symbols local when asked for. * common.opt (fwhole-program): New flag. * doc/invoke.texi (-fwhole-program): Document. From-SVN: r101295
Diffstat (limited to 'gcc/doc/extend.texi')
-rw-r--r--gcc/doc/extend.texi9
1 files changed, 8 insertions, 1 deletions
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index 6a31e9c..c0363dd 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -1525,7 +1525,8 @@ attributes are currently defined for functions on all targets:
@code{format}, @code{format_arg}, @code{no_instrument_function},
@code{section}, @code{constructor}, @code{destructor}, @code{used},
@code{unused}, @code{deprecated}, @code{weak}, @code{malloc},
-@code{alias}, @code{warn_unused_result} and @code{nonnull}. Several other
+@code{alias}, @code{warn_unused_result}, @code{nonnull}
+and @code{externally_visible}. Several other
attributes are defined for functions on particular target systems. Other
attributes, including @code{section} are supported for variables declarations
(@pxref{Variable Attributes}) and for types (@pxref{Type Attributes}).
@@ -2345,6 +2346,12 @@ also be used with non-function declarations. Weak symbols are supported
for ELF targets, and also for a.out targets when using the GNU assembler
and linker.
+@item externally_visible
+@cindex @code{externally_visible} attribute.
+This attribute, attached to a global variable or function nullify
+effect of @option{-fwhole-program} command line option, so the object
+remain visible outside the current compilation unit
+
@end table
You can specify multiple attributes in a declaration by separating them