aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-loop-split.c
AgeCommit message (Collapse)AuthorFilesLines
2016-10-26fix pr78060 pr78061 pr78088Michael Matz1-18/+45
PR tree-optimization/78060 PR tree-optimization/78061 PR tree-optimization/78088 * tree-ssa-loop-split.c (easy_exit_values): New function. (tree_ssa_split_loops): Use it. (compute_new_first_bound): Change order of operations, fix invalid use of types. testsuite/ * g++.dg/pr78060.C: New test. * gfortran.dg/pr78061.f: New test. * g++.dg/pr78088.C: New test. From-SVN: r241551
2016-10-24re PR tree-optimization/78076 (Conditional jump or move depends on ↵Richard Biener1-2/+2
uninitialised value @ tree-vect-loop.c:2307) 2016-10-24 Richard Biener <rguenther@suse.de> PR tree-optimization/78076 * tree-ssa-loop-split.c (tree_ssa_split_loops): Reset aux also on the loop tree root. From-SVN: r241467
2016-10-21tree-ssa-loop-split.c: Remove trailing spaces.Eric Botcazou1-3/+3
* tree-ssa-loop-split.c: Remove trailing spaces. * match.pd: Likewise. From-SVN: r241398
2016-10-20loop splittingMichael Matz1-0/+687
(approved at https://gcc.gnu.org/ml/gcc-patches/2015-12/msg00648.html ) * common.opt (-fsplit-loops): New flag. * passes.def (pass_loop_split): Add. * opts.c (default_options_table): Add OPT_fsplit_loops entry at -O3. (enable_fdo_optimizations): Add loop splitting. * timevar.def (TV_LOOP_SPLIT): Add. * tree-pass.h (make_pass_loop_split): Declare. * tree-ssa-loop-manip.h (rewrite_into_loop_closed_ssa_1): Declare. * tree-ssa-loop-unswitch.c: Include tree-ssa-loop-manip.h, * tree-ssa-loop-split.c: New file. * Makefile.in (OBJS): Add tree-ssa-loop-split.o. * doc/invoke.texi (fsplit-loops): Document. * doc/passes.texi (Loop optimization): Add paragraph about loop splitting. testsuite/ * gcc.dg/loop-split.c: New test. * gcc.dg/tree-ssa/ifc-9.c: Update. * gcc.dg/tree-ssa/ifc-10.c: Update. From-SVN: r241374