Clean up attribute value comparison in lto-symtab.c.
authorMartin Liska <mliska@suse.cz>
Wed, 11 Apr 2018 10:33:46 +0000 (12:33 +0200)
committerMartin Liska <marxin@gcc.gnu.org>
Wed, 11 Apr 2018 10:33:46 +0000 (10:33 +0000)
2018-04-11  Martin Liska  <mliska@suse.cz>

* lto-symtab.c (lto_symtab_merge_p): Use attribute_value_equal
function.

From-SVN: r259312

gcc/lto/ChangeLog
gcc/lto/lto-symtab.c

index 75a1d1ca807a1e89274e6e8a13c40fee08ba7c35..d2b2511710ca3020cee60b64c8d02d3ba474bb53 100644 (file)
@@ -1,3 +1,8 @@
+2018-04-11  Martin Liska  <mliska@suse.cz>
+
+       * lto-symtab.c (lto_symtab_merge_p): Use attribute_value_equal
+       function.
+
 2018-04-10  Martin Liska  <mliska@suse.cz>
 
        PR lto/85248
index 37c4f45eb0b9810961325c850b71e954cfcc1e9e..2660542300e77cc216eb7a762028dcec3c380cbc 100644 (file)
@@ -580,9 +580,7 @@ lto_symtab_merge_p (tree prevailing, tree decl)
       tree prev_attr = lookup_attribute ("error", DECL_ATTRIBUTES (prevailing));
       tree attr = lookup_attribute ("error", DECL_ATTRIBUTES (decl));
       if ((prev_attr == NULL) != (attr == NULL)
-         || (prev_attr
-             && TREE_VALUE (TREE_VALUE (prev_attr))
-                != TREE_VALUE (TREE_VALUE (attr))))
+         || (prev_attr && !attribute_value_equal (prev_attr, attr)))
        {
           if (symtab->dump_file)
            fprintf (symtab->dump_file, "Not merging decls; "
@@ -593,9 +591,7 @@ lto_symtab_merge_p (tree prevailing, tree decl)
       prev_attr = lookup_attribute ("warning", DECL_ATTRIBUTES (prevailing));
       attr = lookup_attribute ("warning", DECL_ATTRIBUTES (decl));
       if ((prev_attr == NULL) != (attr == NULL)
-         || (prev_attr
-             && TREE_VALUE (TREE_VALUE (prev_attr))
-                != TREE_VALUE (TREE_VALUE (attr))))
+         || (prev_attr && !attribute_value_equal (prev_attr, attr)))
        {
           if (symtab->dump_file)
            fprintf (symtab->dump_file, "Not merging decls; "