]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR lto/41591 (documentation should document interaction of -flto and -fwhole-program)
authorTobias Burnus <burnus@net-b.de>
Tue, 6 Oct 2009 10:38:12 +0000 (12:38 +0200)
committerTobias Burnus <burnus@gcc.gnu.org>
Tue, 6 Oct 2009 10:38:12 +0000 (12:38 +0200)
2009-10-06  Tobias Burnus  <burnus@net-b.de>

       PR lto/41591
       * doc/invoke.texi (-flto,-fwhole-program): Make clear that the
       -flto and -fwhole-program flags can be combined.

From-SVN: r152490

gcc/ChangeLog
gcc/doc/invoke.texi

index 17d2717cba923e5cf08da0770e40439632966882..78230e8a52062372a9ce196e3e48965adc931e94 100644 (file)
@@ -1,3 +1,9 @@
+2009-10-06  Tobias Burnus  <burnus@net-b.de>
+
+       PR lto/41591
+       * doc/invoke.texi (-flto,-fwhole-program): Make clear that the
+       -flto and -fwhole-program flags can be combined.
+
 2009-10-06  Ryan Mansfield  <rmansfield@qnx.com>
 
        PR driver/41217
index 3cb309c657dc9313c25b5f566cdf0afd8268049b..75622b3d19b60cc62ba361f3aac25e7637e1ef85 100644 (file)
@@ -7105,9 +7105,10 @@ and those merged by attribute @code{externally_visible} become static functions
 and in effect are optimized more aggressively by interprocedural optimizers.
 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{--combine} this flag can be used to compile many smaller scale C
-programs since the functions and variables become local for the whole combined
-compilation unit, not for the single source file itself.
+@option{-combine}, @option{-flto} or @option{-fwhopr} 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.
 
@@ -7245,6 +7246,13 @@ If you are not using @command{gold} and/or do not specify
 will be extracted and linked as usual, but they will not participate
 in the LTO optimization process.
 
+Link time optimizations do not require the presence of the whole
+program to operate.  If the program does not require any symbols to
+be exported, it is possible to combine @option{-flto} and
+@option{-fwhopr} with @option{-fwhole-program} to allow the
+interprocedural optimizers to use more aggressive assumptions which
+may lead to improved optimization opportunities.
+
 Regarding portability: the current implementation of LTO makes no
 attempt at generating bytecode that can be ported between different
 types of hosts.  The bytecode files are versioned and there is a