From ff381bf8b4c58dc2ec2ffc1044f6d23070eeda7f Mon Sep 17 00:00:00 2001 From: Robert Maynard Date: Thu, 22 Oct 2020 16:48:30 +0000 Subject: [PATCH] vtkm/Swap works with hip --- vtkm/Swap.h | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/vtkm/Swap.h b/vtkm/Swap.h index 3f4b1ddc0..f833a495c 100644 --- a/vtkm/Swap.h +++ b/vtkm/Swap.h @@ -13,7 +13,7 @@ #include -#ifdef __CUDACC__ +#ifdef VTKM_CUDA #include #else #include @@ -23,13 +23,27 @@ namespace vtkm { /// Performs a swap operation. Safe to call from cuda code. -#ifdef __CUDACC__ +#if defined(VTKM_CUDA) template VTKM_EXEC_CONT void Swap(T& a, T& b) { using namespace thrust; swap(a, b); } +#elif defined(VTKM_HIP) +template +__host__ void Swap(T& a, T& b) +{ + using namespace std; + swap(a, b); +} +template +__device__ void Swap(T& a, T& b) +{ + T temp = a; + a = b; + b = temp; +} #else template VTKM_EXEC_CONT void Swap(T& a, T& b)