tree-ssa-alias.c (refs_may_alias_p_2): Break out from ...
authorJan Hubicka <hubicka@ucw.cz>
Mon, 20 May 2019 13:37:11 +0000 (15:37 +0200)
committerJan Hubicka <hubicka@gcc.gnu.org>
Mon, 20 May 2019 13:37:11 +0000 (13:37 +0000)
* tree-ssa-alias.c (refs_may_alias_p_2): Break out from ...
(refs_may_alias_p_1): ... here; update stats.
(refs_may_alias_p): Do not update stats here.

From-SVN: r271419

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

index d6eb9e346855ecfb6eb4cc0101d649d414a6b9d0..1cefccff4a62866fd18cb4ed43820cdfb9dd8406 100644 (file)
@@ -1,3 +1,9 @@
+2019-05-20  Jan Hubicka  <hubicka@ucw.cz>
+
+       * tree-ssa-alias.c (refs_may_alias_p_2): Break out from ...
+       (refs_may_alias_p_1): ... here; update stats.
+       (refs_may_alias_p): Do not update stats here.
+
 2019-05-20  Richard Biener  <rguenther@suse.de>
 
        * tree-ssa-structalias.c (find_func_aliases): POINTER_DIFF_EXPR
index 0fa413ad5cad27ffa0375a0574fbc0dca2eb7174..5b5f1462463d774954c657c3fa6dd352bcb72cbf 100644 (file)
@@ -1470,8 +1470,8 @@ indirect_refs_may_alias_p (tree ref1 ATTRIBUTE_UNUSED, tree base1,
 
 /* Return true, if the two memory references REF1 and REF2 may alias.  */
 
-bool
-refs_may_alias_p_1 (ao_ref *ref1, ao_ref *ref2, bool tbaa_p)
+static bool
+refs_may_alias_p_2 (ao_ref *ref1, ao_ref *ref2, bool tbaa_p)
 {
   tree base1, base2;
   poly_int64 offset1 = 0, offset2 = 0;
@@ -1628,6 +1628,20 @@ refs_may_alias_p_1 (ao_ref *ref1, ao_ref *ref2, bool tbaa_p)
   gcc_unreachable ();
 }
 
+/* Return true, if the two memory references REF1 and REF2 may alias
+   and update statistics.  */
+
+bool
+refs_may_alias_p_1 (ao_ref *ref1, ao_ref *ref2, bool tbaa_p)
+{
+  bool res = refs_may_alias_p_2 (ref1, ref2, tbaa_p);
+  if (res)
+    ++alias_stats.refs_may_alias_p_may_alias;
+  else
+    ++alias_stats.refs_may_alias_p_no_alias;
+  return res;
+}
+
 static bool
 refs_may_alias_p (tree ref1, ao_ref *ref2, bool tbaa_p)
 {
@@ -1640,15 +1654,9 @@ bool
 refs_may_alias_p (tree ref1, tree ref2, bool tbaa_p)
 {
   ao_ref r1, r2;
-  bool res;
   ao_ref_init (&r1, ref1);
   ao_ref_init (&r2, ref2);
-  res = refs_may_alias_p_1 (&r1, &r2, tbaa_p);
-  if (res)
-    ++alias_stats.refs_may_alias_p_may_alias;
-  else
-    ++alias_stats.refs_may_alias_p_no_alias;
-  return res;
+  return refs_may_alias_p_1 (&r1, &r2, tbaa_p);
 }
 
 /* Returns true if there is a anti-dependence for the STORE that