tree-optimization/98786 - fix issue with phiopt and abnormals
authorRichard Biener <rguenther@suse.de>
Fri, 22 Jan 2021 09:34:42 +0000 (10:34 +0100)
committerRichard Biener <rguenther@suse.de>
Fri, 22 Jan 2021 09:37:51 +0000 (10:37 +0100)
commitfd61ca67f97acc5462d02676380af92329c37bb2
tree8b2f0f563677b6bb8e2ec3bfd3c3a907308f8e69
parent4e3beaca15cab2de88a68d76f0aabc68e68f678a
tree-optimization/98786 - fix issue with phiopt and abnormals

This fixes factor_out_conditional_conversion to avoid creating overlapping
lifetimes for abnormals.  It also makes sure we do deal with a conditional
conversion (at least for one PHI arg def) - for the testcase that wasn't the case.

2021-01-22  Richard Biener  <rguenther@suse.de>

PR tree-optimization/98786
* tree-ssa-phiopt.c (factor_out_conditional_conversion): Avoid
adding new uses of abnormals.  Verify we deal with a conditional
conversion.

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