return false;
}
-static auto_bitmap ifunc_ref_map;
+static bitmap ifunc_ref_map;
/* Return true if any caller of NODE is an ifunc resolver. */
/* Skip if it has been visited. */
unsigned int uid = e->caller->get_uid ();
- if (bitmap_bit_p (ifunc_ref_map, uid))
+ if (!bitmap_set_bit (ifunc_ref_map, uid))
continue;
- bitmap_set_bit (ifunc_ref_map, uid);
if (is_caller_ifunc_resolver (e->caller))
{
{
symtab_node *node;
+ bitmap_obstack_initialize (NULL);
+ ifunc_ref_map = BITMAP_ALLOC (NULL);
+
FOR_EACH_SYMBOL (node)
{
cgraph_node *cnode = dyn_cast <cgraph_node *> (node);
cnode->called_by_ifunc_resolver = true;
}
- bitmap_clear (ifunc_ref_map);
+ BITMAP_FREE (ifunc_ref_map);
+ bitmap_obstack_release (NULL);
}
/* Verify symbol table for internal consistency. */