aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Headers/emmintrin.h2
-rw-r--r--lib/Headers/xmmintrin.h24
2 files changed, 21 insertions, 5 deletions
diff --git a/lib/Headers/emmintrin.h b/lib/Headers/emmintrin.h
index 238806522e..c6c2acd6e6 100644
--- a/lib/Headers/emmintrin.h
+++ b/lib/Headers/emmintrin.h
@@ -1109,7 +1109,7 @@ static inline void __attribute__((__always_inline__)) _mm_pause(void)
__asm__ volatile ("pause");
}
-#define _MM_SHUFFLE(x, y) (((x) << 1) | (y))
+#define _MM_SHUFFLE2(x, y) (((x) << 1) | (y))
#endif /* __SSE2__ */
diff --git a/lib/Headers/xmmintrin.h b/lib/Headers/xmmintrin.h
index 29cbd9fd63..4ef5f7ed30 100644
--- a/lib/Headers/xmmintrin.h
+++ b/lib/Headers/xmmintrin.h
@@ -712,10 +712,26 @@ static inline int __attribute__((__always_inline__)) _mm_movemask_ps(__m128 a)
#define _MM_SHUFFLE(z, y, x, w) (((z) << 6) | ((y) << 4) | ((x) << 2) | (w))
-#define _MM_MASK_MASK (0x1f80)
-#define _MM_EXCEPT_MASK (0x003f)
-#define _MM_FLUSH_ZERO_MASK (0x8000)
-#define _MM_ROUND_MASK (0x6000)
+#define _MM_MASK_INVALID (0x0001)
+#define _MM_MASK_DENORM (0x0002)
+#define _MM_MASK_DIV_ZERO (0x0004)
+#define _MM_MASK_OVERFLOW (0x0008)
+#define _MM_MASK_UNDERFLOW (0x0010)
+#define _MM_MASK_INEXACT (0x0020)
+#define _MM_EXCEPT_MASK (0x003f)
+#define _MM_MASK_INVALID (0x0080)
+#define _MM_MASK_DENORM (0x0100)
+#define _MM_MASK_MASK (0x1f80)
+
+#define _MM_ROUND_MASK (0x6000)
+#define _MM_ROUND_NEAREST (0x0000)
+#define _MM_ROUND_DOWN (0x2000)
+#define _MM_ROUND_UP (0x4000)
+#define _MM_ROUND_TOWARD_ZERO (0x6000)
+
+#define _MM_FLUSH_ZERO_MASK (0x8000)
+#define _MM_FLUSH_ZERO_ON (0x8000)
+#define _MM_FLUSH_ZERO_OFF (0x8000)
#define _MM_GET_EXCEPTION_MASK() (_mm_getcsr() & _MM_MASK_MASK)
#define _MM_GET_EXCEPTION_STATE() (_mm_getcsr() & _MM_EXCEPT_MASK)