@@ -722,16 +722,25 @@ class __sycl_reduction_aux_kernel;
722
722
723
723
// / Helper structs to get additional kernel name types based on given
724
724
// / \c Name and additional template parameters helping to distinguish kernels.
725
- // / If \c Name is undefined (is \c auto_name) then \c Type becomes the \c Name.
725
+ // / If \c Name is undefined (is \c auto_name) leave it that way to take advantage
726
+ // of unnamed kernels being named after their functor.
726
727
template <typename Name, typename Type, bool B1, bool B2, typename T3 = void >
727
728
struct get_reduction_main_kernel_name_t {
728
- using name = __sycl_reduction_main_kernel<
729
- typename sycl::detail::get_kernel_name_t <Name, Type>::name, B1, B2, T3>;
729
+ using name = __sycl_reduction_main_kernel<Name, Type, B1, B2, T3>;
730
+ };
731
+ template <typename Type, bool B1, bool B2, typename T3 = void >
732
+ struct get_reduction_main_kernel_name_t <sycl::detail::auto_name, Type, B1, B2,
733
+ T3> {
734
+ using name = sycl::detail::auto_name;
730
735
};
731
736
template <typename Name, typename Type, bool B1, bool B2, typename T3>
732
737
struct get_reduction_aux_kernel_name_t {
733
- using name = __sycl_reduction_aux_kernel<
734
- typename sycl::detail::get_kernel_name_t <Name, Type>::name, B1, B2, T3>;
738
+ using name = __sycl_reduction_aux_kernel<Name, B1, B2, T3>;
739
+ };
740
+ template <typename Type, bool B1, bool B2, typename T3 = void >
741
+ struct get_reduction_aux_kernel_name_t <sycl::detail::auto_name, Type, B1, B2,
742
+ T3> {
743
+ using name = sycl::detail::auto_name;
735
744
};
736
745
737
746
// / Implements a command group function that enqueues a kernel that calls
0 commit comments