20 #ifndef VC_COMMON_SUPPORT_H
21 #define VC_COMMON_SUPPORT_H
24 #error "Vc/global.h must be included first!"
29 #if defined(VC_GCC) && VC_GCC >= 0x40400
30 #define VC_TARGET_NO_SIMD __attribute__((target("no-sse2,no-avx")))
32 #define VC_TARGET_NO_SIMD
86 template<
typename Impl>
105 #ifndef VC_COMPILE_LIB
140 return isImplementationSupported<Vc::CurrentImplementation>();
142 #endif // VC_COMPILE_LIB
148 #undef VC_TARGET_NO_SIMD
150 #endif // VC_COMMON_SUPPORT_H
Namespace for new ROOT classes and functions.
VC_TARGET_NO_SIMD Vc::Implementation bestImplementationSupported()
Determines the best supported implementation for the current system.
VC_TARGET_NO_SIMD bool isImplementationSupported(Vc::Implementation impl)
Tests whether the given implementation is supported by the system the code is executing on...
VC_TARGET_NO_SIMD unsigned int extraInstructionsSupported()
Determines the extra instructions supported by the current CPU.
#define VC_TARGET_NO_SIMD
Implementation
Enum to identify a certain SIMD instruction set.
static VC_TARGET_NO_SIMD bool currentImplementationSupported()
Tests that the CPU and Operating System support the vector unit which was compiled for...
ExtraInstructions
The list of available instructions is not easily described by a linear list of instruction sets...