STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | List of all members
I64vec2 Class Reference

#include <dvec.h>

Inheritance diagram for I64vec2:
M128

Public Member Functions

 I64vec2 ()
 
 I64vec2 (__m128i mm)
 
 I64vec2 (__m64 q1, __m64 q0)
 
I64vec2operator= (const M128 &a)
 
I64vec2operator&= (const M128 &a)
 
I64vec2operator|= (const M128 &a)
 
I64vec2operator^= (const M128 &a)
 
I64vec2operator+= (const I64vec2 &a)
 
I64vec2operator-= (const I64vec2 &a)
 
I64vec2 operator<< (const I64vec2 &a)
 
I64vec2 operator<< (int count)
 
I64vec2operator<<= (const I64vec2 &a)
 
I64vec2operator<<= (int count)
 
I64vec2 operator>> (const I64vec2 &a)
 
I64vec2 operator>> (int count)
 
I64vec2operator>>= (const I64vec2 &a)
 
I64vec2operator>>= (int count)
 
const __int64 & operator[] (int i) const
 
__int64 & operator[] (int i)
 
- Public Member Functions inherited from M128
 M128 ()
 
 M128 (__m128i mm)
 
 operator __m128i () const
 
M128operator&= (const M128 &a)
 
M128operator|= (const M128 &a)
 
M128operator^= (const M128 &a)
 

Additional Inherited Members

- Protected Attributes inherited from M128
__m128i vec
 

Constructor & Destructor Documentation

I64vec2::I64vec2 ( )
inline
175 { }
I64vec2::I64vec2 ( __m128i  mm)
inline
176 : M128(mm) { }
M128()
Definition: dvec.h:134
I64vec2::I64vec2 ( __m64  q1,
__m64  q0 
)
inline
179  {
180  _MM_2QW(0,vec) = *(__int64*)&q0;
181  _MM_2QW(1,vec) = *(__int64*)&q1;
182  }
#define _MM_2QW(element, vector)
Definition: dvec.h:99
__m128i vec
Definition: dvec.h:131

Member Function Documentation

I64vec2& I64vec2::operator&= ( const M128 a)
inline
188 { return *this = (I64vec2) _mm_and_si128(vec,a); }
I64vec2()
Definition: dvec.h:175
__m128i vec
Definition: dvec.h:131
__m128i _mm_and_si128(__m128i _A, __m128i _B)
I64vec2& I64vec2::operator+= ( const I64vec2 a)
inline
193 { return *this = (I64vec2) _mm_add_epi64(vec,a); }
__m128i _mm_add_epi64(__m128i _A, __m128i _B)
I64vec2()
Definition: dvec.h:175
__m128i vec
Definition: dvec.h:131
I64vec2& I64vec2::operator-= ( const I64vec2 a)
inline
194 { return *this = (I64vec2) _mm_sub_epi64(vec,a); }
I64vec2()
Definition: dvec.h:175
__m128i vec
Definition: dvec.h:131
__m128i _mm_sub_epi64(__m128i _A, __m128i _B)
I64vec2 I64vec2::operator<< ( const I64vec2 a)
inline
197 { return _mm_sll_epi64(vec,a); }
__m128i _mm_sll_epi64(__m128i _A, __m128i _Count)
__m128i vec
Definition: dvec.h:131
I64vec2 I64vec2::operator<< ( int  count)
inline
198 { return _mm_slli_epi64(vec,count); }
iterator_traits< _InIt >::difference_type count(_InIt _First, _InIt _Last, const _Ty &_Val)
Definition: xutility:3086
__m128i _mm_slli_epi64(__m128i _A, int _Count)
__m128i vec
Definition: dvec.h:131
I64vec2& I64vec2::operator<<= ( const I64vec2 a)
inline
199 { return *this = (I64vec2) _mm_sll_epi64(vec,a); }
I64vec2()
Definition: dvec.h:175
__m128i _mm_sll_epi64(__m128i _A, __m128i _Count)
__m128i vec
Definition: dvec.h:131
I64vec2& I64vec2::operator<<= ( int  count)
inline
200 { return *this = (I64vec2) _mm_slli_epi64(vec,count); }
iterator_traits< _InIt >::difference_type count(_InIt _First, _InIt _Last, const _Ty &_Val)
Definition: xutility:3086
I64vec2()
Definition: dvec.h:175
__m128i _mm_slli_epi64(__m128i _A, int _Count)
__m128i vec
Definition: dvec.h:131
I64vec2& I64vec2::operator= ( const M128 a)
inline
185 { return *this = (I64vec2) a; }
I64vec2()
Definition: dvec.h:175
I64vec2 I64vec2::operator>> ( const I64vec2 a)
inline
201 { return _mm_srl_epi64(vec,a); }
__m128i vec
Definition: dvec.h:131
__m128i _mm_srl_epi64(__m128i _A, __m128i _Count)
I64vec2 I64vec2::operator>> ( int  count)
inline
202 { return _mm_srli_epi64(vec,count); }
iterator_traits< _InIt >::difference_type count(_InIt _First, _InIt _Last, const _Ty &_Val)
Definition: xutility:3086
__m128i _mm_srli_epi64(__m128i _A, int _Count)
__m128i vec
Definition: dvec.h:131
I64vec2& I64vec2::operator>>= ( const I64vec2 a)
inline
203 { return *this = (I64vec2) _mm_srl_epi64(vec,a); }
I64vec2()
Definition: dvec.h:175
__m128i vec
Definition: dvec.h:131
__m128i _mm_srl_epi64(__m128i _A, __m128i _Count)
I64vec2& I64vec2::operator>>= ( int  count)
inline
204 { return *this = (I64vec2) _mm_srli_epi64(vec,count); }
iterator_traits< _InIt >::difference_type count(_InIt _First, _InIt _Last, const _Ty &_Val)
Definition: xutility:3086
I64vec2()
Definition: dvec.h:175
__m128i _mm_srli_epi64(__m128i _A, int _Count)
__m128i vec
Definition: dvec.h:131
const __int64& I64vec2::operator[] ( int  i) const
inline
208  {
209  _VEC_ASSERT(static_cast<unsigned int>(i) < 2); /* Only 2 elements to access */
210  return _MM_2QW(i,vec);
211  }
#define _MM_2QW(element, vector)
Definition: dvec.h:99
#define _VEC_ASSERT(_Expression)
Definition: dvec.h:53
int i[4]
Definition: dvec.h:70
__m128i vec
Definition: dvec.h:131
__int64& I64vec2::operator[] ( int  i)
inline
215  {
216  _VEC_ASSERT(static_cast<unsigned int>(i) < 2); /* Only 2 elements to access */
217  return _MM_2QW(i,vec);
218  }
#define _MM_2QW(element, vector)
Definition: dvec.h:99
#define _VEC_ASSERT(_Expression)
Definition: dvec.h:53
int i[4]
Definition: dvec.h:70
__m128i vec
Definition: dvec.h:131
I64vec2& I64vec2::operator^= ( const M128 a)
inline
190 { return *this = (I64vec2) _mm_xor_si128(vec,a); }
__m128i _mm_xor_si128(__m128i _A, __m128i _B)
I64vec2()
Definition: dvec.h:175
__m128i vec
Definition: dvec.h:131
I64vec2& I64vec2::operator|= ( const M128 a)
inline
189 { return *this = (I64vec2) _mm_or_si128(vec,a); }
I64vec2()
Definition: dvec.h:175
__m128i _mm_or_si128(__m128i _A, __m128i _B)
__m128i vec
Definition: dvec.h:131

The documentation for this class was generated from the following file: