diff options
author | Jakub Jelinek <jakub@redhat.com> | 2015-01-08 22:30:56 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2015-01-08 22:30:56 +0100 |
commit | 204a913bda3c3228723ea13e41c9dd831c362b33 (patch) | |
tree | 769905ce0ea2dd0ec84a6ed340016c2adba5f3d1 /gcc/params.def | |
parent | 57534689d75b6164dae4ac7f5c6f23d543f63583 (diff) | |
download | gcc-204a913bda3c3228723ea13e41c9dd831c362b33.zip gcc-204a913bda3c3228723ea13e41c9dd831c362b33.tar.gz gcc-204a913bda3c3228723ea13e41c9dd831c362b33.tar.bz2 |
re PR tree-optimization/63989 (tree-ssa-strlen.c doesn't handle constant pointer plus and array refs if constant offset is smaller than known constant string length)
PR tree-optimization/63989
* params.def (PARAM_MAX_TRACKED_STRLENS): Increment default
from 1000 to 10000.
* tree-ssa-strlen.c (get_strinfo): Moved earlier.
(get_stridx): If we don't have a record for certain SSA_NAME,
but it is POINTER_PLUS_EXPR of some SSA_NAME we do with
constant offset, call get_stridx_plus_constant.
(get_stridx_plus_constant): New function.
(zero_length_string): Don't use get_stridx here.
* gcc.dg/strlenopt-27.c: New test.
From-SVN: r219362
Diffstat (limited to 'gcc/params.def')
-rw-r--r-- | gcc/params.def | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/params.def b/gcc/params.def index 4e68273..cbdc477 100644 --- a/gcc/params.def +++ b/gcc/params.def @@ -1078,7 +1078,7 @@ DEFPARAM (PARAM_MAX_TRACKED_STRLENS, "max-tracked-strlens", "Maximum number of strings for which strlen optimization pass will " "track string lengths", - 1000, 0, 0) + 10000, 0, 0) /* Keep this in sync with the sched_pressure_algorithm enum. */ DEFPARAM (PARAM_SCHED_PRESSURE_ALGORITHM, |