From 7fbd298945fdb725099dc3a91f981212c5c1f3c7 Mon Sep 17 00:00:00 2001 From: mliska Date: Wed, 27 May 2015 15:56:54 +0200 Subject: [PATCH 26/32] Change use to type-based pool allocator in tree-ssa-structalias.c. gcc/ChangeLog: 2015-04-30 Martin Liska * tree-ssa-structalias.c (new_var_info): Use new type-based pool allocator. (new_constraint): Likewise. (init_alias_vars): Likewise. (delete_points_to_sets): Likewise. --- gcc/tree-ssa-structalias.c | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c index d6a9f67..e802d78 100644 --- a/gcc/tree-ssa-structalias.c +++ b/gcc/tree-ssa-structalias.c @@ -354,7 +354,8 @@ static varinfo_t lookup_vi_for_tree (tree); static inline bool type_can_have_subvars (const_tree); /* Pool of variable info structures. */ -static alloc_pool variable_info_pool; +static pool_allocator variable_info_pool + ("Variable info pool", 30); /* Map varinfo to final pt_solution. */ static hash_map *final_solutions; @@ -395,7 +396,7 @@ static varinfo_t new_var_info (tree t, const char *name) { unsigned index = varmap.length (); - varinfo_t ret = (varinfo_t) pool_alloc (variable_info_pool); + varinfo_t ret = variable_info_pool.allocate (); ret->id = index; ret->name = name; @@ -554,7 +555,7 @@ struct constraint /* List of constraints that we use to build the constraint graph from. */ static vec constraints; -static alloc_pool constraint_pool; +static pool_allocator constraint_pool ("Constraint pool", 30); /* The constraint graph is represented as an array of bitmaps containing successor nodes. */ @@ -676,7 +677,7 @@ static constraint_t new_constraint (const struct constraint_expr lhs, const struct constraint_expr rhs) { - constraint_t ret = (constraint_t) pool_alloc (constraint_pool); + constraint_t ret = constraint_pool.allocate (); ret->lhs = lhs; ret->rhs = rhs; return ret; @@ -6681,10 +6682,6 @@ init_alias_vars (void) bitmap_obstack_initialize (&oldpta_obstack); bitmap_obstack_initialize (&predbitmap_obstack); - constraint_pool = create_alloc_pool ("Constraint pool", - sizeof (struct constraint), 30); - variable_info_pool = create_alloc_pool ("Variable info pool", - sizeof (struct variable_info), 30); constraints.create (8); varmap.create (8); vi_for_tree = new hash_map; @@ -6964,8 +6961,8 @@ delete_points_to_sets (void) free (graph); varmap.release (); - free_alloc_pool (variable_info_pool); - free_alloc_pool (constraint_pool); + variable_info_pool.release (); + constraint_pool.release (); obstack_free (&fake_var_decl_obstack, NULL); -- 2.1.4