]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR tree-optimization/38937 (dereferencing pointer '<anonymous>' does break strict...
authorRichard Guenther <rguenther@suse.de>
Sat, 31 Jan 2009 10:25:41 +0000 (10:25 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Sat, 31 Jan 2009 10:25:41 +0000 (10:25 +0000)
2009-01-30  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/38937
* tree-ssa-structalias.c (do_sd_constraint): Do not shortcut
computing the transitive closure.

From-SVN: r143819

gcc/ChangeLog
gcc/tree-ssa-structalias.c

index e871bd645cd0b4bc2c307291335029cd0da96026..96051f625a16aeaa0cbab3c6335ac5470a485eab 100644 (file)
@@ -1,3 +1,9 @@
+2009-01-31  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/38937
+       * tree-ssa-structalias.c (do_sd_constraint): Do not shortcut
+       computing the transitive closure.
+
 2009-01-30  Richard Guenther  <rguenther@suse.de>
 
        PR tree-optimization/39041
index 21566bbe5d82aa8d5ab65b7c0c5ac3b7fb394dd9..3e8940e516648d616de06176ecdfe0aa322bcba6 100644 (file)
@@ -1502,12 +1502,6 @@ do_sd_constraint (constraint_graph_t graph, constraint_t c,
   unsigned int j;
   bitmap_iterator bi;
 
-  if (bitmap_bit_p (delta, anything_id))
-    {
-      flag |= bitmap_set_bit (sol, anything_id);
-      goto done;
-    }
-
   /* For x = *ESCAPED and x = *CALLUSED we want to compute the
      reachability set of the rhs var.  As a pointer to a sub-field
      of a variable can also reach all other fields of the variable
@@ -1553,6 +1547,12 @@ do_sd_constraint (constraint_graph_t graph, constraint_t c,
        }
     }
 
+  if (bitmap_bit_p (delta, anything_id))
+    {
+      flag |= bitmap_set_bit (sol, anything_id);
+      goto done;
+    }
+
   /* For each variable j in delta (Sol(y)), add
      an edge in the graph from j to x, and union Sol(j) into Sol(x).  */
   EXECUTE_IF_SET_IN_BITMAP (delta, 0, j, bi)