summaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-structalias.c
diff options
context:
space:
mode:
authorDaniel Berlin <dberlin@dberlin.org>2007-01-29 19:38:00 +0000
committerDaniel Berlin <dberlin@gcc.gnu.org>2007-01-29 19:38:00 +0000
commit306219a28de461c81501a32d77d3e0b1cce832c8 (patch)
tree7897072edfc0eae9bd0cdbca19fba28cbf0e59c8 /gcc/tree-ssa-structalias.c
parentacd724f62a7599bec3e40cdc5a02f961f64358d3 (diff)
downloadgcc-306219a28de461c81501a32d77d3e0b1cce832c8.tar.gz
tree.h (struct tree_memory_tag): Add aliases member.
2007-01-28 Daniel Berlin <dberlin@dberlin.org> * tree.h (struct tree_memory_tag): Add aliases member. (MTAG_ALIASES): New macro. * tree-ssa-alias.c (alias_bitmap_obstack): New variable. (add_may_alias): Remove pointer-set. Update for may_aliases being a bitmap. (mark_aliases_call_clobbered): Update for may_aliases being a bitmap. (compute_tag_properties): Ditto. (create_partition_for): Ditto. (compute_memory_partitions): Ditto. (dump_may_aliases_for): Ditto. (is_aliased_with): Ditto. (add_may_alias_for_new_tag): Ditto. (rewrite_alias_set_for): Rewrite for may_aliases being a bitmap. (compute_is_aliased): New function. (compute_may_aliases): Call compute_is_aliased). (init_alias_info): Initialize alias_bitmap_obstack. (union_alias_set_into): New function. (compute_flow_sensitive_aliasing): Use union_aliases_into. (have_common_aliases_p): Rewrite to take two bitmaps and use intersection. (compute_flow_insensitive_aliasing): Stop using pointer-sets. Update for bitmaps. (finalize_ref_all_pointers): Update for add_may_alias changes. (new_type_alias): Ditto. * tree-flow-inline.h (may_aliases): Return a bitmap. * tree-dfa.c (dump_variable): Check for MTAG_P'ness. * tree-ssa.c (verify_flow_insensitive_alias_info): Update for may_aliases being a bitmap. * tree-flow.h (struct var_ann_d): Remove may_aliases member. may_aliases now returns a bitmap. * tree-ssa-structalias.c (merge_smts_into): Update for may_aliases being a bitmap. * tree-ssa-operands.c (add_virtual_operand): Update for may_aliases being a bitmap. From-SVN: r121302
Diffstat (limited to 'gcc/tree-ssa-structalias.c')
-rw-r--r--gcc/tree-ssa-structalias.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c
index c57f1c23592..0340a803918 100644
--- a/gcc/tree-ssa-structalias.c
+++ b/gcc/tree-ssa-structalias.c
@@ -4326,7 +4326,7 @@ merge_smts_into (tree p, varinfo_t vi)
unsigned int i;
bitmap_iterator bi;
tree smt;
- VEC(tree, gc) *aliases;
+ bitmap aliases;
tree var = p;
if (TREE_CODE (p) == SSA_NAME)
@@ -4350,15 +4350,9 @@ merge_smts_into (tree p, varinfo_t vi)
bitmap_set_bit (vi->finished_solution, i);
}
- aliases = var_ann (smt)->may_aliases;
+ aliases = MTAG_ALIASES (smt);
if (aliases)
- {
- size_t k;
- tree al;
- for (k = 0; VEC_iterate (tree, aliases, k, al); k++)
- bitmap_set_bit (vi->finished_solution,
- DECL_UID (al));
- }
+ bitmap_ior_into (vi->finished_solution, aliases);
}
}