10 #ifndef TEMPUS_UNIT_TEST_MAIN_UTILS_HPP
11 #define TEMPUS_UNIT_TEST_MAIN_UTILS_HPP
13 #if defined(__linux__) && defined(__GNUC__) && !defined(__INTEL_COMPILER)
15 #elif defined(__APPLE__) && defined(__GNUC__) && defined(__SSE__)
16 #include <xmmintrin.h>
19 namespace Tempus_Test {
30 #if defined(__APPLE__) && defined(__GNUC__) && defined(__SSE__)
31 static int eMask = _MM_GET_EXCEPTION_MASK();
35 #if defined(__linux__) && defined(__GNUC__) && !defined(__INTEL_COMPILER)
36 feenableexcept(FE_DIVBYZERO | FE_OVERFLOW | FE_INVALID);
37 #elif defined(__APPLE__) && defined(__GNUC__) && defined(__SSE__)
38 eMask = _MM_GET_EXCEPTION_MASK();
39 _MM_SET_EXCEPTION_MASK(eMask & ~_MM_MASK_DIV_ZERO & ~_MM_MASK_OVERFLOW &
44 #if defined(__linux__) && defined(__GNUC__) && !defined(__INTEL_COMPILER)
45 fedisableexcept(FE_DIVBYZERO | FE_OVERFLOW | FE_INVALID);
46 #elif defined(__APPLE__) && defined(__GNUC__) && defined(__SSE__)
47 _MM_SET_EXCEPTION_MASK(eMask);
54 #endif // TEMPUS_UNIT_TEST_MAIN_UTILS_HPP
void enableFPE(bool enableFPE)
Enable Floating Point Exceptions.