https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80053
--- Comment #6 from Alexander Monakov <amonakov at gcc dot gnu.org> --- (In reply to rguent...@suse.de from comment #4) > To the value in the other BB/function. This works if the jump > targets are semantically compatible. For function cloning it's > probably hard to say as things like frame allocation may be > incompatible. For BB level it might be possible. ... but the whole point of the original testcase is to show that loop unswitching makes targets incompatible? Now I'm confused as to what you've meant, because afaics what you describe is what already happens in gcc: when the BB is cloned, exactly one of the copies retains the original label, which remains to be used for initialization of 'lp'.