summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog21
-rw-r--r--gcc/passes.c2
-rw-r--r--gcc/tree-if-conv.c2
-rw-r--r--gcc/tree-loop-distribution.c2
-rw-r--r--gcc/tree-pass.h1
-rw-r--r--gcc/tree-ssa-loop.c28
6 files changed, 37 insertions, 19 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7e9824399e8..14898408028 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,24 @@
+2010-04-06 Sebastian Pop <sebastian.pop@amd.com>
+
+ * passes.c (execute_function_todo): Call verify_loop_closed_ssa
+ for all the passes of the LNO having LOOP_CLOSED_SSA.
+ * tree-if-conv.c (pass_if_conversion): Remove TODO_verify_loops.
+ * tree-loop-distribution.c (pass_loop_distribution): Same.
+ * tree-pass.h (TODO_verify_loops): Removed.
+ * tree-ssa-loop.c (pass_tree_loop_init): Same.
+ (pass_lim): Same.
+ (pass_tree_unswitch): Same.
+ (pass_predcom): Same.
+ (pass_vectorize): Same.
+ (pass_linear_transform): Same.
+ (pass_graphite_transforms): Same.
+ (pass_iv_canon): Same.
+ (pass_complete_unroll): Same.
+ (pass_complete_unrolli): Same.
+ (pass_parallelize_loops): Same.
+ (pass_loop_prefetch): Same.
+ (pass_iv_optimize): Same.
+
2010-04-06 Changpeng Fang <changpeng.fang@amd.com>
PR middle-end/32824
diff --git a/gcc/passes.c b/gcc/passes.c
index 8791ebc9dbc..0d42f9c4af4 100644
--- a/gcc/passes.c
+++ b/gcc/passes.c
@@ -1262,7 +1262,7 @@ execute_function_todo (void *data)
verify_flow_info ();
if (flags & TODO_verify_stmts)
verify_stmts ();
- if (flags & TODO_verify_loops)
+ if (current_loops && loops_state_satisfies_p (LOOP_CLOSED_SSA))
verify_loop_closed_ssa ();
if (flags & TODO_verify_rtl_sharing)
verify_rtl_sharing ();
diff --git a/gcc/tree-if-conv.c b/gcc/tree-if-conv.c
index 7f193ec98b0..a0083844c5d 100644
--- a/gcc/tree-if-conv.c
+++ b/gcc/tree-if-conv.c
@@ -1180,7 +1180,7 @@ struct gimple_opt_pass pass_if_conversion =
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
- TODO_dump_func | TODO_verify_loops | TODO_verify_stmts | TODO_verify_flow
+ TODO_dump_func | TODO_verify_stmts | TODO_verify_flow
/* todo_flags_finish */
}
};
diff --git a/gcc/tree-loop-distribution.c b/gcc/tree-loop-distribution.c
index 01db13470e5..384e43c770c 100644
--- a/gcc/tree-loop-distribution.c
+++ b/gcc/tree-loop-distribution.c
@@ -1243,6 +1243,6 @@ struct gimple_opt_pass pass_loop_distribution =
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
- TODO_dump_func | TODO_verify_loops /* todo_flags_finish */
+ TODO_dump_func /* todo_flags_finish */
}
};
diff --git a/gcc/tree-pass.h b/gcc/tree-pass.h
index cda9e9c0a7d..94726722d25 100644
--- a/gcc/tree-pass.h
+++ b/gcc/tree-pass.h
@@ -238,7 +238,6 @@ struct dump_file_info
#define TODO_verify_flow (1 << 3)
#define TODO_verify_stmts (1 << 4)
#define TODO_cleanup_cfg (1 << 5)
-#define TODO_verify_loops (1 << 6)
#define TODO_dump_cgraph (1 << 7)
#define TODO_remove_functions (1 << 8)
#define TODO_rebuild_frequencies (1 << 9)
diff --git a/gcc/tree-ssa-loop.c b/gcc/tree-ssa-loop.c
index 591890ccfd5..fbf8d59e0dc 100644
--- a/gcc/tree-ssa-loop.c
+++ b/gcc/tree-ssa-loop.c
@@ -97,7 +97,7 @@ struct gimple_opt_pass pass_tree_loop_init =
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
- TODO_dump_func | TODO_verify_loops /* todo_flags_finish */
+ TODO_dump_func /* todo_flags_finish */
}
};
@@ -134,7 +134,7 @@ struct gimple_opt_pass pass_lim =
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
- TODO_dump_func | TODO_verify_loops /* todo_flags_finish */
+ TODO_dump_func /* todo_flags_finish */
}
};
@@ -170,8 +170,7 @@ struct gimple_opt_pass pass_tree_unswitch =
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
- TODO_ggc_collect | TODO_dump_func
- | TODO_verify_loops /* todo_flags_finish */
+ TODO_ggc_collect | TODO_dump_func /* todo_flags_finish */
}
};
@@ -208,7 +207,7 @@ struct gimple_opt_pass pass_predcom =
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
- TODO_dump_func | TODO_verify_loops
+ TODO_dump_func
| TODO_update_ssa_only_virtuals /* todo_flags_finish */
}
};
@@ -244,7 +243,7 @@ struct gimple_opt_pass pass_vectorize =
PROP_cfg | PROP_ssa, /* properties_required */
0, /* properties_provided */
0, /* properties_destroyed */
- TODO_verify_loops, /* todo_flags_start */
+ 0, /* todo_flags_start */
TODO_dump_func | TODO_update_ssa
| TODO_ggc_collect /* todo_flags_finish */
}
@@ -283,7 +282,7 @@ struct gimple_opt_pass pass_linear_transform =
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
- TODO_dump_func | TODO_verify_loops
+ TODO_dump_func
| TODO_update_ssa_only_virtuals
| TODO_ggc_collect /* todo_flags_finish */
}
@@ -329,7 +328,7 @@ struct gimple_opt_pass pass_graphite_transforms =
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
- TODO_verify_loops /* todo_flags_finish */
+ 0 /* todo_flags_finish */
}
};
@@ -402,7 +401,7 @@ struct gimple_opt_pass pass_iv_canon =
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
- TODO_dump_func | TODO_verify_loops /* todo_flags_finish */
+ TODO_dump_func /* todo_flags_finish */
}
};
@@ -501,7 +500,7 @@ struct gimple_opt_pass pass_complete_unroll =
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
- TODO_dump_func | TODO_verify_loops
+ TODO_dump_func
| TODO_ggc_collect /* todo_flags_finish */
}
};
@@ -548,7 +547,7 @@ struct gimple_opt_pass pass_complete_unrolli =
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
- TODO_dump_func | TODO_verify_loops
+ TODO_dump_func
| TODO_ggc_collect /* todo_flags_finish */
}
};
@@ -587,7 +586,7 @@ struct gimple_opt_pass pass_parallelize_loops =
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
- TODO_dump_func | TODO_verify_loops /* todo_flags_finish */
+ TODO_dump_func /* todo_flags_finish */
}
};
@@ -623,7 +622,7 @@ struct gimple_opt_pass pass_loop_prefetch =
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
- TODO_dump_func | TODO_verify_loops /* todo_flags_finish */
+ TODO_dump_func /* todo_flags_finish */
}
};
@@ -660,8 +659,7 @@ struct gimple_opt_pass pass_iv_optimize =
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
- TODO_dump_func | TODO_verify_loops
- | TODO_update_ssa | TODO_ggc_collect /* todo_flags_finish */
+ TODO_dump_func | TODO_update_ssa | TODO_ggc_collect /* todo_flags_finish */
}
};