cmake: added configuration options for AVX2, AVX512F, SSE4.1, and SSE4.2

adjusted SDL_intrin.h and testautomation_intrinsics.c accordingly.
This commit is contained in:
Ozkan Sezer
2023-03-21 14:55:32 +03:00
committed by Ozkan Sezer
parent feec1305c6
commit 6c9780720b
4 changed files with 137 additions and 34 deletions

View File

@@ -144,6 +144,10 @@ _m_prefetch(void *__P)
# define SDL_AVX_INTRINSICS 1
# include <immintrin.h>
# endif
# if (defined(_MSC_VER) || defined(__AVX__) || defined(SDL_HAS_TARGET_ATTRIBS)) && !defined(SDL_DISABLE_AVX2)
# define SDL_AVX2_INTRINSICS 1
# include <immintrin.h>
# endif
# if (defined(_MSC_VER) || defined(__AVX512F__) || defined(SDL_HAS_TARGET_ATTRIBS)) && !defined(SDL_DISABLE_AVX512F)
# define SDL_AVX512F_INTRINSICS 1
# include <immintrin.h>

View File

@@ -585,11 +585,14 @@ typedef unsigned int uintptr_t;
#endif /* !_STDINT_H_ && !HAVE_STDINT_H */
/* Configure use of intrinsics */
#cmakedefine SDL_DISABLE_SSE 1
#cmakedefine SDL_DISABLE_SSE2 1
#cmakedefine SDL_DISABLE_SSE3 1
#cmakedefine SDL_DISABLE_SSE41 1
#cmakedefine SDL_DISABLE_SSE42 1
#cmakedefine SDL_DISABLE_AVX 1
#cmakedefine SDL_DISABLE_AVX2 1
#cmakedefine SDL_DISABLE_AVX512F 1
#cmakedefine SDL_DISABLE_MMX 1
#cmakedefine SDL_DISABLE_LSX 1
#cmakedefine SDL_DISABLE_LASX 1