aboutsummaryrefslogtreecommitdiff
path: root/libgcc
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2024-04-24 08:42:40 +0200
committerRichard Biener <rguenther@suse.de>2024-04-24 10:11:00 +0200
commitcc48418cfc2e555d837ae9138cbfac23acb3cdf9 (patch)
tree32d95b47915d733e81bc0f41a3ee48f64a954235 /libgcc
parente28e8ab1a92e9b49f7c4045377577c8dc17751b7 (diff)
downloadgcc-cc48418cfc2e555d837ae9138cbfac23acb3cdf9.zip
gcc-cc48418cfc2e555d837ae9138cbfac23acb3cdf9.tar.gz
gcc-cc48418cfc2e555d837ae9138cbfac23acb3cdf9.tar.bz2
tree-optimization/114787 - more careful loop update with CFG cleanup
When CFG cleanup removes a backedge we have to be more careful with loop update. In particular we need to clear niter info and estimates and if we remove the last backedge of a loop we have to also mark it for removal to prevent a following basic block merging to associate loop info with an unrelated header. PR tree-optimization/114787 * tree-cfg.cc (remove_edge_and_dominated_blocks): When removing a loop backedge clear niter info and when removing the last backedge of a loop mark that loop for removal. * gcc.dg/torture/pr114787.c: New testcase.
Diffstat (limited to 'libgcc')
0 files changed, 0 insertions, 0 deletions