omp-low.c (pass_expand_omp): Don't claim to provide PROP_gimple_lomp.

* omp-low.c (pass_expand_omp): Don't claim to provide PROP_gimple_lomp.
	(execute_lower_omp): Always run but take the short way out if -fopenmp
	is not given.
	(gate_lower_omp): Remove, forcing the pass manager to always run the
	pass and always set PROP_gimple_lomp.
	(pass_lower_omp): Remove gate function.
	* matrix-reorg.c (pass_ipa_matrix_reorg): Don't claim to provide
	PROP_trees.  Instead, require it.
	* ipa-cp.c (pass_ipa_cp): Likewise.
	* ipa-inline.c (pass_early_inline): Don't claim to provide PROP_cfg.
	(pass_ipa_early_inline, pass_inline_parameters, pass_ipa_inline): Idem.
	* tree-profile.c (pass_tree_profile): Don't claim to provide PROP_cfg
	and PROP_gimple_leh.

From-SVN: r145518
This commit is contained in:
Steven Bosscher 2009-04-03 20:15:40 +00:00
parent 6f9c9d6d47
commit 535b544aa7
6 changed files with 30 additions and 15 deletions

View File

@ -1,3 +1,19 @@
2009-04-03 Steven Bosscher <steven@gcc.gnu.org>
* omp-low.c (pass_expand_omp): Don't claim to provide PROP_gimple_lomp.
(execute_lower_omp): Always run but take the short way out if -fopenmp
is not given.
(gate_lower_omp): Remove, forcing the pass manager to always run the
pass and always set PROP_gimple_lomp.
(pass_lower_omp): Remove gate function.
* matrix-reorg.c (pass_ipa_matrix_reorg): Don't claim to provide
PROP_trees. Instead, require it.
* ipa-cp.c (pass_ipa_cp): Likewise.
* ipa-inline.c (pass_early_inline): Don't claim to provide PROP_cfg.
(pass_ipa_early_inline, pass_inline_parameters, pass_ipa_inline): Idem.
* tree-profile.c (pass_tree_profile): Don't claim to provide PROP_cfg
and PROP_gimple_leh.
2009-04-03 Richard Guenther <rguenther@suse.de>
PR middle-end/13146

View File

@ -1382,7 +1382,7 @@ struct ipa_opt_pass pass_ipa_cp =
0, /* static_pass_number */
TV_IPA_CONSTANT_PROP, /* tv_id */
0, /* properties_required */
PROP_trees, /* properties_provided */
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
TODO_dump_cgraph | TODO_dump_func |

View File

@ -1561,7 +1561,7 @@ struct gimple_opt_pass pass_early_inline =
0, /* static_pass_number */
TV_INLINE_HEURISTICS, /* tv_id */
0, /* properties_required */
PROP_cfg, /* properties_provided */
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
TODO_dump_func /* todo_flags_finish */
@ -1591,7 +1591,7 @@ struct simple_ipa_opt_pass pass_ipa_early_inline =
0, /* static_pass_number */
TV_INLINE_HEURISTICS, /* tv_id */
0, /* properties_required */
PROP_cfg, /* properties_provided */
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
TODO_dump_cgraph /* todo_flags_finish */
@ -1653,7 +1653,7 @@ struct gimple_opt_pass pass_inline_parameters =
0, /* static_pass_number */
TV_INLINE_HEURISTICS, /* tv_id */
0, /* properties_required */
PROP_cfg, /* properties_provided */
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
0 /* todo_flags_finish */
@ -1772,7 +1772,7 @@ struct ipa_opt_pass pass_ipa_inline =
0, /* static_pass_number */
TV_INLINE_HEURISTICS, /* tv_id */
0, /* properties_required */
PROP_cfg, /* properties_provided */
0, /* properties_provided */
0, /* properties_destroyed */
TODO_remove_functions, /* todo_flags_finish */
TODO_dump_cgraph | TODO_dump_func

View File

@ -2421,7 +2421,7 @@ struct simple_ipa_opt_pass pass_ipa_matrix_reorg =
0, /* static_pass_number */
0, /* tv_id */
0, /* properties_required */
PROP_trees, /* properties_provided */
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
TODO_dump_cgraph | TODO_dump_func /* todo_flags_finish */

View File

@ -5456,7 +5456,7 @@ struct gimple_opt_pass pass_expand_omp =
0, /* static_pass_number */
0, /* tv_id */
PROP_gimple_any, /* properties_required */
PROP_gimple_lomp, /* properties_provided */
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
TODO_dump_func /* todo_flags_finish */
@ -6577,6 +6577,11 @@ execute_lower_omp (void)
{
gimple_seq body;
/* This pass always runs, to provide PROP_gimple_lomp.
But there is nothing to do unless -fopenmp is given. */
if (flag_openmp == 0)
return 0;
all_contexts = splay_tree_new (splay_tree_compare_pointers, 0,
delete_omp_context);
@ -6604,18 +6609,12 @@ execute_lower_omp (void)
return 0;
}
static bool
gate_lower_omp (void)
{
return flag_openmp != 0;
}
struct gimple_opt_pass pass_lower_omp =
{
{
GIMPLE_PASS,
"omplower", /* name */
gate_lower_omp, /* gate */
NULL, /* gate */
execute_lower_omp, /* execute */
NULL, /* sub */
NULL, /* next */

View File

@ -492,7 +492,7 @@ struct gimple_opt_pass pass_tree_profile =
0, /* static_pass_number */
TV_BRANCH_PROB, /* tv_id */
PROP_gimple_leh | PROP_cfg, /* properties_required */
PROP_gimple_leh | PROP_cfg, /* properties_provided */
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
TODO_verify_stmts | TODO_dump_func /* todo_flags_finish */