From c7d0d8b60d5b9dbe256bc79f738b766b03b97661 Mon Sep 17 00:00:00 2001 From: Anders Carlsson Date: Mon, 22 Dec 2008 02:51:35 +0000 Subject: [PATCH] Add set intrinsics llvm-svn: 61321 --- clang/lib/Headers/xmmintrin.devel.h | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/clang/lib/Headers/xmmintrin.devel.h b/clang/lib/Headers/xmmintrin.devel.h index acb6e279be57..828f0dd6a590 100644 --- a/clang/lib/Headers/xmmintrin.devel.h +++ b/clang/lib/Headers/xmmintrin.devel.h @@ -455,6 +455,31 @@ static inline __m128 __attribute__((__always_inline__)) _mm_loadr_ps(float *p) return __builtin_shufflevector(a, a, 3, 2, 1, 0); } +static inline __m128 __attribute__((__always_inline__)) _mm_set_ss(float w) +{ + return (__m128){ w, 0, 0, 0 }; +} + +static inline __m128 __attribute__((__always_inline__)) _mm_set1_ps(float w) +{ + return (__m128){ w, w, w, w }; +} + +static inline __m128 __attribute__((__always_inline__)) _mm_set_ps(float z, float y, float x, float w) +{ + return (__m128){ w, x, y, z }; +} + +static inline __m128 __attribute__((__always_inline__)) _mm_setr_ps(float z, float y, float x, float w) +{ + return (__m128){ z, y, x, w }; +} + +static inline __m128 __attribute__((__always__inline__)) _mm_setzero_ps(void) +{ + return (__m128){ 0, 0, 0, 0 }; +} + #endif /* __SSE__ */ #endif /* __XMMINTRIN_H */