]> git.ipfire.org Git - thirdparty/gcc.git/commit
tree-optimization/116796 - virtual LC SSA broken after unrolling
authorRichard Biener <rguenther@suse.de>
Mon, 23 Sep 2024 09:05:37 +0000 (11:05 +0200)
committerRichard Biener <rguenth@gcc.gnu.org>
Mon, 23 Sep 2024 10:50:59 +0000 (12:50 +0200)
commite97c75d668bacd8a2e901b819e00156f6e9f4c6c
tree8914c8db42272fd9eb93ed029cb6cd40e1bd24ef
parent09892448ebd8c396a26b2c09ba71f1e5a8dc42d7
tree-optimization/116796 - virtual LC SSA broken after unrolling

When the unroller unloops loops it tracks whether it changes any
nesting relationship of remaining loops but when scanning a loops
preheader it fails to pass down the LC-SSA-invalidated bitmap, losing
the fact that an unrolled formerly inner loop can now be placed on
an exit of its outer loop.  The following fixes that.

PR tree-optimization/116796
* cfgloopmanip.cc (fix_loop_placements): Get LC-SSA-invalidated
bitmap and pass it on.
(remove_path): Pass LC-SSA-invalidated to fix_loop_placements.
gcc/cfgloopmanip.cc