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
40static bool inline CPLHaveRuntimeSSE()
45bool CPLHaveRuntimeSSE();
49#ifdef HAVE_SSSE3_AT_COMPILE_TIME
51#define HAVE_INLINE_SSSE3
52static bool inline CPLHaveRuntimeSSSE3()
55 if (!CPLTestBool(CPLGetConfigOption(
"GDAL_USE_SSSE3",
"YES")))
61#if defined(__GNUC__) && !defined(DEBUG)
62extern bool bCPLHasSSSE3;
63static bool inline CPLHaveRuntimeSSSE3()
68bool CPLHaveRuntimeSSSE3();
73#ifdef HAVE_AVX_AT_COMPILE_TIME
75#define HAVE_INLINE_AVX
76static bool inline CPLHaveRuntimeAVX()
80#elif defined(__GNUC__)
81extern bool bCPLHasAVX;
82static bool inline CPLHaveRuntimeAVX()
87bool CPLHaveRuntimeAVX();
Core portability definitions for CPL.
Various convenience functions for working with strings and string lists.