From dd6f7e8793d78b9c64f6468405ce77b250a18646 Mon Sep 17 00:00:00 2001 From: Luca Tornatore <luca.tornatore@inaf.it> Date: Fri, 29 Nov 2024 16:53:01 +0100 Subject: [PATCH] added macro for vector sqrt --- headers/vector_types.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/headers/vector_types.h b/headers/vector_types.h index e9d9628..1e14ebe 100644 --- a/headers/vector_types.h +++ b/headers/vector_types.h @@ -77,6 +77,8 @@ #define LLVSIZE 8 #define VALIGN 64 +#define VSQRT(v) _mm512_sqrt_pd(v) + #elif defined ( __AVX__ ) || defined ( __AVX2__ ) #warning "found AVX/AVX2" @@ -93,6 +95,8 @@ #define LLVSIZE 4 #define VALIGN 32 +#define VSQRT(v) _mm256_sqrt_pd(v) + #elif defined ( __SSE4__ ) || defined ( __SSE3__ ) #warning "found SSE >= 3" @@ -108,11 +112,15 @@ #define LLVSIZE 2 #define VALIGN 32 +#define VSQRT(v) _mm_sqrt_pd(v) + #else #define VSIZE (sizeof(double)) #undef VSIZE_FROM_INTRINSICS #define NO_VECTOR + +#define VSQRT(v) sqrt(v) #endif #endif -- GitLab