From df3f0669c257040f3006a9ce9dc7cf74d7dc7966 Mon Sep 17 00:00:00 2001 From: manu Date: Tue, 22 Jan 2008 13:27:52 +0000 Subject: 2008-01-22 Manuel Lopez-Ibanez PR middle-end/33092 * tree-pass.h (pass_build_alias): New pass. * tree-ssa-alias.c (gate_build_alias): New. (pass_build_alias): New. * passes.c (init_optimization_passes): Add pass_build_alias after pass_create_structure_vars. testsuite/ * gcc.dg/pr33092.c: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@131717 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/tree-ssa-alias.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'gcc/tree-ssa-alias.c') diff --git a/gcc/tree-ssa-alias.c b/gcc/tree-ssa-alias.c index 13ec95b9e9d..7ab2f6b5473 100644 --- a/gcc/tree-ssa-alias.c +++ b/gcc/tree-ssa-alias.c @@ -4252,3 +4252,27 @@ struct tree_opt_pass pass_reset_cc_flags = 0, /* todo_flags_finish */ 0 /* letter */ }; + +static bool +gate_build_alias (void) +{ + return !gate_structure_vars(); +} + + +struct tree_opt_pass pass_build_alias = +{ + "build_alias", /* name */ + gate_build_alias, /* gate */ + NULL, /* execute */ + NULL, /* sub */ + NULL, /* next */ + 0, /* static_pass_number */ + 0, /* tv_id */ + PROP_cfg | PROP_ssa, /* properties_required */ + PROP_alias, /* properties_provided */ + 0, /* properties_destroyed */ + 0, /* todo_flags_start */ + TODO_rebuild_alias, /* todo_flags_finish */ + 0 /* letter */ +}; -- cgit v1.2.1