diff options
author | Richard Biener <rguenther@suse.de> | 2025-04-30 11:52:17 +0200 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2025-06-06 09:52:37 +0200 |
commit | 4d375ebd56c54dc8c242bed988f29094b7e3e94e (patch) | |
tree | 5d0618811dadc313916d95d87337697047271b62 /gcc/tree-ssa-phiopt.cc | |
parent | 8fb3d9066266ea30de62c395239bda4e992297a3 (diff) | |
download | gcc-4d375ebd56c54dc8c242bed988f29094b7e3e94e.zip gcc-4d375ebd56c54dc8c242bed988f29094b7e3e94e.tar.gz gcc-4d375ebd56c54dc8c242bed988f29094b7e3e94e.tar.bz2 |
tree-optimization/120003 - missed jump threading
The following allows the entry and exit block of a jump thread path
to be equal, which can easily happen when there isn't a forwarder
on the interesting edge for an FSM thread conditional. We just
don't want to enlarge the path from such a block.
PR tree-optimization/120003
* tree-ssa-threadbackward.cc (back_threader::find_paths_to_names):
Allow block re-use but do not enlarge the path beyond such a
re-use.
* gcc.dg/tree-ssa/ssa-thread-23.c: New testcase.
* gcc.dg/tree-ssa/ssa-dom-thread-7.c: Adjust.
(cherry picked from commit 1a13684dfc7286139064f7d7341462c9995cbd1c)
Diffstat (limited to 'gcc/tree-ssa-phiopt.cc')
0 files changed, 0 insertions, 0 deletions