copy over custom _mm_loadu_si32 for old gcc
This commit is contained in:
parent
4077596b89
commit
7c6676a492
@ -35,6 +35,13 @@
|
||||
#include "../builtins.h"
|
||||
|
||||
#if SINGELI
|
||||
#include <xmmintrin.h>
|
||||
#if __GNUC__ && !__clang__ // old gcc versions don't define _mm_loadu_si32 & _mm_storeu_si32
|
||||
static __m128i custom_loadu_si32(void* p) { return (__m128i) _mm_load_ss(p); }
|
||||
static void custom_storeu_si32(void* p, __m128i x) { _mm_store_ss(p, _mm_castsi128_ps(x)); }
|
||||
#define _mm_loadu_si32 custom_loadu_si32
|
||||
#define _mm_storeu_si32 custom_storeu_si32
|
||||
#endif
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wunused-variable"
|
||||
#include "../singeli/gen/select.c"
|
||||
|
||||
@ -220,12 +220,8 @@ DEF_G(void, copy, B, (void* a, usz ms, B x, usz xs, usz l), ms, x, x
|
||||
#if SINGELI
|
||||
#include <xmmintrin.h>
|
||||
#if __GNUC__ && !__clang__ // old gcc versions don't define _mm_loadu_si32 & _mm_storeu_si32
|
||||
__m128i custom_loadu_si32(void* p) {
|
||||
return (__m128i) _mm_load_ss(p);
|
||||
}
|
||||
void custom_storeu_si32(void* p, __m128i x) {
|
||||
_mm_store_ss(p, _mm_castsi128_ps(x));
|
||||
}
|
||||
static __m128i custom_loadu_si32(void* p) { return (__m128i) _mm_load_ss(p); }
|
||||
static void custom_storeu_si32(void* p, __m128i x) { _mm_store_ss(p, _mm_castsi128_ps(x)); }
|
||||
#define _mm_loadu_si32 custom_loadu_si32
|
||||
#define _mm_storeu_si32 custom_storeu_si32
|
||||
#endif
|
||||
|
||||
Loading…
Reference in New Issue
Block a user