aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-loop.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/tree-ssa-loop.c')
-rw-r--r--gcc/tree-ssa-loop.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/gcc/tree-ssa-loop.c b/gcc/tree-ssa-loop.c
index 37f378a796b..cd9aa947dc4 100644
--- a/gcc/tree-ssa-loop.c
+++ b/gcc/tree-ssa-loop.c
@@ -243,7 +243,7 @@ struct gimple_opt_pass pass_vectorize =
0, /* properties_provided */
0, /* properties_destroyed */
TODO_verify_loops, /* todo_flags_start */
- TODO_dump_func | TODO_update_ssa
+ TODO_dump_func | TODO_update_ssa | TODO_rebuild_alias
| TODO_ggc_collect /* todo_flags_finish */
}
};
@@ -587,7 +587,15 @@ struct gimple_opt_pass pass_complete_unrolli =
static bool
gate_tree_parallelize_loops (void)
{
- return flag_tree_parallelize_loops > 1;
+ struct loop *loop;
+ loop_iterator li;
+
+ if (flag_tree_parallelize_loops > 1)
+ return true;
+ FOR_EACH_LOOP (li, loop, 0)
+ if (loop->target_arch != cfun->target_arch)
+ return true;
+ return false;
}
static unsigned