Commit fc0e67aa by Martin Liska Committed by Martin Liska

Remove alias set comparison.

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
parent 430d1e8d
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
initialize m_compare_polymorphic.
(func_checker::compare_decl): Do not compare polymorphic types.
......@@ -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;
}
......
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
......
......@@ -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"
......
/* { 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
......
/* 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]; };
......
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