2121#include < sycl/detail/id_queries_fit_in_int.hpp> // for checkValueRange
2222#include < sycl/detail/info_desc_helpers.hpp> // for is_queue_info_...
2323#include < sycl/detail/kernel_desc.hpp> // for KernelInfo
24+ #include < sycl/detail/nd_range_view.hpp>
2425#include < sycl/detail/optional.hpp>
2526#include < sycl/detail/owner_less_base.hpp> // for OwnerLessBase
2627#include < sycl/device.hpp> // for device
@@ -64,18 +65,16 @@ template <backend BackendName, class SyclObjectT>
6465auto get_native (const SyclObjectT &Obj)
6566 -> backend_return_t<BackendName, SyclObjectT>;
6667
67- template <int Dims>
6868event __SYCL_EXPORT submit_kernel_direct_with_event_impl (
69- const queue &Queue, const nd_range<Dims> &Range ,
69+ const queue &Queue, const detail::nd_range_view &RangeView ,
7070 detail::HostKernelRefBase &HostKernel,
7171 detail::DeviceKernelInfo *DeviceKernelInfo,
7272 sycl::span<const event> DepEvents,
7373 const detail::KernelPropertyHolderStructTy &Props,
7474 const detail::code_location &CodeLoc, bool IsTopCodeLoc);
7575
76- template <int Dims>
7776void __SYCL_EXPORT submit_kernel_direct_without_event_impl (
78- const queue &Queue, const nd_range<Dims> &Range ,
77+ const queue &Queue, const detail::nd_range_view &RangeView ,
7978 detail::HostKernelRefBase &HostKernel,
8079 detail::DeviceKernelInfo *DeviceKernelInfo,
8180 sycl::span<const event> DepEvents,
@@ -167,7 +166,7 @@ template <detail::WrapAs WrapAs, typename LambdaArgType,
167166 typename PropertiesT = ext::oneapi::experimental::empty_properties_t ,
168167 typename KernelTypeUniversalRef, int Dims>
169168auto submit_kernel_direct (
170- const queue &Queue, const nd_range<Dims> &Range ,
169+ const queue &Queue, const detail::nd_range_view &RangeView ,
171170 KernelTypeUniversalRef &&KernelFunc, sycl::span<const event> DepEvents,
172171 const PropertiesT &ExtraProps =
173172 ext::oneapi::experimental::empty_properties_t {},
@@ -233,12 +232,12 @@ auto submit_kernel_direct(
233232
234233 if constexpr (EventNeeded) {
235234 return submit_kernel_direct_with_event_impl (
236- Queue, Range , HostKernel, DeviceKernelInfoPtr, DepEvents,
235+ Queue, RangeView , HostKernel, DeviceKernelInfoPtr, DepEvents,
237236 ParsedProperties, TlsCodeLocCapture.query (),
238237 TlsCodeLocCapture.isToplevel ());
239238 } else {
240239 submit_kernel_direct_without_event_impl (
241- Queue, Range , HostKernel, DeviceKernelInfoPtr, DepEvents,
240+ Queue, RangeView , HostKernel, DeviceKernelInfoPtr, DepEvents,
242241 ParsedProperties, TlsCodeLocCapture.query (),
243242 TlsCodeLocCapture.isToplevel ());
244243 }
@@ -248,7 +247,7 @@ template <typename KernelName = detail::auto_name, bool EventNeeded = false,
248247 typename PropertiesT = ext::oneapi::experimental::empty_properties_t ,
249248 typename KernelTypeUniversalRef, int Dims>
250249auto submit_kernel_direct_parallel_for (
251- const queue &Queue, const nd_range<Dims> & Range,
250+ const queue &Queue, nd_range<Dims> Range,
252251 KernelTypeUniversalRef &&KernelFunc, sycl::span<const event> DepEvents = {},
253252 const PropertiesT &Props = ext::oneapi::experimental::empty_properties_t {},
254253 const detail::code_location &CodeLoc = detail::code_location::current()) {
@@ -271,8 +270,9 @@ auto submit_kernel_direct_parallel_for(
271270 return submit_kernel_direct<detail::WrapAs::parallel_for, TransformedArgType,
272271 KernelName, EventNeeded, PropertiesT,
273272 KernelTypeUniversalRef, Dims>(
274- Queue, Range, std::forward<KernelTypeUniversalRef>(KernelFunc), DepEvents,
275- Props, CodeLoc);
273+ Queue, detail::nd_range_view (Range),
274+ std::forward<KernelTypeUniversalRef>(KernelFunc), DepEvents, Props,
275+ CodeLoc);
276276}
277277
278278template <typename KernelName = detail::auto_name, bool EventNeeded = false ,
@@ -287,7 +287,7 @@ auto submit_kernel_direct_single_task(
287287 return submit_kernel_direct<detail::WrapAs::single_task, void , KernelName,
288288 EventNeeded, PropertiesT, KernelTypeUniversalRef,
289289 1 >(
290- Queue, nd_range< 1 >{ 1 , 1 } ,
290+ Queue, detail::nd_range_view () ,
291291 std::forward<KernelTypeUniversalRef>(KernelFunc), DepEvents, Props,
292292 CodeLoc);
293293}
0 commit comments