Remove alias set comparison.
authorMartin Liska <mliska@suse.cz>
Wed, 30 Oct 2019 12:03:00 +0000 (13:03 +0100)
committerMartin Liska <marxin@gcc.gnu.org>
Wed, 30 Oct 2019 12:03:00 +0000 (12:03 +0000)
2019-10-30  Martin Liska  <mliska@suse.cz>

* ipa-icf-gimple.c (func_checker::compatible_types_p):
Do not compare alias sets.  It's handled by operand_equal_p.
2019-10-30  Martin Liska  <mliska@suse.cz>

* c-c++-common/Wstringop-truncation-4.c: Disable IPA ICF.
* gcc.dg/tree-ssa/pr64910-2.c: Likewise.
* gcc.dg/tree-ssa/pr79352.c: Likewise.

From-SVN: r277618

gcc/ChangeLog
gcc/ipa-icf-gimple.c
gcc/testsuite/ChangeLog
gcc/testsuite/c-c++-common/Wstringop-truncation-4.c
gcc/testsuite/gcc.dg/tree-ssa/pr64910-2.c
gcc/testsuite/gcc.dg/tree-ssa/pr79352.c

index 3537a6152c1c8c9fe04baff11095d54c0bbc47c4..3ea3d91b61d2b9fb3d21fbd5def975b52a27bd0c 100644 (file)
@@ -1,3 +1,8 @@
+2019-10-30  Martin Liska  <mliska@suse.cz>
+
+       * ipa-icf-gimple.c (func_checker::compatible_types_p):
+       Do not compare alias sets.  It's handled by operand_equal_p.
+
 2019-10-30  Martin Liska  <mliska@suse.cz>
 
        * ipa-icf-gimple.c (func_checker::func_checker): Do not
index 3193823ce5a0b30c0e9e6a959aa4032315c1b8e8..5b0fbc19fc460a7a14a5446407e62b49766978b4 100644 (file)
@@ -31,7 +31,6 @@ along with GCC; see the file COPYING3.  If not see
 #include "cgraph.h"
 #include "data-streamer.h"
 #include "gimple-pretty-print.h"
-#include "alias.h"
 #include "fold-const.h"
 #include "gimple-iterator.h"
 #include "ipa-utils.h"
@@ -209,17 +208,6 @@ func_checker::compatible_types_p (tree t1, tree t2)
   if (!types_compatible_p (t1, t2))
     return return_false_with_msg ("types are not compatible");
 
-  /* We do a lot of unnecesary matching of types that are not being
-     accessed and thus do not need to be compatible.  In longer term we should
-     remove these checks on all types which are not accessed as memory
-     locations.
-
-     For time being just avoid calling get_alias_set on types that are not
-     having alias sets defined at all.  */
-  if (type_with_alias_set_p (t1) && type_with_alias_set_p (t2)
-      && get_alias_set (t1) != get_alias_set (t2))
-    return return_false_with_msg ("alias sets are different");
-
   return true;
 }
 
index 9bee47b692e556cf841dd14f9d27750b38996ea3..59c2e561af642071236d4752aeb15ef70bf506e2 100644 (file)
@@ -1,3 +1,9 @@
+2019-10-30  Martin Liska  <mliska@suse.cz>
+
+       * c-c++-common/Wstringop-truncation-4.c: Disable IPA ICF.
+       * gcc.dg/tree-ssa/pr64910-2.c: Likewise.
+       * gcc.dg/tree-ssa/pr79352.c: Likewise.
+
 2019-10-30  Jakub Jelinek  <jakub@redhat.com>
 
        * c-c++-common/gomp/declare-variant-2.c: Add a test with , before
index c76f2823daf3ab4ce78baee6dc2631b53d65dd47..15209536add79e112ef62d03d3551d11d0ba4b4d 100644 (file)
@@ -3,7 +3,7 @@
    Verify that -Wstringop-truncation is issued for uses of arrays and
    pointers to qualified forms of characters of all three types.
    { dg-do compile }
-   { dg-options "-O2 -Wall -Wstringop-truncation" } */
+   { dg-options "-O2 -Wall -Wstringop-truncation -fno-ipa-icf" } */
 
 #if __cplusplus
 extern "C"
index 2e3d6790776d15d97760a42547f6bce9907cad0e..812bfa488254543ddaeb93eda93a5aa81bba9262 100644 (file)
@@ -1,5 +1,5 @@
 /* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-reassoc1" } */
+/* { dg-options "-O2 -fdump-tree-reassoc1 -fno-ipa-icf" } */
 
 /* We want to make sure that we reassociate in a way that has the
    constant last.  With the constant last, it's more likely to result
index 485e2d64cb3e9299da6a9c1b21166376af65d4e5..36e195c3a063c4cf42392f372725a1e22924491a 100644 (file)
@@ -1,7 +1,7 @@
 /* PR tree-optimization/79352 - -fprintf-return-value doesn't handle
    flexible-like array members properly
    { dg-do compile }
-   { dg-options "-O2 -fdump-tree-optimized" } */
+   { dg-options "-O2 -fdump-tree-optimized -fno-ipa-icf" } */
 
 struct A { int i; char a1[1]; };
 struct B { int i; char a3[3]; };