[Sending to the right list this time] The documentation of the -Q --help=optimizers options leads some to expect that when options are reported as enabled imply the corresponding optimization will take place. (See the following question on gcc-help: https://gcc.gnu.org/ml/gcc-help/2015-10/msg00133.html)
The patch below tries to make it clear that that's not always the case. Martin diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 4f89fa1..337639e 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -1506,6 +1506,16 @@ options, an indication is given as to whether the option is enabled, disabled or set to a specific value (assuming that the compiler knows this at the point where the @option{--help=} option is used). +It's important to note that when a given optimization option is +enabled, either explicitly on the command line or implicitly, whether +or not the optimization it controls will be performed during an +invocation of the compiler may depend on other options. This is +so because many options control various finer aspects of other more +general optimizations that must be enabled in order for the former +option to have any effect. There is currently no command line +interface to determine such dependencies between optimization +options. + Here is a truncated example from the ARM port of @command{gcc}: @smallexample