From 1ca7a4d457a6d4769f3e6fa9f880e58a7a2eb8c8 Mon Sep 17 00:00:00 2001 From: Alexander Monakov Date: Wed, 29 Aug 2018 15:39:12 +0300 Subject: [PATCH] doc: document -ftree-scev-cprop PR other/86726 * invoke.texi (Optimization Options): List -ftree-scev-cprop. (-O): Ditto. (-ftree-scev-cprop): Document. From-SVN: r263955 --- gcc/ChangeLog | 7 +++++++ gcc/doc/invoke.texi | 12 +++++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 82d6659..a8a9b2d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2018-08-29 Alexander Monakov + + PR other/86726 + * invoke.texi (Optimization Options): List -ftree-scev-cprop. + (-O): Ditto. + (-ftree-scev-cprop): Document. + 2018-08-29 Jan Hubicka * sreal.h (normalize, normalize_up, normalize_down): Add new_sig/new_exp diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index e37233d..089f844 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -464,7 +464,7 @@ Objective-C and Objective-C++ Dialects}. -ftree-loop-ivcanon -ftree-loop-linear -ftree-loop-optimize @gol -ftree-loop-vectorize @gol -ftree-parallelize-loops=@var{n} -ftree-pre -ftree-partial-pre -ftree-pta @gol --ftree-reassoc -ftree-sink -ftree-slsr -ftree-sra @gol +-ftree-reassoc -ftree-scev-cprop -ftree-sink -ftree-slsr -ftree-sra @gol -ftree-switch-conversion -ftree-tail-merge @gol -ftree-ter -ftree-vectorize -ftree-vrp -funconstrained-commons @gol -funit-at-a-time -funroll-all-loops -funroll-loops @gol @@ -7813,6 +7813,7 @@ compilation time. -ftree-forwprop @gol -ftree-fre @gol -ftree-phiprop @gol +-ftree-scev-cprop @gol -ftree-sink @gol -ftree-slsr @gol -ftree-sra @gol @@ -9120,6 +9121,15 @@ determining number of iterations requires complicated analysis. Later optimizations then may determine the number easily. Useful especially in connection with unrolling. +@item -ftree-scev-cprop +@opindex ftree-scev-cprop +Perform final value replacement. If a variable is modified in a loop +in such a way that its value when exiting the loop can be determined using +only its initial value and the number of loop iterations, replace uses of +the final value by such a computation, provided it is sufficiently cheap. +This reduces data dependencies and may allow further simplifications. +Enabled by default at @option{-O} and higher. + @item -fivopts @opindex fivopts Perform induction variable optimizations (strength reduction, induction -- 2.7.4