11 #include <initializer_list>    17 #include <type_traits>    22 #if __KALMAR_ACCELERATOR__ == 2 || __KALMAR_CPU__ == 2    33 extern "C" __attribute__((
const,
hc)) uint32_t hc_get_grid_size(
unsigned int n);
    34 extern "C" __attribute__((const,
hc)) uint32_t hc_get_workitem_absolute_id(
unsigned int n);
    35 extern "C" __attribute__((const,
hc)) uint32_t hc_get_group_size(
unsigned int n);
    36 extern "C" __attribute__((const,
hc)) uint32_t hc_get_workitem_id(
unsigned int n);
    37 extern "C" __attribute__((const,
hc)) uint32_t hc_get_num_groups(
unsigned int n);
    38 extern "C" __attribute__((const,
hc)) uint32_t hc_get_group_id(
unsigned int n);
    40 extern "C" __attribute__((const,amp)) uint32_t amp_get_global_size(
unsigned int n);
    41 extern "C" __attribute__((const,amp)) uint32_t amp_get_global_id(
unsigned int n);
    42 extern "C" __attribute__((const,amp)) uint32_t amp_get_local_size(
unsigned int n);
    43 extern "C" __attribute__((const,amp)) uint32_t amp_get_local_id(
unsigned int n);
    44 extern "C" __attribute__((const,amp)) uint32_t amp_get_num_groups(
unsigned int n);
    45 extern "C" __attribute__((const,amp)) uint32_t amp_get_group_id(
unsigned int n);
    47 #if __KALMAR_ACCELERATOR__ == 2    48 #define tile_static thread_local    50 #define tile_static __attribute__((tile_static))    53 extern "C" __attribute__((noduplicate,
hc)) void hc_barrier(
unsigned int n);
    54 extern "C" __attribute__((noduplicate,amp)) 
void amp_barrier(
unsigned int n) ;
    60 #ifndef CLK_LOCAL_MEM_FENCE    61 #define CLK_LOCAL_MEM_FENCE (1)    64 #ifndef CLK_GLOBAL_MEM_FENCE    65 #define CLK_GLOBAL_MEM_FENCE (2)    80         template<
class T> 
operator T *() { 
return (T *) _ptr; }
    85 #define HCC_BACKEND_AMDGPU (1) namespace for internal classes of Kalmar compiler / runtime 
Definition: hc.hpp:42
 
Definition: hc_defines.h:76
 
Heterogeneous C++ (HC) namespace. 
Definition: grid_launch.h:10