diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 11 | ||||
-rw-r--r-- | gcc/tree-ssa-structalias.c | 36 | ||||
-rw-r--r-- | gcc/tree-ssa-structalias.h | 10 |
3 files changed, 44 insertions, 13 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index dc88ef0..d3c33ca 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,14 @@ +2005-06-15 Diego Novillo <dnovillo@redhat.com> + + * tree-ssa-structalias.c (dump_solution_for_var): Reformat + output. + (dump_sa_points_to_info): Make extern. + (debug_sa_points_to_info): New. + * tree-ssa-structalias.h (TREE_SSA_STRUCTALIAS_H): Rename from + TREE_ALIAS_COMMON. + (dump_sa_points_to_info): Declare. + (debug_sa_points_to_info): Declare. + 2005-06-15 Joseph S. Myers <joseph@codesourcery.com> * c-tree.h (default_function_array_conversion): Declare. diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c index 25c2a44..5ca2a5c 100644 --- a/gcc/tree-ssa-structalias.c +++ b/gcc/tree-ssa-structalias.c @@ -2824,10 +2824,10 @@ dump_solution_for_var (FILE *file, unsigned int var) unsigned int i; bitmap_iterator bi; - fprintf (file, "%s = {", vi->name); + fprintf (file, "%s = { ", vi->name); EXECUTE_IF_SET_IN_BITMAP (get_varinfo (vi->node)->solution, 0, i, bi) { - fprintf (file, "%s,", get_varinfo (i)->name); + fprintf (file, "%s ", get_varinfo (i)->name); } fprintf (file, "}\n"); } @@ -2961,6 +2961,7 @@ find_what_p_points_to (tree p) return false; } + /* Initialize things necessary to perform PTA */ static void @@ -2969,27 +2970,42 @@ init_alias_vars (void) bitmap_obstack_initialize (&ptabitmap_obstack); } -/* Dump the points-to information to OUTFILE. */ -static void +/* Dump points-to information to OUTFILE. */ + +void dump_sa_points_to_info (FILE *outfile) { - unsigned int i; + + fprintf (outfile, "\nPoints-to information\n\n"); + if (dump_flags & TDF_STATS) { fprintf (outfile, "Stats:\n"); - fprintf (outfile, "Total vars:%d\n", stats.total_vars); - fprintf (outfile, "Statically unified vars:%d\n", stats.unified_vars_static); - fprintf (outfile, "Collapsed vars:%d\n", stats.collapsed_vars); - fprintf (outfile, "Dynamically unified vars:%d\n", stats.unified_vars_dynamic); - fprintf (outfile, "Iterations:%d\n", stats.iterations); + fprintf (outfile, "Total vars: %d\n", stats.total_vars); + fprintf (outfile, "Statically unified vars: %d\n", + stats.unified_vars_static); + fprintf (outfile, "Collapsed vars: %d\n", stats.collapsed_vars); + fprintf (outfile, "Dynamically unified vars: %d\n", + stats.unified_vars_dynamic); + fprintf (outfile, "Iterations: %d\n", stats.iterations); } + for (i = 0; i < VEC_length (varinfo_t, varmap); i++) dump_solution_for_var (outfile, i); } +/* Debug points-to information to stderr. */ + +void +debug_sa_points_to_info (void) +{ + dump_sa_points_to_info (stderr); +} + + /* Initialize the always-existing constraint variables for NULL ANYTHING, READONLY, and INTEGER */ diff --git a/gcc/tree-ssa-structalias.h b/gcc/tree-ssa-structalias.h index 4725f28..89224c6 100644 --- a/gcc/tree-ssa-structalias.h +++ b/gcc/tree-ssa-structalias.h @@ -19,15 +19,19 @@ along with GCC; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -#ifndef TREE_ALIAS_COMMON -#define TREE_ALIAS_COMMON +#ifndef TREE_SSA_STRUCTALIAS_H +#define TREE_SSA_STRUCTALIAS_H struct constraint; typedef struct constraint *constraint_t; + extern void dump_constraint (FILE *, constraint_t); extern void dump_constraints (FILE *); extern void debug_constraint (constraint_t); extern void debug_constraints (void); extern void dump_solution_for_var (FILE *, unsigned int); extern void debug_solution_for_var (unsigned int); -#endif /* TREE_ALIAS_COMMON */ +extern void dump_sa_points_to_info (FILE *); +extern void debug_sa_points_to_info (void); + +#endif /* TREE_SSA_STRUCTALIAS_H */ |