From: Richard Biener Date: Thu, 7 Mar 2013 08:54:49 +0000 (+0000) Subject: invoke.texi (fwhole-program): Discourage use in combination with -flto. X-Git-Tag: upstream/12.2.0~70953 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2c653d4684423b9896f4b62ff1907c8fd96b556a;p=platform%2Fupstream%2Fgcc.git invoke.texi (fwhole-program): Discourage use in combination with -flto. 2013-03-07 Richard Biener * doc/invoke.texi (fwhole-program): Discourage use in combination with -flto. From-SVN: r196518 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d9a8e4f..af3dd81 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2013-03-07 Richard Biener + + * doc/invoke.texi (fwhole-program): Discourage use in combination + with -flto. + 2013-03-06 Jakub Jelinek * config/arm/t-arm (TM_H, OPTIONS_H_EXTRA): Add arm-cores.def. diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 11c34d8..d81c78d 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -8168,15 +8168,11 @@ Enabled by default with @option{-funroll-loops}. Assume that the current compilation unit represents the whole program being compiled. All public functions and variables with the exception of @code{main} and those merged by attribute @code{externally_visible} become static functions -and in effect are optimized more aggressively by interprocedural optimizers. If @command{gold} is used as the linker plugin, @code{externally_visible} attributes are automatically added to functions (not variable yet due to a current @command{gold} issue) that are accessed outside of LTO objects according to resolution file produced by @command{gold}. For other linkers that cannot generate resolution file, explicit @code{externally_visible} attributes are still necessary. -While this option is equivalent to proper use of the @code{static} keyword for -programs consisting of a single file, in combination with option -@option{-flto} this flag can be used to -compile many smaller scale programs since the functions and variables become -local for the whole combined compilation unit, not for the single source file -itself. - -This option implies @option{-fwhole-file} for Fortran programs. +and in effect are optimized more aggressively by interprocedural optimizers. + +In combination with @code{-flto} using this option should not be used. +Instead relying on a linker plugin should provide safer and more precise +information. @item -flto[=@var{n}] @opindex flto