+2017-01-11 Martin Jambor <mjambor@suse.cz>
+
+ * hsa.c (hsa_callable_function_p): Revert addition of DECL_ARTIFICIAL
+ test.
+ * ipa-hsa.c (process_hsa_functions): Only duplicate non-artificial
+ decorated functions.
+
2017-01-11 Richard Biener <rguenther@suse.de>
* tree-vrp.c (evrp_dom_walker::before_dom_children): Also
hsa_callable_function_p (tree fndecl)
{
return (lookup_attribute ("omp declare target", DECL_ATTRIBUTES (fndecl))
- && !lookup_attribute ("oacc function", DECL_ATTRIBUTES (fndecl))
- /* At this point, this is enough to identify clones for
- parallel, which for HSA would need to be kernels anyway. */
- && !DECL_ARTIFICIAL (fndecl));
+ && !lookup_attribute ("oacc function", DECL_ATTRIBUTES (fndecl)));
}
/* Allocate HSA structures that are are used when dealing with different
clone->name (),
s->m_kind == HSA_KERNEL ? "kernel" : "function");
}
- else if (hsa_callable_function_p (node->decl))
+ else if (hsa_callable_function_p (node->decl)
+ /* At this point, this is enough to identify clones for
+ parallel, which for HSA would need to be kernels anyway. */
+ && !DECL_ARTIFICIAL (node->decl))
{
if (!check_warn_node_versionable (node))
continue;