41 static void impl(array<int, s>& d,
const int& i) {
42 d.head =
__shfl(d.head, i);
43 shuffle<s-1>::impl(d.tail, i);
50 static void impl(array<int, 1>& d,
const int& i) {
51 d.head =
__shfl(d.head, i);
60 T
__shfl(
const T& t,
const int& i) {
64 lysed_array lysed = trove::detail::lyse<int>(t);
65 trove::detail::shuffle<lysed_array::size>
67 return trove::detail::fuse<T>(lysed);
__device__ __forceinline__ T __shfl(const T &t, const int &i)