]> git.ipfire.org Git - thirdparty/gcc.git/commit
tree-optimization/106809 - compile time hog in VN
authorRichard Biener <rguenther@suse.de>
Fri, 2 Sep 2022 11:36:13 +0000 (13:36 +0200)
committerRichard Biener <rguenther@suse.de>
Fri, 2 Sep 2022 12:33:07 +0000 (14:33 +0200)
commitbe1b42de9c151d46c89f9a8f82d4c5839a19ea94
treeedf8f4c735300d5b6fb3d2a4d5fa28e3296c03cb
parentd72ca12b846a9f5c01674b280b1817876c77888f
tree-optimization/106809 - compile time hog in VN

The dominated_by_p_w_unex function is prone to high compile time.
With GCC 12 we introduced a VN run for uninit diagnostics which now
runs into a degenerate case with bison generated code.  Fortunately
this case is easy to fix with a simple extra check - a more
general fix needs more work.

PR tree-optimization/106809
* tree-ssa-sccvn.cc (dominaged_by_p_w_unex): Check we have
more than one successor before doing extra work.

* gcc.dg/torture/pr106809.c: New testcase.
gcc/testsuite/gcc.dg/torture/pr106809.c [new file with mode: 0644]
gcc/tree-ssa-sccvn.cc