aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vectorizer.h
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2023-08-08 12:46:42 +0200
committerRichard Biener <rguenther@suse.de>2023-08-08 14:24:12 +0200
commit31ec413098bd334115aff73fc755e49afd3ac371 (patch)
tree7f50ee79560b42cfb2c673638627441d58bf57b4 /gcc/tree-vectorizer.h
parent25c4b1620ebc10fceabd86a34fdbbaf8037e7e82 (diff)
downloadgcc-31ec413098bd334115aff73fc755e49afd3ac371.zip
gcc-31ec413098bd334115aff73fc755e49afd3ac371.tar.gz
gcc-31ec413098bd334115aff73fc755e49afd3ac371.tar.bz2
tree-optimization/110924 - fix vop liveness for noreturn const CFG parts
The virtual operand live problem used by sinking assumes we have virtual uses at each end point of the CFG but as shown in the PR this isn't true for parts for example ending in __builtin_unreachable. The following removes the optimization made possible by this and now requires marking backedges. PR tree-optimization/110924 * tree-ssa-live.h (virtual_operand_live): Update comment. * tree-ssa-live.cc (virtual_operand_live::get_live_in): Remove optimization, look at each predecessor. * tree-ssa-sink.cc (pass_sink_code::execute): Mark backedges. * gcc.dg/torture/pr110924.c: New testcase.
Diffstat (limited to 'gcc/tree-vectorizer.h')
0 files changed, 0 insertions, 0 deletions