[Bug tree-optimization/23855] loop header should also be pulled out of the inner loop too

rguenth at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Aug 17 08:12:00 GMT 2016


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=23855

--- Comment #31 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Wed Aug 17 08:11:32 2016
New Revision: 239523

URL: https://gcc.gnu.org/viewcvs?rev=239523&root=gcc&view=rev
Log:
2016-08-17  Richard Biener  <rguenther@suse.de>

        PR tree-optimization/23855
        * tree-ssa-loop-unswitch.c: Include tree-ssa-loop-manip.h.
        (tree_unswitch_outer_loop): Iterate find_loop_guard as long as we
        find guards to hoist.  Do not update SSA form but rewrite virtuals
        into loop closed SSA.
        (find_loop_guard): Adjust to skip already hoisted guards.  Do
        not mark virtuals for renaming or update SSA form.

        * gcc.dg/loop-unswitch-2.c: Adjust.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gcc.dg/loop-unswitch-2.c
    trunk/gcc/tree-ssa-loop-unswitch.c


More information about the Gcc-bugs mailing list