Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mpc-hc/mpc-hc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXhmikosR <xhmikosr@users.sourceforge.net>2010-05-17 16:51:03 +0400
committerXhmikosR <xhmikosr@users.sourceforge.net>2010-05-17 16:51:03 +0400
commit651a19b2c72d75e3e0e486e5fe62308081370b9b (patch)
treeffc33bdc7bfc049374649cb32b78d727fe995b5d /src/DSUtil/simd.h
parent9a03a08dc6198257815103631b313ffd2ea9e2fa (diff)
cleanup
git-svn-id: https://mpc-hc.svn.sourceforge.net/svnroot/mpc-hc/trunk@1891 10f7b99b-c216-0410-bff0-8a66a9350fd8
Diffstat (limited to 'src/DSUtil/simd.h')
-rw-r--r--src/DSUtil/simd.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/DSUtil/simd.h b/src/DSUtil/simd.h
index 0d6d68a29..a7c8a5bd4 100644
--- a/src/DSUtil/simd.h
+++ b/src/DSUtil/simd.h
@@ -70,6 +70,7 @@ static __forceinline void cvtps2pi(__m64 &dst,const __m128 &src) {dst=_mm_cvtps_
static __forceinline void cmpnltps(__m128 &dst,const __m128 &src) {dst=_mm_cmpnlt_ps(dst,src);}
static __forceinline void cvtpi2ps(__m128 &dst,const __m64 &src) {dst=_mm_cvtpi32_ps(dst,src);}
+#ifdef __SSE2__
static __forceinline void movq(__m128i &dst,const __m128i &src) {dst=src;}
static __forceinline void movq(__m128i &dst,const void *src) {dst=*(__m128i*)src;}
static __forceinline void movq(const void *dst,__m128i &src) {*(__m128i*)dst=src;}
@@ -132,6 +133,8 @@ static __forceinline void movhpd(void *dst,const __m128d &src) {_mm_storeh_pd((d
static __forceinline void movlhps(__m128i &dst,const __m128i &src) {(__m128&)dst=_mm_movelh_ps((__m128&)dst,(const __m128&)src);}
#endif
+#endif //__SSE2__
+
//======================================= MMX ======================================
#define MMX_INSTRUCTIONS \
static __forceinline __m setzero_si64(void) {return _mm_setzero_si64();} \
@@ -495,6 +498,7 @@ static __forceinline void memadd(unsigned char *dst,const unsigned char *src,uns
}
//====================================== SSE2 ======================================
+#ifdef __SSE2__
struct Tsse2
{
typedef __m128i __m;
@@ -552,6 +556,7 @@ struct Tsse2
static __forceinline void pavgb(__m &mmr1,const void *mmr2) {mmr1=_mm_avg_epu8(mmr1,*(__m*)mmr2);}
static __forceinline void sfence(void) {_mm_sfence();}
};
+#endif //__SSE2__
template<class _mm> static __forceinline typename _mm::__m abs_16(const typename _mm::__m &mm0)
{