diff options
Diffstat (limited to 'gcc/tree-ssa-loop.c')
-rw-r--r-- | gcc/tree-ssa-loop.c | 24 |
1 files changed, 7 insertions, 17 deletions
diff --git a/gcc/tree-ssa-loop.c b/gcc/tree-ssa-loop.c index e415448..69d353b 100644 --- a/gcc/tree-ssa-loop.c +++ b/gcc/tree-ssa-loop.c @@ -38,26 +38,17 @@ Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA #include "tree-inline.h" #include "tree-scalar-evolution.h" -/* The loop tree currently optimized. */ - -struct loops *current_loops = NULL; - /* Initializes the loop structures. */ -static struct loops * +static void tree_loop_optimizer_init (void) { - struct loops *loops; - - loops = loop_optimizer_init (LOOPS_NORMAL - | LOOPS_HAVE_MARKED_SINGLE_EXITS); - - if (!loops) - return NULL; + loop_optimizer_init (LOOPS_NORMAL + | LOOPS_HAVE_MARKED_SINGLE_EXITS); + if (!current_loops) + return; rewrite_into_loop_closed_ssa (NULL, TODO_update_ssa); - - return loops; } /* The loop superpass. */ @@ -90,7 +81,7 @@ struct tree_opt_pass pass_tree_loop = static unsigned int tree_ssa_loop_init (void) { - current_loops = tree_loop_optimizer_init (); + tree_loop_optimizer_init (); if (!current_loops) return 0; @@ -487,8 +478,7 @@ tree_ssa_loop_done (void) free_numbers_of_iterations_estimates (current_loops); scev_finalize (); - loop_optimizer_finalize (current_loops); - current_loops = NULL; + loop_optimizer_finalize (); return 0; } |