aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2009-09-18 17:03:55 +0000
committerAnders Carlsson <andersca@mac.com>2009-09-18 17:03:55 +0000
commit9436ed50b0923368d5ae7a97f1b67c56b6837430 (patch)
treea1fedae8a2d0c0a163488b66e86004334157075a
parentb1c28a1f7ef3bd3616df6ddcdb503f4b480a8df6 (diff)
Fix PR4923.
Fix error in _mm_set_pd/_mm_setr_pd and add _mm_set_epi64x/_mm_set1_epi64x. Patch by Laurent Morichetti! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82228 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Headers/emmintrin.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/lib/Headers/emmintrin.h b/lib/Headers/emmintrin.h
index 9db6951292..b83ed5fe02 100644
--- a/lib/Headers/emmintrin.h
+++ b/lib/Headers/emmintrin.h
@@ -500,13 +500,13 @@ _mm_set1_pd(double w)
static inline __m128d __attribute__((__always_inline__, __nodebug__))
_mm_set_pd(double w, double x)
{
- return (__m128d){ w, x };
+ return (__m128d){ x, w };
}
static inline __m128d __attribute__((__always_inline__, __nodebug__))
_mm_setr_pd(double w, double x)
{
- return (__m128d){ x, w };
+ return (__m128d){ w, x };
}
static inline __m128d __attribute__((__always_inline__, __nodebug__))
@@ -1024,6 +1024,12 @@ _mm_loadl_epi64(__m128i const *p)
}
static inline __m128i __attribute__((__always_inline__, __nodebug__))
+_mm_set_epi64x(long long q1, long long q0)
+{
+ return (__m128i){ q0, q1 };
+}
+
+static inline __m128i __attribute__((__always_inline__, __nodebug__))
_mm_set_epi64(__m64 q1, __m64 q0)
{
return (__m128i){ (long long)q0, (long long)q1 };
@@ -1048,6 +1054,12 @@ _mm_set_epi8(char b15, char b14, char b13, char b12, char b11, char b10, char b9
}
static inline __m128i __attribute__((__always_inline__, __nodebug__))
+_mm_set1_epi64x(long long q)
+{
+ return (__m128i){ q, q };
+}
+
+static inline __m128i __attribute__((__always_inline__, __nodebug__))
_mm_set1_epi64(__m64 q)
{
return (__m128i){ (long long)q, (long long)q };