From 9199da4b59c34cbcf2cea912b39400d7e90525d6 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Fri, 4 Dec 2020 09:36:32 +0100 Subject: [PATCH] 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. --- contrib/check-params-in-docs.py | 12 +++++++++- gcc/doc/invoke.texi | 40 +++++++++++++++++++++++++++------ 2 files changed, 44 insertions(+), 8 deletions(-) diff --git a/contrib/check-params-in-docs.py b/contrib/check-params-in-docs.py index dfbfa3d0067..440549f5fd8 100755 --- a/contrib/check-params-in-docs.py +++ b/contrib/check-params-in-docs.py @@ -23,6 +23,7 @@ # import argparse +import sys from itertools import dropwhile, takewhile @@ -42,7 +43,7 @@ parser.add_argument('params_output') args = parser.parse_args() -ignored = set(['logical-op-non-short-circuit']) +ignored = {'logical-op-non-short-circuit'} params = {} for line in open(args.params_output).readlines(): @@ -58,15 +59,21 @@ texi = list(texi)[1:] token = '@item ' 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) texi_set = set(texi) - ignored params_set = set(params.keys()) - ignored +success = True extra = texi_set - params_set if len(extra): print('Extra:') print(extra) + success = False missing = params_set - texi_set if len(missing): @@ -75,6 +82,9 @@ if len(missing): print('@item ' + m) print(params[m]) print() + success = False if texi != sorted_texi: print('WARNING: not sorted alphabetically!') + +sys.exit(0 if success else 1) diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 615eae9a1c5..38c4d6a865a 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -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} 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 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 @@ -13052,6 +13055,9 @@ Specifies maximal overall growth of the compilation unit caused by interprocedural constant propagation. For example, parameter value 10 limits 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 The limit specifying large stack frames. While inlining the algorithm is trying 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 are shared across multiple compilation units. -@item ipa-modref-max-bases -@item ipa-modref-max-refs -@item ipa-modref-max-accesses +@item modref-max-bases +@item modref-max-refs +@item modref-max-accesses Specifies the maximal number of base pointers, referneces and accesses stored 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 memory locations using the mod/ref information. This parameter ought to be -bigger than @option{--param ipa-modref-max-bases} and @option{--param -ipa-modref-max-refs}. +bigger than @option{--param modref-max-bases} and @option{--param +modref-max-refs}. -@item ipa-modref-max-depth +@item modref-max-depth Specifies the maximum depth of DFS walk used by modref escape analysis. 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 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 Maximum number of instructions to copy when duplicating blocks on a 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 statement during VRP. +@item evrp-mode +Specifies the mode Early VRP should operate in. + @item unroll-jam-min-percent The minimum percentage of memory references that must be optimized 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 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 The minimum number of supernodes within a function for the 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 The maximum number of times a callsite can appear in a call stack within the analyzer, before terminating analysis of a call that would 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 The number of executions of a basic block which is considered hot. The parameter is used only in GIMPLE FE.