]> gcc.gnu.org Git - gcc.git/commit
tree-optimization/100053 - fix predication in VN
authorRichard Biener <rguenther@suse.de>
Tue, 13 Apr 2021 10:05:53 +0000 (12:05 +0200)
committerRichard Biener <rguenther@suse.de>
Tue, 4 May 2021 12:44:35 +0000 (14:44 +0200)
commit6f2a65357f7b122a4e2b78b235d6faaa3d7ab3a4
tree9e4fd90c0d7d761751532fe8a323bfffd12d8fab
parent4595028e7212d6870e9e236f1f5a016b50708b7c
tree-optimization/100053 - fix predication in VN

This avoids doing optimistic dominance queries involving
non-executable backedges when validating recorded predicated values
in VN because we have no way to force re-evaluating validity when
optimistically not executable edges become executable later.

2021-04-13  Richard Biener  <rguenther@suse.de>

PR tree-optimization/100053
* tree-ssa-sccvn.c (vn_nary_op_get_predicated_value): Do
not use optimistic dominance queries for backedges to validate
predicated values.
(dominated_by_p_w_unex): Add parameter to ignore executable
state on backedges.
(rpo_elim::eliminate_avail): Adjust.

* gcc.dg/torture/pr100053.c: New testcase.
* gcc.dg/tree-ssa/ssa-fre-93.c: Likewise.

(cherry picked from commit f9810422f6768b914aabfcbffe64f535bdd18452)
gcc/testsuite/gcc.dg/torture/pr100053.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-93.c [new file with mode: 0644]
gcc/tree-ssa-sccvn.c
This page took 0.066723 seconds and 6 git commands to generate.