aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2010-04-27 16:56:33 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2010-04-27 14:56:33 +0000
commite65bb9be499d2cea82fdfad49d7cf901167f9562 (patch)
treeba01f849174d822c82ea0fcae6a53e429d1ab377 /gcc/doc
parent38e3d8681f2e6773b44afc6beee57630e9b20b8e (diff)
downloadgcc-e65bb9be499d2cea82fdfad49d7cf901167f9562.zip
gcc-e65bb9be499d2cea82fdfad49d7cf901167f9562.tar.gz
gcc-e65bb9be499d2cea82fdfad49d7cf901167f9562.tar.bz2
invoke.texi (-fipa-profile): Document.
* doc/invoke.texi (-fipa-profile): Document. * opts.c (decode_options): Enable ipa-profile at -O1. * timevar.def (TV_IPA_PROFILE): Define. * common.opt (fipa-profile): Add. * cgraph.c (cgraph_clone_node): Set local flag and clear vtable method flag for clones. (cgraph_propagate_frequency): Handle only local ones. * tree-pass.h (pass_ipa_profile): Declare. * ipa-profile.c (gate_profile): Use flag_ipa_profile. (pass_ipa_profile): Use TV_IPA_PROFILE. * ipa.c (ipa_profile): New function. (gate_ipa_profile): Likewise. (pass_ipa_profile): New global variable. * passes.c (pass_ipa_profile): New. From-SVN: r158788
Diffstat (limited to 'gcc/doc')
-rw-r--r--gcc/doc/invoke.texi12
1 files changed, 11 insertions, 1 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 9829c1f..23f744b 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -344,7 +344,7 @@ Objective-C and Objective-C++ Dialects}.
-fgcse-sm -fif-conversion -fif-conversion2 -findirect-inlining @gol
-finline-functions -finline-functions-called-once -finline-limit=@var{n} @gol
-finline-small-functions -fipa-cp -fipa-cp-clone -fipa-matrix-reorg -fipa-pta @gol
--fipa-pure-const -fipa-reference -fipa-struct-reorg @gol
+-fipa-profile -fipa-pure-const -fipa-reference -fipa-struct-reorg @gol
-fipa-type-escape -fira-algorithm=@var{algorithm} @gol
-fira-region=@var{region} -fira-coalesce @gol
-fira-loop-pressure -fno-ira-share-save-slots @gol
@@ -5762,6 +5762,7 @@ compilation time.
-fif-conversion2 @gol
-fif-conversion @gol
-fipa-pure-const @gol
+-fipa-profile @gol
-fipa-reference @gol
-fmerge-constants
-fsplit-wide-types @gol
@@ -6602,6 +6603,15 @@ and reference analysis. This option can cause excessive memory and
compile-time usage on large compilation units. It is not enabled by
default at any optimization level.
+@item -fipa-profile
+@opindex fipa-profile
+Perform interprocedural profile propagation. The functions called only from
+cold functions are marked as cold. Also functions executed once (such as
+@code{cold}, @code{noreturn}, static constructors or destructors) are identified. Cold
+functions and loop less parts of functions executed once are then optimized for
+size.
+Enabled by default at @option{-O} and higher.
+
@item -fipa-cp
@opindex fipa-cp
Perform interprocedural constant propagation.