diff options
author | Daniel Berlin <dberlin@dberlin.org> | 2007-01-29 19:38:00 +0000 |
---|---|---|
committer | Daniel Berlin <dberlin@gcc.gnu.org> | 2007-01-29 19:38:00 +0000 |
commit | 306219a28de461c81501a32d77d3e0b1cce832c8 (patch) | |
tree | 7897072edfc0eae9bd0cdbca19fba28cbf0e59c8 /gcc/tree-ssa-structalias.c | |
parent | acd724f62a7599bec3e40cdc5a02f961f64358d3 (diff) | |
download | gcc-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.c | 12 |
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); } } |