re PR debug/66691 (ICE on valid code at -O3 with -g enabled in simplify_subreg, at...
[gcc.git] / gcc / ipa-icf.h
index f229ca18ecf151181bd4759627d161a6ec92f4e5..67d5bdc90c5eb9c7f8ff344b110e5fc1234316e7 100644 (file)
@@ -87,10 +87,10 @@ public:
 
 /* Hash traits for symbol_compare_collection map.  */
 
-struct symbol_compare_hashmap_traits: default_hashmap_traits
+struct symbol_compare_hash : nofree_ptr_hash <symbol_compare_collection>
 {
   static hashval_t
-  hash (const symbol_compare_collection *v)
+  hash (value_type v)
   {
     inchash::hash hstate;
     hstate.add_int (v->m_references.length ());
@@ -107,8 +107,7 @@ struct symbol_compare_hashmap_traits: default_hashmap_traits
   }
 
   static bool
-  equal_keys (const symbol_compare_collection *a,
-             const symbol_compare_collection *b)
+  equal (value_type a, value_type b)
   {
     if (a->m_references.length () != b->m_references.length ()
        || a->m_interposables.length () != b->m_interposables.length ())