]> git.ipfire.org Git - thirdparty/gcc.git/commit
Avoid assuming maximum string length is constant [PR102960].
authorMartin Sebor <msebor@redhat.com>
Tue, 16 Nov 2021 16:18:25 +0000 (09:18 -0700)
committerMartin Sebor <msebor@redhat.com>
Tue, 16 Nov 2021 16:18:25 +0000 (09:18 -0700)
commitba6e17e78db543b336c196b55fa6430e513f1941
tree834fa5781c510ed696423f889b3bcc46572f9729
parent0002a8a1997c7beb3c4facc17ed0d1294e3dce14
Avoid assuming maximum string length is constant [PR102960].

Resolves:
PR tree-optimization/102960 - ICE: in sign_mask, at wide-int.h:855 in GCC 10.3.0

gcc/ChangeLog:

PR tree-optimization/102960
* gimple-fold.c (get_range_strlen): Take bitmap as an argument rather
than a pointer to it.
(get_range_strlen_tree): Same.  Remove bitmap allocation.  Use
an auto_bitmap.
(get_maxval_strlen): Use an auto_bitmap.
* tree-ssa-strlen.c (get_range_strlen_dynamic): Factor out PHI
handling...
(get_range_strlen_phi): ...into this function.
Avoid assuming maximum string length is constant
(printf_strlen_execute): Dump pointer query cache contents when
details are requisted.

gcc/testsuite/ChangeLog:

PR tree-optimization/102960
* gcc.dg/Wstringop-overflow-84.c: New test.
gcc/gimple-fold.c
gcc/testsuite/gcc.dg/Wstringop-overflow-84.c [new file with mode: 0644]
gcc/tree-ssa-strlen.c