https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91178
--- Comment #13 from Richard Biener <rguenth at gcc dot gnu.org> --- Author: rguenth Date: Fri Aug 2 08:40:34 2019 New Revision: 274000 URL: https://gcc.gnu.org/viewcvs?rev=274000&root=gcc&view=rev Log: 2019-08-02 Richard Biener <rguent...@suse.de> Backport from mainline 2019-07-31 Richard Biener <rguent...@suse.de> PR tree-optimization/91178 * tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address): Use tail-recursion. * gcc.dg/torture/pr91178-2.c: New testcase. 2019-07-17 Richard Biener <rguent...@suse.de> PR tree-optimization/91178 * tree-ssa.c (release_defs_bitset): Iterate from higher to lower SSA names to avoid quadratic behavior in the common case. * tree-data-ref.c (split_constant_offset): Add limit argument and pass it down. Initialize it from PARAM_SSA_NAME_DEF_CHAIN_LIMIT. (split_constant_offset_1): Add limit argument and use it to limit SSA def walking. Optimize the common plus/minus case. * gcc.dg/torture/pr91178.c: New testcase. 2019-07-12 Martin Sebor <mse...@redhat.com> * doc/invoke.texi (ssa-name-def-chain-limit): Document new --param. * params.def (PARAM_SSA_NAME_DEF_CHAIN_LIMIT): Add new --param. * tree-vrp.c (vrp_prop::check_mem_ref): Use PARAM_SSA_NAME_DEF_CHAIN_LIMIT. * gcc.dg/Warray-bounds-43.c: New test. Added: branches/gcc-9-branch/gcc/testsuite/gcc.dg/Warray-bounds-43.c branches/gcc-9-branch/gcc/testsuite/gcc.dg/torture/pr91178-2.c branches/gcc-9-branch/gcc/testsuite/gcc.dg/torture/pr91178.c Modified: branches/gcc-9-branch/gcc/ChangeLog branches/gcc-9-branch/gcc/doc/invoke.texi branches/gcc-9-branch/gcc/params.def branches/gcc-9-branch/gcc/testsuite/ChangeLog branches/gcc-9-branch/gcc/tree-data-ref.c branches/gcc-9-branch/gcc/tree-ssa-sccvn.c branches/gcc-9-branch/gcc/tree-ssa.c branches/gcc-9-branch/gcc/tree-vrp.c