diff --git a/src/test_vec.c b/src/test_vec.c index bb7c852..ba33469 100644 --- a/src/test_vec.c +++ b/src/test_vec.c @@ -18,6 +18,8 @@ #define vec_sigmoid vec_sigmoid_fast #define sgemv_accum16 sgemv_accum16_fast #define sparse_sgemv_accum16 sparse_sgemv_accum16_fast +#define sgemv_accum8x4 sgemv_accum8x4_fast +#define sparse_sgemv_accum8x4 sparse_sgemv_accum8x4_fast #ifdef __AVX__ #include "vec_avx.h" @@ -34,7 +36,6 @@ const char simd[]="SSE"; const char simd[]="NEON"; #else const char simd[]="none"; -#include "vec.h" #endif #undef celt_exp2 @@ -45,6 +46,12 @@ const char simd[]="none"; #undef vec_sigmoid #undef sgemv_accum16 #undef sparse_sgemv_accum16 +#undef sgemv_accum8x4 +#undef sparse_sgemv_accum8x4 + +/* Override auto-detection of architecture so we have the non-optimized versions too. */ +#define NO_OPTIMIZATIONS +#include "vec.h" #define ROW_STEP 16 #define ROWS ROW_STEP*10 diff --git a/src/vec.h b/src/vec.h index d1f82b5..21b4484 100644 --- a/src/vec.h +++ b/src/vec.h @@ -35,14 +35,15 @@ #include "arch.h" -#if defined(__AVX__) || defined(__SSE2__) +#if !defined(NO_OPTIMIZATIONS) && (defined(__AVX__) || defined(__SSE2__)) #include "vec_avx.h" -#elif defined(__ARM_NEON__) || defined(__ARM_NEON) +#elif !defined(NO_OPTIMIZATIONS) && (defined(__ARM_NEON__) || defined(__ARM_NEON)) #include "vec_neon.h" #else #define MAX_INPUTS (2048) +#undef NO_OPTIMIZATIONS #define NO_OPTIMIZATIONS #ifndef DISABLE_DOT_PROD