@@ -1803,6 +1803,8 @@ class __SYCL_EXPORT handler {
1803
1803
void single_task (kernel Kernel) {
1804
1804
throwIfActionIsCreated ();
1805
1805
verifyKernelInvoc (Kernel);
1806
+ // Ignore any set kernel bundles and use the one associated with the kernel
1807
+ setHandlerKernelBundle (detail::getSyclObjImpl (Kernel.get_kernel_bundle ()));
1806
1808
// No need to check if range is out of INT_MAX limits as it's compile-time
1807
1809
// known constant
1808
1810
MNDRDesc.set (range<1 >{1 });
@@ -1874,6 +1876,8 @@ class __SYCL_EXPORT handler {
1874
1876
template <typename KernelName = detail::auto_name, typename KernelType>
1875
1877
void single_task (kernel Kernel, _KERNELFUNCPARAM (KernelFunc)) {
1876
1878
throwIfActionIsCreated ();
1879
+ // Ignore any set kernel bundles and use the one associated with the kernel
1880
+ setHandlerKernelBundle (detail::getSyclObjImpl (Kernel.get_kernel_bundle ()));
1877
1881
using NameT =
1878
1882
typename detail::get_kernel_name_t <KernelName, KernelType>::name;
1879
1883
(void )Kernel;
@@ -1917,6 +1921,8 @@ class __SYCL_EXPORT handler {
1917
1921
void parallel_for (kernel Kernel, range<Dims> NumWorkItems,
1918
1922
_KERNELFUNCPARAM (KernelFunc)) {
1919
1923
throwIfActionIsCreated ();
1924
+ // Ignore any set kernel bundles and use the one associated with the kernel
1925
+ setHandlerKernelBundle (detail::getSyclObjImpl (Kernel.get_kernel_bundle ()));
1920
1926
using NameT =
1921
1927
typename detail::get_kernel_name_t <KernelName, KernelType>::name;
1922
1928
using LambdaArgType = sycl::detail::lambda_arg_type<KernelType, item<Dims>>;
@@ -1952,6 +1958,8 @@ class __SYCL_EXPORT handler {
1952
1958
void parallel_for (kernel Kernel, range<Dims> NumWorkItems,
1953
1959
id<Dims> WorkItemOffset, _KERNELFUNCPARAM (KernelFunc)) {
1954
1960
throwIfActionIsCreated ();
1961
+ // Ignore any set kernel bundles and use the one associated with the kernel
1962
+ setHandlerKernelBundle (detail::getSyclObjImpl (Kernel.get_kernel_bundle ()));
1955
1963
using NameT =
1956
1964
typename detail::get_kernel_name_t <KernelName, KernelType>::name;
1957
1965
using LambdaArgType = sycl::detail::lambda_arg_type<KernelType, item<Dims>>;
@@ -1987,6 +1995,8 @@ class __SYCL_EXPORT handler {
1987
1995
void parallel_for (kernel Kernel, nd_range<Dims> NDRange,
1988
1996
_KERNELFUNCPARAM (KernelFunc)) {
1989
1997
throwIfActionIsCreated ();
1998
+ // Ignore any set kernel bundles and use the one associated with the kernel
1999
+ setHandlerKernelBundle (detail::getSyclObjImpl (Kernel.get_kernel_bundle ()));
1990
2000
using NameT =
1991
2001
typename detail::get_kernel_name_t <KernelName, KernelType>::name;
1992
2002
using LambdaArgType =
@@ -2026,6 +2036,8 @@ class __SYCL_EXPORT handler {
2026
2036
void parallel_for_work_group (kernel Kernel, range<Dims> NumWorkGroups,
2027
2037
_KERNELFUNCPARAM (KernelFunc)) {
2028
2038
throwIfActionIsCreated ();
2039
+ // Ignore any set kernel bundles and use the one associated with the kernel
2040
+ setHandlerKernelBundle (detail::getSyclObjImpl (Kernel.get_kernel_bundle ()));
2029
2041
using NameT =
2030
2042
typename detail::get_kernel_name_t <KernelName, KernelType>::name;
2031
2043
using LambdaArgType =
@@ -2063,6 +2075,8 @@ class __SYCL_EXPORT handler {
2063
2075
range<Dims> WorkGroupSize,
2064
2076
_KERNELFUNCPARAM (KernelFunc)) {
2065
2077
throwIfActionIsCreated ();
2078
+ // Ignore any set kernel bundles and use the one associated with the kernel
2079
+ setHandlerKernelBundle (detail::getSyclObjImpl (Kernel.get_kernel_bundle ()));
2066
2080
using NameT =
2067
2081
typename detail::get_kernel_name_t <KernelName, KernelType>::name;
2068
2082
using LambdaArgType =
0 commit comments