diff options
author | Richard Biener <rguenther@suse.de> | 2023-07-04 10:29:26 +0200 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2023-07-04 11:11:45 +0200 |
commit | b083203f053f1666e9cc1ded2abdf4e1688d1ec0 (patch) | |
tree | d7ef796b7d23e69b71ec198f8c48c6c52769af83 /gcc/tree-ssa-phiopt.cc | |
parent | 729aa4fa48d627c4344764676edad3b65d40a003 (diff) | |
download | gcc-b083203f053f1666e9cc1ded2abdf4e1688d1ec0.zip gcc-b083203f053f1666e9cc1ded2abdf4e1688d1ec0.tar.gz gcc-b083203f053f1666e9cc1ded2abdf4e1688d1ec0.tar.bz2 |
tree-optimization/110228 - avoid undefs in ifcombine more thoroughly
The following replaces the simplistic gimple_uses_undefined_value_p
with the conservative mark_ssa_maybe_undefs approach as already
used by LIM and IVOPTs. This is to avoid exposing an unconditional
uninitialized read on a path from entry by if-combine.
PR tree-optimization/110228
* tree-ssa-ifcombine.cc (pass_tree_ifcombine::execute):
Mark SSA may-undefs.
(bb_no_side_effects_p): Check stmt uses for undefs.
* gcc.dg/torture/pr110228.c: New testcase.
* gcc.dg/uninit-pr101912.c: Un-XFAIL.
Diffstat (limited to 'gcc/tree-ssa-phiopt.cc')
0 files changed, 0 insertions, 0 deletions