+2004-03-24 David Edelsohn <edelsohn@gnu.org>
+
+ * doc/invoke.texi (-frename-registers: Add enabled at -O3.
+ (-fprofile-values): Add enabled with profile-{generate,use}.
+ (-fvpt): Same.
+ (-ftracer): Add enabled with profile-use.
+ (-funit-at-a-time): Add enabled at -O2,-O3.
+ (-funroll-loops): Add enabled with profile-use.
+ (-funswitch-loops): Add enabled with profile-use. Remove duplicates.
+ (max-gcse-passes): Mention default.
+ (max-cse-path-length): Mention default.
+
2004-03-24 Nathanael Nerode <neroden@gcc.gnu.org>
* Makefile.in (STRICT2_WARN): Reorder.
make debugging impossible, since variables will no longer stay in
a ``home register''.
+Enabled at levels @option{-O3}.
+
@item -fweb
@opindex fweb
Constructs webs as commonly used for register allocation purposes and assign
from profiling values of expressions and adds @samp{REG_VALUE_PROFILE}
notes to instructions for their later usage in optimizations.
+Enabled with @option{-profile-generate} and @option{-profile-use}.
+
@item -fvpt
@opindex fvpt
If combined with @option{-fprofile-arcs}, it instructs the compiler to add
Currently the optimizations include specialization of division operation
using the knowledge about the value of the denominator.
+Enabled with @option{-profile-generate} and @option{-profile-use}.
+
@item -fnew-ra
@opindex fnew-ra
Use a graph coloring register allocator. Currently this option is meant
simplifies the control flow of the function allowing other optimizations to do
better job.
+Enabled with @option{-profile-use}.
+
@item -funit-at-a-time
@opindex funit-at-a-time
Parse the whole compilation unit before starting to produce code.
This allows some extra optimizations to take place but consumes more
memory.
+Enabled at levels @option{-O2}, @option{-O3}.
+
@item -funroll-loops
@opindex funroll-loops
Unroll loops whose number of iterations can be determined at compile time or
(i.e. complete removal of loops with small constant number of iterations).
This option makes code larger, and may or may not make it run faster.
+Enabled with @option{-profile-use}.
+
@item -funroll-all-loops
@opindex funroll-all-loops
Unroll all loops, even if their number of iterations is uncertain when
roll much (from profile feedback). It also turns on complete loop peeling
(i.e. complete removal of loops with small constant number of iterations).
+Enabled with @option{-profile-use}.
+
@item -funswitch-loops
@opindex funswitch-loops
Move branches with loop invariant conditions out of the loop, with duplicates
@option{-fold-unroll-all-loops} implies the same options as
@option{-fold-unroll-loops}.
-@item -funswitch-loops
-@opindex funswitch-loops
-Move branches with loop invariant conditions out of the loop, with duplicates
-of the loop on both branches (modified according to result of the condition).
-
-@item -funswitch-loops
-@opindex funswitch-loops
-Move branches with loop invariant conditions out of the loop, with duplicates
-of the loop on both branches (modified according to result of the condition).
-
@item -fprefetch-loop-arrays
@opindex fprefetch-loop-arrays
If supported by the target machine, generate instructions to prefetch
@item -fbtr-bb-exclusive
@opindex fbtr-bb-exclusive
-WHen performing branch target register load optimization, don't reuse
+When performing branch target register load optimization, don't reuse
branch target registers in within any basic block.
@item --param @var{name}=@var{value}
optimization will not be done.
@item max-gcse-passes
-The maximum number of passes of GCSE to run.
+The maximum number of passes of GCSE to run. The default is 1.
@item max-pending-list-length
The maximum number of pending dependencies scheduling will allow
@item max-cse-path-length
-Maximum number of basic blocks on path that cse considers.
+Maximum number of basic blocks on path that cse considers. The default is 10.
@item ggc-min-expand