diff --git a/sycl/include/sycl/ext/intel/experimental/esimd/math.hpp b/sycl/include/sycl/ext/intel/experimental/esimd/math.hpp index a95ea7435aa39..05d8fc81e3d56 100644 --- a/sycl/include/sycl/ext/intel/experimental/esimd/math.hpp +++ b/sycl/include/sycl/ext/intel/experimental/esimd/math.hpp @@ -275,10 +275,13 @@ shr(T1 src0, T2 src1, Sat sat = {}) { /// the input vector \p src0 shall be rotated. /// @return vector of rotated elements. template -__ESIMD_API - std::enable_if_t::value && std::is_integral::value, - __ESIMD_NS::simd> - rol(__ESIMD_NS::simd src0, __ESIMD_NS::simd src1) { +__ESIMD_API std::enable_if_t< + __ESIMD_NS::detail::is_type() && + __ESIMD_NS::detail::is_type(), + __ESIMD_NS::simd> +rol(__ESIMD_NS::simd src0, __ESIMD_NS::simd src1) { return __esimd_rol(src0.data(), src1.data()); } @@ -291,10 +294,14 @@ __ESIMD_API /// @param src1 the number of bit positions the input vector shall be rotated. /// @return vector of rotated elements. template -__ESIMD_API std::enable_if_t::value && - std::is_integral::value && - std::is_integral::value, - __ESIMD_NS::simd> +__ESIMD_API std::enable_if_t< + __ESIMD_NS::detail::is_type() && + __ESIMD_NS::detail::is_type() && + __ESIMD_NS::detail::is_type(), + __ESIMD_NS::simd> rol(__ESIMD_NS::simd src0, U src1) { __ESIMD_NS::simd Src1 = src1; return esimd::rol(src0, Src1); @@ -308,13 +315,17 @@ rol(__ESIMD_NS::simd src0, U src1) { /// @param src1 the number of bit positions the input vector shall be rotated. /// @return rotated left value. template -__ESIMD_API std::enable_if_t<__ESIMD_DNS::is_esimd_scalar::value && - __ESIMD_DNS::is_esimd_scalar::value && - __ESIMD_DNS::is_esimd_scalar::value && - std::is_integral::value && - std::is_integral::value && - std::is_integral::value, - std::remove_const_t> +__ESIMD_API std::enable_if_t< + __ESIMD_DNS::is_esimd_scalar::value && + __ESIMD_DNS::is_esimd_scalar::value && + __ESIMD_DNS::is_esimd_scalar::value && + __ESIMD_NS::detail::is_type() && + __ESIMD_NS::detail::is_type() && + __ESIMD_NS::detail::is_type(), + std::remove_const_t> rol(T1 src0, T2 src1) { __ESIMD_NS::simd Src0 = src0; __ESIMD_NS::simd Result = esimd::rol(Src0, src1); @@ -330,10 +341,13 @@ rol(T1 src0, T2 src1) { /// the input vector \p src0 shall be rotated. /// @return vector of rotated elements. template -__ESIMD_API - std::enable_if_t::value && std::is_integral::value, - __ESIMD_NS::simd> - ror(__ESIMD_NS::simd src0, __ESIMD_NS::simd src1) { +__ESIMD_API std::enable_if_t< + __ESIMD_NS::detail::is_type() && + __ESIMD_NS::detail::is_type(), + __ESIMD_NS::simd> +ror(__ESIMD_NS::simd src0, __ESIMD_NS::simd src1) { return __esimd_ror(src0.data(), src1.data()); } @@ -346,10 +360,14 @@ __ESIMD_API /// @param src1 the number of bit positions the input vector shall be rotated. /// @return vector of rotated elements. template -__ESIMD_API std::enable_if_t::value && - std::is_integral::value && - std::is_integral::value, - __ESIMD_NS::simd> +__ESIMD_API std::enable_if_t< + __ESIMD_NS::detail::is_type() && + __ESIMD_NS::detail::is_type() && + __ESIMD_NS::detail::is_type(), + __ESIMD_NS::simd> ror(__ESIMD_NS::simd src0, U src1) { __ESIMD_NS::simd Src1 = src1; return esimd::ror(src0, Src1); @@ -363,13 +381,17 @@ ror(__ESIMD_NS::simd src0, U src1) { /// @param src1 the number of bit positions the input vector shall be rotated. /// @return rotated right value. template -__ESIMD_API std::enable_if_t<__ESIMD_DNS::is_esimd_scalar::value && - __ESIMD_DNS::is_esimd_scalar::value && - __ESIMD_DNS::is_esimd_scalar::value && - std::is_integral::value && - std::is_integral::value && - std::is_integral::value, - std::remove_const_t> +__ESIMD_API std::enable_if_t< + __ESIMD_DNS::is_esimd_scalar::value && + __ESIMD_DNS::is_esimd_scalar::value && + __ESIMD_DNS::is_esimd_scalar::value && + __ESIMD_NS::detail::is_type() && + __ESIMD_NS::detail::is_type() && + __ESIMD_NS::detail::is_type(), + std::remove_const_t> ror(T1 src0, T2 src1) { __ESIMD_NS::simd Src0 = src0; __ESIMD_NS::simd Result = esimd::ror(Src0, src1);