29 #ifndef CPL_CPU_FEATURES_H 30 #define CPL_CPU_FEATURES_H 37 #ifdef HAVE_SSE_AT_COMPILE_TIME 38 #if (defined(_M_X64) || defined(__x86_64)) 39 #define HAVE_INLINE_SSE 40 static bool inline CPLHaveRuntimeSSE() {
return true; }
42 bool CPLHaveRuntimeSSE();
46 #ifdef HAVE_SSSE3_AT_COMPILE_TIME 48 #define HAVE_INLINE_SSSE3 49 static bool inline CPLHaveRuntimeSSSE3()
58 #if defined(__GNUC__) && !defined(DEBUG) 59 extern bool bCPLHasSSSE3;
60 static bool inline CPLHaveRuntimeSSSE3() {
return bCPLHasSSSE3; }
62 bool CPLHaveRuntimeSSSE3();
67 #ifdef HAVE_AVX_AT_COMPILE_TIME 69 #define HAVE_INLINE_AVX 70 static bool inline CPLHaveRuntimeAVX() {
return true; }
71 #elif defined(__GNUC__) 72 extern bool bCPLHasAVX;
73 static bool inline CPLHaveRuntimeAVX() {
return bCPLHasAVX; }
75 bool CPLHaveRuntimeAVX();
81 #endif // CPL_CPU_FEATURES_H Core portability definitions for CPL.
Various convenience functions for working with strings and string lists.
const char * CPLGetConfigOption(const char *, const char *)
Get the value of a configuration option.
Definition: cpl_conv.cpp:1699
bool CPLTestBool(const char *pszValue)
Test what boolean value contained in the string.
Definition: cpl_string.cpp:1532