diff options
author | Andrey Belevantsev <abel@ispras.ru> | 2012-01-27 17:47:41 +0400 |
---|---|---|
committer | Andrey Belevantsev <abel@gcc.gnu.org> | 2012-01-27 17:47:41 +0400 |
commit | 3881dee9f01e9de110260ca5ee2be0a50d4e361b (patch) | |
tree | 083a3f9c465c92d16c9531e2235042ab1fc90ad1 /gcc/doc | |
parent | 102344e274f23609bc9bc008ded4a6fd501e5549 (diff) | |
download | gcc-3881dee9f01e9de110260ca5ee2be0a50d4e361b.zip gcc-3881dee9f01e9de110260ca5ee2be0a50d4e361b.tar.gz gcc-3881dee9f01e9de110260ca5ee2be0a50d4e361b.tar.bz2 |
re PR middle-end/51389 (GCC uses up to 75GB of virtual memory)
PR middle-end/51389
* Makefile.in (tree-data-ref.o): Depend on $(PARAMS_H).
* tree-data-ref.h (find_data_references_in_loop): Remove declaration.
* tree-data-ref.c (find_data_references_in_loop): Make static.
(compute_all_dependences): Change return type to bool. Bail out
for too many datarefs in a loop. Move the hunk resetting the data
dependences vector from ...
(compute_data_dependences_for_loop): ... here. Account for
compute_all_dependences returning false.
(compute_data_dependences_for_bb): Likewise.
* params.def (PARAM_LOOP_MAX_DATAREFS_FOR_DATADEPS): New param.
* doc/invoke.texi (loop-max-datarefs-for-datadeps): Document it.
From-SVN: r183624
Diffstat (limited to 'gcc/doc')
-rw-r--r-- | gcc/doc/invoke.texi | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 9f628bf..622b230 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -9115,6 +9115,13 @@ with more basic blocks than this parameter won't have loop invariant motion optimization performed on them. The default value of the parameter is 1000 for -O1 and 10000 for -O2 and above. +@item loop-max-datarefs-for-datadeps +Building data dapendencies is expensive for very large loops. This +parameter limits the number of data references in loops that are +considered for data dependence analysis. These large loops will not +be handled then by the optimizations using loop data dependencies. +The default value is 1000. + @item max-vartrack-size Sets a maximum number of hash table slots to use during variable tracking dataflow analysis of any function. If this limit is exceeded |