From 4ecbadc72896ca5fa7a3cdeea84f4faafd3b0be3 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Wed, 27 Jan 2016 13:50:05 +0100 Subject: HSA: simplify partitioning of HSA kernels and host impls. * lto-partition.c (add_symbol_to_partition_1): Remove usage of hsa_summaries. * hsa.c (hsa_summary_t::link_functions): Create IPA_REF_ADDR reference for an HSA kernel and its host function. From-SVN: r232871 --- gcc/hsa.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'gcc/hsa.c') diff --git a/gcc/hsa.c b/gcc/hsa.c index ec23f81..f0b3205 100644 --- a/gcc/hsa.c +++ b/gcc/hsa.c @@ -781,6 +781,11 @@ hsa_summary_t::link_functions (cgraph_node *gpu, cgraph_node *host, TREE_OPTIMIZATION (fn_opts)->x_flag_tree_loop_vectorize = false; TREE_OPTIMIZATION (fn_opts)->x_flag_tree_slp_vectorize = false; DECL_FUNCTION_SPECIFIC_OPTIMIZATION (gdecl) = fn_opts; + + /* Create reference between a kernel and a corresponding host implementation + to quarantee LTO streaming to a same LTRANS. */ + if (kind == HSA_KERNEL) + gpu->create_reference (host, IPA_REF_ADDR); } /* Add a HOST function to HSA summaries. */ -- cgit v1.1