diff options
author | Richard Biener <rguenther@suse.de> | 2022-07-05 11:38:52 +0200 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2022-07-05 14:11:51 +0200 |
commit | c3d2600cfb476e576fd27f3f29f49e968e86774d (patch) | |
tree | 628cabfcc381f5391a4feca01a243160c50a0897 /gcc/ada/gcc-interface | |
parent | 1a6e0d8252a71c61d4dc616044fb25b5ac2cfffb (diff) | |
download | gcc-c3d2600cfb476e576fd27f3f29f49e968e86774d.zip gcc-c3d2600cfb476e576fd27f3f29f49e968e86774d.tar.gz gcc-c3d2600cfb476e576fd27f3f29f49e968e86774d.tar.bz2 |
tree-optimization/106186 - propagate out virtual LC PHI nodes properly
The code to remove LC PHI nodes in clean_up_loop_closed_phi does not handle
virtual operands because may_propagate_copy generally returns false
for them. The following copies the merge_blocks variant for
dealing with them.
This fixes a missed jump threading in gcc.dg/auto-init-uninit-4.c
which manifests in bogus uninit diagnostics.
PR tree-optimization/106186
* tree-ssa-propagate.cc (clean_up_loop_closed_phi):
Properly handle virtual PHI nodes.
Diffstat (limited to 'gcc/ada/gcc-interface')
0 files changed, 0 insertions, 0 deletions