diff --git a/include/boost/multi/adaptors/fft.hpp b/include/boost/multi/adaptors/fft.hpp index f1d2ffeea..c601c449d 100644 --- a/include/boost/multi/adaptors/fft.hpp +++ b/include/boost/multi/adaptors/fft.hpp @@ -25,7 +25,7 @@ namespace boost::multi::fft{ template struct priority : std::conditional_t>{}; template auto dft_aux(priority<0> /*unused*/, Args&&... args) BOOST_MULTI_DECLRETURN_( fftw::dft(std::forward(args)...)) - #if defined(__CUDA__) || defined(__NVCC__) + #if defined(__CUDA__) || defined(__NVCC__) || defined(__HIPCC__) template auto dft_aux(priority<1> /*unused*/, Args&&... args) BOOST_MULTI_DECLRETURN_(::boost::multi::cufft ::dft(std::forward(args)...)) #endif template< class... Args> auto dft(Args&&... args) BOOST_MULTI_DECLRETURN_(dft_aux_(priority<1>{}, std::forward(args)...)) @@ -33,13 +33,13 @@ namespace boost::multi::fft{ template auto dft(std::array::dimensionality> which, In&& in, Args&&... args) BOOST_MULTI_DECLRETURN_(dft_aux(priority<1>{}, which, std::forward(in), std::forward(args)...)) template auto dft_forward_aux(priority<0> /*unused*/, Args&&... args) BOOST_MULTI_DECLRETURN_( fftw::dft_forward(std::forward(args)...)) - #if defined(__CUDA__) || defined(__NVCC__) + #if defined(__CUDA__) || defined(__NVCC__) || defined(__HIPCC__) template auto dft_forward_aux(priority<1> /*unused*/, Args&&... args) BOOST_MULTI_DECLRETURN_(cufft ::dft_forward(std::forward(args)...)) #endif template auto dft_forward(std::array::dimensionality> which, In&& in, Args&&... args) BOOST_MULTI_DECLRETURN_(dft_forward_aux(priority<1>{}, which, std::forward(in), std::forward(args)...)) template auto dft_backward_aux(priority<0> /*unused*/, Args&&... args) BOOST_MULTI_DECLRETURN_( fftw::dft_backward(std::forward(args)...)) - #if defined(__CUDA__) || defined(__NVCC__) + #if defined(__CUDA__) || defined(__NVCC__) || defined(__HIPCC__) template auto dft_backward_aux(priority<1> /*unused*/, Args&&... args) BOOST_MULTI_DECLRETURN_(cufft ::dft_backward(std::forward(args)...)) #endif template auto dft_backward(std::array which, In const& in, Args&&... args) -> decltype(auto) {return dft_backward_aux(priority<1>{}, which, in, std::forward(args)...);}