tree-optimization/97897 - complex lowering on abnormal edges
authorRichard Biener <rguenther@suse.de>
Thu, 19 Nov 2020 08:06:50 +0000 (09:06 +0100)
committerRichard Biener <rguenther@suse.de>
Thu, 19 Nov 2020 08:57:38 +0000 (09:57 +0100)
commit0d8290959ecf2c5f1dd062e57782b5e91be0f8f6
treebe1ae52e391d9cd7ac8dc246f4bfc0f5da8e81ae
parent50134189a434e638861f8bf27d5caab9622811c8
tree-optimization/97897 - complex lowering on abnormal edges

This fixes complex lowering to not put constants into abnormal
edge PHI values by making sure abnormally used SSA names are
VARYING in its propagation lattice.

2020-11-19  Richard Biener  <rguenther@suse.de>

PR tree-optimization/97897
* tree-complex.c (complex_propagate::visit_stmt): Make sure
abnormally used SSA names are VARYING.
(complex_propagate::visit_phi): Likewise.
* tree-ssa.c (verify_phi_args): Verify PHI arguments on abnormal
edges are SSA names.

* gcc.dg/pr97897.c: New testcase.
gcc/testsuite/gcc.dg/pr97897.c [new file with mode: 0644]
gcc/tree-complex.c
gcc/tree-ssa.c