@@ -1294,7 +1294,10 @@ class __SYCL_EXPORT handler {
1294
1294
1295
1295
detail::KernelWrapper<detail::WrapAs::parallel_for, KName,
1296
1296
decltype (Wrapper), TransformedArgType,
1297
- decltype (this ), PropertiesT>::wrap (this , Wrapper);
1297
+ PropertiesT>::wrap (Wrapper);
1298
+
1299
+ detail::KernelLaunchPropertyWrapper::parseProperties<KName>(this ,
1300
+ Wrapper);
1298
1301
#ifndef __SYCL_DEVICE_ONLY__
1299
1302
constexpr detail::string_view Name{detail::getKernelName<NameT>()};
1300
1303
verifyUsedKernelBundleInternal (Name);
@@ -1319,8 +1322,9 @@ class __SYCL_EXPORT handler {
1319
1322
// If parallel_for range rounding is forced then only range rounded
1320
1323
// kernel is generated
1321
1324
detail::KernelWrapper<detail::WrapAs::parallel_for, NameT, KernelType,
1322
- TransformedArgType, decltype (this ),
1323
- PropertiesT>::wrap (this , KernelFunc);
1325
+ TransformedArgType, PropertiesT>::wrap (KernelFunc);
1326
+ detail::KernelLaunchPropertyWrapper::parseProperties<NameT>(this ,
1327
+ KernelFunc);
1324
1328
#ifndef __SYCL_DEVICE_ONLY__
1325
1329
constexpr detail::string_view Name{detail::getKernelName<NameT>()};
1326
1330
@@ -1400,7 +1404,9 @@ class __SYCL_EXPORT handler {
1400
1404
typename detail::get_kernel_name_t <KernelName, KernelType>::name;
1401
1405
(void )Props;
1402
1406
detail::KernelWrapper<WrapAsVal, NameT, KernelType, ElementType,
1403
- decltype (this ), PropertiesT>::wrap (this , KernelFunc);
1407
+ PropertiesT>::wrap (KernelFunc);
1408
+ detail::KernelLaunchPropertyWrapper::parseProperties<NameT>(this ,
1409
+ KernelFunc);
1404
1410
#ifndef __SYCL_DEVICE_ONLY__
1405
1411
if constexpr (WrapAsVal == detail::WrapAs::single_task) {
1406
1412
throwOnKernelParameterMisuse<KernelName, KernelType>();
@@ -1441,7 +1447,9 @@ class __SYCL_EXPORT handler {
1441
1447
(void )Props;
1442
1448
(void )Kernel;
1443
1449
detail::KernelWrapper<WrapAsVal, NameT, KernelType, ElementType,
1444
- decltype (this ), PropertiesT>::wrap (this , KernelFunc);
1450
+ PropertiesT>::wrap (KernelFunc);
1451
+ detail::KernelLaunchPropertyWrapper::parseProperties<NameT>(this ,
1452
+ KernelFunc);
1445
1453
#ifndef __SYCL_DEVICE_ONLY__
1446
1454
if constexpr (WrapAsVal == detail::WrapAs::single_task) {
1447
1455
throwOnKernelParameterMisuse<KernelName, KernelType>();
@@ -3643,9 +3651,7 @@ class __SYCL_EXPORT handler {
3643
3651
void instantiateKernelOnHost (void *InstantiateKernelOnHostPtr);
3644
3652
3645
3653
friend class detail ::HandlerAccess;
3646
- template <detail::WrapAs, typename , typename , typename , typename , typename ,
3647
- typename >
3648
- friend struct detail ::KernelWrapper;
3654
+ friend struct detail ::KernelLaunchPropertyWrapper;
3649
3655
3650
3656
#ifdef __INTEL_PREVIEW_BREAKING_CHANGES
3651
3657
__SYCL_DLL_LOCAL detail::handler_impl *get_impl () { return impl; }
0 commit comments