aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-cfgcleanup.c
diff options
context:
space:
mode:
authorZdenek Dvorak <ook@ucw.cz>2007-08-04 03:09:12 +0200
committerZdenek Dvorak <rakdver@gcc.gnu.org>2007-08-04 01:09:12 +0000
commitf87000d0c4f42ac54d913c7c3d6acf53bc6302cb (patch)
tree798273ffece1ba2938c3938e1c16af800a086eee /gcc/tree-cfgcleanup.c
parenta83e7facc5549687bfee14f24850528e79bb5a95 (diff)
downloadgcc-f87000d0c4f42ac54d913c7c3d6acf53bc6302cb.zip
gcc-f87000d0c4f42ac54d913c7c3d6acf53bc6302cb.tar.gz
gcc-f87000d0c4f42ac54d913c7c3d6acf53bc6302cb.tar.bz2
tree-ssa-threadupdate.c (thread_through_all_blocks): Use loops' state accessor functions.
* tree-ssa-threadupdate.c (thread_through_all_blocks): Use loops' state accessor functions. * cfgloopmanip.c (remove_path, create_preheaders, force_single_succ_latches, fix_loop_structure): Ditto. * tree-ssa-loop-manip.c (rewrite_into_loop_closed_ssa, tree_duplicate_loop_to_header_edge): Ditto. * cfgloopanal.c (mark_irreducible_loops): Ditto. * loop-init.c (loop_optimizer_init, loop_optimizer_finalize): Ditto. * tree-cfgcleanup.c (cleanup_tree_cfg_noloop, repair_loop_structures, cleanup_tree_cfg): Ditto. * tree-cfg.c (tree_merge_blocks): Ditto. * cfgloop.c (rescan_loop_exit, record_loop_exits, release_recorded_exits, get_loop_exit_edges, verify_loop_structure, loop_preheader_edge, single_exit): Ditto. (flow_loops_find): Do not clear loops->state. * cfgloop.h (loops_state_satisfies_p, loops_state_set, loops_state_clear): New functions. From-SVN: r127197
Diffstat (limited to 'gcc/tree-cfgcleanup.c')
-rw-r--r--gcc/tree-cfgcleanup.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/tree-cfgcleanup.c b/gcc/tree-cfgcleanup.c
index bd2523b..bcae448 100644
--- a/gcc/tree-cfgcleanup.c
+++ b/gcc/tree-cfgcleanup.c
@@ -666,7 +666,7 @@ cleanup_tree_cfg_noloop (void)
timevar_pop (TV_TREE_CLEANUP_CFG);
if (changed && current_loops)
- current_loops->state |= LOOPS_NEED_FIXUP;
+ loops_state_set (LOOPS_NEED_FIXUP);
return changed;
}
@@ -682,7 +682,7 @@ repair_loop_structures (void)
/* This usually does nothing. But sometimes parts of cfg that originally
were inside a loop get out of it due to edge removal (since they
become unreachable by back edges from latch). */
- if ((current_loops->state & LOOP_CLOSED_SSA) != 0)
+ if (loops_state_satisfies_p (LOOP_CLOSED_SSA))
rewrite_into_loop_closed_ssa (changed_bbs, TODO_update_ssa);
BITMAP_FREE (changed_bbs);
@@ -692,7 +692,7 @@ repair_loop_structures (void)
#endif
scev_reset ();
- current_loops->state &= ~LOOPS_NEED_FIXUP;
+ loops_state_clear (LOOPS_NEED_FIXUP);
}
/* Cleanup cfg and repair loop structures. */
@@ -703,7 +703,7 @@ cleanup_tree_cfg (void)
bool changed = cleanup_tree_cfg_noloop ();
if (current_loops != NULL
- && (current_loops->state & LOOPS_NEED_FIXUP))
+ && loops_state_satisfies_p (LOOPS_NEED_FIXUP))
repair_loop_structures ();
return changed;