From 0dcae1c64c821920a22022a5930121b5f84019f3 Mon Sep 17 00:00:00 2001 From: Sai Praveen Bangaru <31557731+saipraveenb25@users.noreply.github.com> Date: Wed, 2 Aug 2023 23:04:21 -0400 Subject: Only define atomics for `float2` and `float4` when CUDA arch<900 (#3041) From Ada onwards, these definitions are already available in CUDA's stdlib and will cause a compiler error. --- prelude/slang-cuda-prelude.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/prelude/slang-cuda-prelude.h b/prelude/slang-cuda-prelude.h index 0b56b8a71..1447be05b 100644 --- a/prelude/slang-cuda-prelude.h +++ b/prelude/slang-cuda-prelude.h @@ -423,9 +423,11 @@ SLANG_MAKE_VECTOR_FROM_SCALAR(__half) return result; \ }\ +#if defined(__CUDA_ARCH__) && __CUDA_ARCH__ < 900 SLANG_CUDA_VECTOR_ATOMIC_BINARY_IMPL(atomicAdd, float, 2) -SLANG_CUDA_VECTOR_ATOMIC_BINARY_IMPL(atomicAdd, float, 3) SLANG_CUDA_VECTOR_ATOMIC_BINARY_IMPL(atomicAdd, float, 4) +#endif +SLANG_CUDA_VECTOR_ATOMIC_BINARY_IMPL(atomicAdd, float, 3) SLANG_CUDA_VECTOR_ATOMIC_BINARY_IMPL(atomicAdd, int, 2) SLANG_CUDA_VECTOR_ATOMIC_BINARY_IMPL(atomicAdd, int, 3) SLANG_CUDA_VECTOR_ATOMIC_BINARY_IMPL(atomicAdd, int, 4) -- cgit v1.2.3