aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2019-11-14 09:35:35 +0100
committerMartin Liska <marxin@gcc.gnu.org>2019-11-14 08:35:35 +0000
commit7edcaa0b54eae1537622bc70a4f8702e15148e4c (patch)
treef98c7c863e319616a4776129f5608073327626b3
parenta37f58f506e436bdf8f4f5be4afbf2d246538058 (diff)
downloadgcc-7edcaa0b54eae1537622bc70a4f8702e15148e4c.zip
gcc-7edcaa0b54eae1537622bc70a4f8702e15148e4c.tar.gz
gcc-7edcaa0b54eae1537622bc70a4f8702e15148e4c.tar.bz2
Handle FIELD_DECL in IPA ICF.
2019-11-14 Martin Liska <mliska@suse.cz> * ipa-icf-gimple.c (func_checker::hash_operand): Improve func_checker::hash_operand by handling of FIELD_DECLs. From-SVN: r278208
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/ipa-icf-gimple.c5
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e60da6e..50b9032 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2019-11-14 Martin Liska <mliska@suse.cz>
+ * ipa-icf-gimple.c (func_checker::hash_operand): Improve
+ func_checker::hash_operand by handling of FIELD_DECLs.
+
+2019-11-14 Martin Liska <mliska@suse.cz>
+
* ipa-icf-gimple.h (func_checker::func_checker): Add
default constructor.
* ipa-icf.c (sem_function::init): Make operand_equal_p
diff --git a/gcc/ipa-icf-gimple.c b/gcc/ipa-icf-gimple.c
index edb8fd6..ac53a1d 100644
--- a/gcc/ipa-icf-gimple.c
+++ b/gcc/ipa-icf-gimple.c
@@ -234,7 +234,10 @@ func_checker::hash_operand (const_tree arg, inchash::hash &hstate,
case CONST_DECL:
case SSA_NAME:
return;
-
+ case FIELD_DECL:
+ inchash::add_expr (DECL_FIELD_OFFSET (arg), hstate, flags);
+ inchash::add_expr (DECL_FIELD_BIT_OFFSET (arg), hstate, flags);
+ return;
default:
break;
}