Commit 7a116211 by Diego Novillo Committed by Diego Novillo

re PR tree-optimization/17528 (tree optimization incorrectly optimizes away…

re PR tree-optimization/17528 (tree optimization incorrectly optimizes away entire function (incorrect aliasing detection?))


	PR tree-optimization/17528
	* tree-ssa-alias.c (compute_flow_insensitive_aliasing): Do not
	erase the may-alias set for a tag when merging it with
	another.

From-SVN: r87624
parent 02382b91
2004-09-16 Diego Novillo <dnovillo@redhat.com>
PR tree-optimization/17528
* tree-ssa-alias.c (compute_flow_insensitive_aliasing): Do not
erase the may-alias set for a tag when merging it with
another.
2004-09-16 Kaz Kojima <kkojima@gcc.gnu.org> 2004-09-16 Kaz Kojima <kkojima@gcc.gnu.org>
* config/sh/sh.md (call): Extend 32-bit addresses to DImode * config/sh/sh.md (call): Extend 32-bit addresses to DImode
......
...@@ -977,7 +977,6 @@ compute_flow_insensitive_aliasing (struct alias_info *ai) ...@@ -977,7 +977,6 @@ compute_flow_insensitive_aliasing (struct alias_info *ai)
{ {
struct alias_map_d *p_map2 = ai->pointers[j]; struct alias_map_d *p_map2 = ai->pointers[j];
tree tag2 = var_ann (p_map2->var)->type_mem_tag; tree tag2 = var_ann (p_map2->var)->type_mem_tag;
var_ann_t tag2_ann = var_ann (tag2);
sbitmap may_aliases2 = p_map2->may_aliases; sbitmap may_aliases2 = p_map2->may_aliases;
/* If the pointers may not point to each other, do nothing. */ /* If the pointers may not point to each other, do nothing. */
...@@ -999,8 +998,6 @@ compute_flow_insensitive_aliasing (struct alias_info *ai) ...@@ -999,8 +998,6 @@ compute_flow_insensitive_aliasing (struct alias_info *ai)
EXECUTE_IF_SET_IN_SBITMAP (may_aliases2, 0, k, EXECUTE_IF_SET_IN_SBITMAP (may_aliases2, 0, k,
add_may_alias (tag1, referenced_var (k))); add_may_alias (tag1, referenced_var (k)));
sbitmap_a_or_b (may_aliases1, may_aliases1, may_aliases2); sbitmap_a_or_b (may_aliases1, may_aliases1, may_aliases2);
sbitmap_zero (may_aliases2);
tag2_ann->may_aliases = NULL;
} }
else else
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment