@@ -67,47 +67,6 @@ namespace csd = cl::sycl::detail;
67
67
template <typename T, int Dimensions, typename AllocatorT> class buffer ;
68
68
namespace detail {
69
69
70
- #ifdef __SYCL_DEVICE_ONLY__
71
-
72
- #define DEFINE_INIT_SIZES (POSTFIX ) \
73
- \
74
- template <int Dim, class DstT > struct InitSizesST ##POSTFIX; \
75
- \
76
- template <class DstT > struct InitSizesST ##POSTFIX<1 , DstT> { \
77
- static void initSize (DstT &Dst) { \
78
- Dst[0 ] = get##POSTFIX<0 >(); \
79
- } \
80
- }; \
81
- \
82
- template <class DstT > struct InitSizesST ##POSTFIX<2 , DstT> { \
83
- static void initSize (DstT &Dst) { \
84
- Dst[1 ] = get##POSTFIX<1 >(); \
85
- InitSizesST##POSTFIX<1 , DstT>::initSize (Dst); \
86
- } \
87
- }; \
88
- \
89
- template <class DstT > struct InitSizesST ##POSTFIX<3 , DstT> { \
90
- static void initSize (DstT &Dst) { \
91
- Dst[2 ] = get##POSTFIX<2 >(); \
92
- InitSizesST##POSTFIX<2 , DstT>::initSize (Dst); \
93
- } \
94
- }; \
95
- \
96
- template <int Dims, class DstT > static void init##POSTFIX(DstT &Dst) { \
97
- InitSizesST##POSTFIX<Dims, DstT>::initSize (Dst); \
98
- }
99
-
100
- DEFINE_INIT_SIZES (GlobalSize);
101
- DEFINE_INIT_SIZES (GlobalInvocationId)
102
- DEFINE_INIT_SIZES(WorkgroupSize)
103
- DEFINE_INIT_SIZES(LocalInvocationId)
104
- DEFINE_INIT_SIZES(WorkgroupId)
105
- DEFINE_INIT_SIZES(GlobalOffset)
106
-
107
- #undef DEFINE_INIT_SIZES
108
-
109
- #endif // __SYCL_DEVICE_ONLY__
110
-
111
70
class queue_impl ;
112
71
class stream_impl ;
113
72
template <typename RetType, typename Func, typename Arg>
@@ -548,7 +507,7 @@ class handler {
548
507
KernelType>::type KernelFunc) {
549
508
id<dimensions> global_id;
550
509
551
- detail ::initGlobalInvocationId<dimensions>(global_id);
510
+ __spirv ::initGlobalInvocationId<dimensions>(global_id);
552
511
553
512
KernelFunc (global_id);
554
513
}
@@ -562,8 +521,8 @@ class handler {
562
521
id<dimensions> global_id;
563
522
range<dimensions> global_size;
564
523
565
- detail ::initGlobalInvocationId<dimensions>(global_id);
566
- detail ::initGlobalSize<dimensions>(global_size);
524
+ __spirv ::initGlobalInvocationId<dimensions>(global_id);
525
+ __spirv ::initGlobalSize<dimensions>(global_size);
567
526
568
527
item<dimensions, false > Item =
569
528
detail::Builder::createItem<dimensions, false >(global_size, global_id);
@@ -583,12 +542,12 @@ class handler {
583
542
id<dimensions> local_id;
584
543
id<dimensions> global_offset;
585
544
586
- detail ::initGlobalSize<dimensions>(global_size);
587
- detail ::initWorkgroupSize<dimensions>(local_size);
588
- detail ::initWorkgroupId<dimensions>(group_id);
589
- detail ::initGlobalInvocationId<dimensions>(global_id);
590
- detail ::initLocalInvocationId<dimensions>(local_id);
591
- detail ::initGlobalOffset<dimensions>(global_offset);
545
+ __spirv ::initGlobalSize<dimensions>(global_size);
546
+ __spirv ::initWorkgroupSize<dimensions>(local_size);
547
+ __spirv ::initWorkgroupId<dimensions>(group_id);
548
+ __spirv ::initGlobalInvocationId<dimensions>(global_id);
549
+ __spirv ::initLocalInvocationId<dimensions>(local_id);
550
+ __spirv ::initGlobalOffset<dimensions>(global_offset);
592
551
593
552
group<dimensions> Group = detail::Builder::createGroup<dimensions>(
594
553
global_size, local_size, group_id);
0 commit comments