Document missing params.

contrib/ChangeLog:

	* check-params-in-docs.py: use flake8 and add some
	tweaks to ignore aarch64 params.

gcc/ChangeLog:

	* doc/invoke.texi: Add missing params.
This commit is contained in:
Martin Liska 2020-12-04 09:36:32 +01:00
parent 9715663f7d
commit 9199da4b59
2 changed files with 44 additions and 8 deletions

View File

@ -23,6 +23,7 @@
# #
import argparse import argparse
import sys
from itertools import dropwhile, takewhile from itertools import dropwhile, takewhile
@ -42,7 +43,7 @@ parser.add_argument('params_output')
args = parser.parse_args() args = parser.parse_args()
ignored = set(['logical-op-non-short-circuit']) ignored = {'logical-op-non-short-circuit'}
params = {} params = {}
for line in open(args.params_output).readlines(): for line in open(args.params_output).readlines():
@ -58,15 +59,21 @@ texi = list(texi)[1:]
token = '@item ' token = '@item '
texi = [x[len(token):] for x in texi if x.startswith(token)] texi = [x[len(token):] for x in texi if x.startswith(token)]
# skip digits
texi = [x for x in texi if not x[0].isdigit()]
# skip aarch64 params
texi = [x for x in texi if not x.startswith('aarch64')]
sorted_texi = sorted(texi) sorted_texi = sorted(texi)
texi_set = set(texi) - ignored texi_set = set(texi) - ignored
params_set = set(params.keys()) - ignored params_set = set(params.keys()) - ignored
success = True
extra = texi_set - params_set extra = texi_set - params_set
if len(extra): if len(extra):
print('Extra:') print('Extra:')
print(extra) print(extra)
success = False
missing = params_set - texi_set missing = params_set - texi_set
if len(missing): if len(missing):
@ -75,6 +82,9 @@ if len(missing):
print('@item ' + m) print('@item ' + m)
print(params[m]) print(params[m])
print() print()
success = False
if texi != sorted_texi: if texi != sorted_texi:
print('WARNING: not sorted alphabetically!') print('WARNING: not sorted alphabetically!')
sys.exit(0 if success else 1)

View File

@ -13041,6 +13041,9 @@ growth limit is needed to avoid exponential explosion of code size. Thus for
smaller units, the size is increased to @option{--param large-unit-insns} smaller units, the size is increased to @option{--param large-unit-insns}
before applying @option{--param inline-unit-growth}. before applying @option{--param inline-unit-growth}.
@item lazy-modules
Maximum number of concurrently open C++ module files when lazy loading.
@item inline-unit-growth @item inline-unit-growth
Specifies maximal overall growth of the compilation unit caused by inlining. Specifies maximal overall growth of the compilation unit caused by inlining.
For example, parameter value 20 limits unit growth to 1.2 times the original For example, parameter value 20 limits unit growth to 1.2 times the original
@ -13052,6 +13055,9 @@ Specifies maximal overall growth of the compilation unit caused by
interprocedural constant propagation. For example, parameter value 10 limits interprocedural constant propagation. For example, parameter value 10 limits
unit growth to 1.1 times the original size. unit growth to 1.1 times the original size.
@item ipa-cp-large-unit-insns
The size of translation unit that IPA-CP pass considers large.
@item large-stack-frame @item large-stack-frame
The limit specifying large stack frames. While inlining the algorithm is trying The limit specifying large stack frames. While inlining the algorithm is trying
to not grow past this limit too much. to not grow past this limit too much.
@ -13106,19 +13112,19 @@ Deeper chains are still handled by late inlining.
Probability (in percent) that C++ inline function with comdat visibility Probability (in percent) that C++ inline function with comdat visibility
are shared across multiple compilation units. are shared across multiple compilation units.
@item ipa-modref-max-bases @item modref-max-bases
@item ipa-modref-max-refs @item modref-max-refs
@item ipa-modref-max-accesses @item modref-max-accesses
Specifies the maximal number of base pointers, referneces and accesses stored Specifies the maximal number of base pointers, referneces and accesses stored
for a single function by mod/ref analysis. for a single function by mod/ref analysis.
@item ipa-modref-max-tests @item modref-max-tests
Specifies the maxmal number of tests alias oracle can perform to disambiguate Specifies the maxmal number of tests alias oracle can perform to disambiguate
memory locations using the mod/ref information. This parameter ought to be memory locations using the mod/ref information. This parameter ought to be
bigger than @option{--param ipa-modref-max-bases} and @option{--param bigger than @option{--param modref-max-bases} and @option{--param
ipa-modref-max-refs}. modref-max-refs}.
@item ipa-modref-max-depth @item modref-max-depth
Specifies the maximum depth of DFS walk used by modref escape analysis. Specifies the maximum depth of DFS walk used by modref escape analysis.
Setting to 0 disables the analysis completely. Setting to 0 disables the analysis completely.
@ -13966,6 +13972,12 @@ If the size of a local variable in bytes is smaller or equal to this
number, directly poison (or unpoison) shadow memory instead of using number, directly poison (or unpoison) shadow memory instead of using
run-time callbacks. run-time callbacks.
@item tsan-distinguish-volatile
Emit special instrumentation for accesses to volatiles.
@item tsan-instrument-func-entry-exit
Emit instrumentation calls to __tsan_func_entry() and __tsan_func_exit().
@item max-fsm-thread-path-insns @item max-fsm-thread-path-insns
Maximum number of instructions to copy when duplicating blocks on a Maximum number of instructions to copy when duplicating blocks on a
finite state automaton jump thread path. finite state automaton jump thread path.
@ -14005,6 +14017,9 @@ we may be able to devirtualize speculatively.
The maximum number of assertions to add along the default edge of a switch The maximum number of assertions to add along the default edge of a switch
statement during VRP. statement during VRP.
@item evrp-mode
Specifies the mode Early VRP should operate in.
@item unroll-jam-min-percent @item unroll-jam-min-percent
The minimum percentage of memory references that must be optimized The minimum percentage of memory references that must be optimized
away for the unroll-and-jam transformation to be considered profitable. away for the unroll-and-jam transformation to be considered profitable.
@ -14169,15 +14184,26 @@ Maximum number of VALUEs handled during a single find_base_term call.
The maximum number of exploded nodes per program point within The maximum number of exploded nodes per program point within
the analyzer, before terminating analysis of that point. the analyzer, before terminating analysis of that point.
@item analyzer-max-constraints
The maximum number of constraints per state.
@item analyzer-min-snodes-for-call-summary @item analyzer-min-snodes-for-call-summary
The minimum number of supernodes within a function for the The minimum number of supernodes within a function for the
analyzer to consider summarizing its effects at call sites. analyzer to consider summarizing its effects at call sites.
@item analyzer-max-enodes-for-full-dump
The maximum depth of exploded nodes that should appear in a dot dump
before switching to a less verbose format.
@item analyzer-max-recursion-depth @item analyzer-max-recursion-depth
The maximum number of times a callsite can appear in a call stack The maximum number of times a callsite can appear in a call stack
within the analyzer, before terminating analysis of a call that would within the analyzer, before terminating analysis of a call that would
recurse deeper. recurse deeper.
@item analyzer-max-svalue-depth
The maximum depth of a symbolic value, before approximating
the value as unknown.
@item gimple-fe-computed-hot-bb-threshold @item gimple-fe-computed-hot-bb-threshold
The number of executions of a basic block which is considered hot. The number of executions of a basic block which is considered hot.
The parameter is used only in GIMPLE FE. The parameter is used only in GIMPLE FE.