ReactOS 0.4.15-dev-7958-gcd0bb1a
Iu16vec8 Class Reference

#include <dvec.h>

Inheritance diagram for Iu16vec8:
Collaboration diagram for Iu16vec8:

Public Member Functions

 Iu16vec8 ()
 
 Iu16vec8 (__m128i mm)
 
 Iu16vec8 (unsigned short s7, unsigned short s6, unsigned short s5, unsigned short s4, unsigned short s3, unsigned short s2, unsigned short s1, unsigned short s0)
 
Iu16vec8operator= (const M128 &a)
 
Iu16vec8operator&= (const M128 &a)
 
Iu16vec8operator|= (const M128 &a)
 
Iu16vec8operator^= (const M128 &a)
 
Iu16vec8operator+= (const I16vec8 &a)
 
Iu16vec8operator-= (const I16vec8 &a)
 
Iu16vec8operator*= (const I16vec8 &a)
 
Iu16vec8 operator<< (const M128 &a)
 
Iu16vec8 operator<< (int count)
 
Iu16vec8operator<<= (const M128 &a)
 
Iu16vec8operator<<= (int count)
 
Iu16vec8 operator>> (const M128 &a)
 
Iu16vec8 operator>> (int count)
 
Iu16vec8operator>>= (const M128 &a)
 
Iu16vec8operator>>= (int count)
 
const unsigned shortoperator[] (int i) const
 
unsigned shortoperator[] (int i)
 
- Public Member Functions inherited from I16vec8
 I16vec8 ()
 
 I16vec8 (__m128i mm)
 
I16vec8operator= (const M128 &a)
 
I16vec8operator&= (const M128 &a)
 
I16vec8operator|= (const M128 &a)
 
I16vec8operator^= (const M128 &a)
 
I16vec8operator+= (const I16vec8 &a)
 
I16vec8operator-= (const I16vec8 &a)
 
I16vec8operator*= (const I16vec8 &a)
 
I16vec8 operator<< (const M128 &a)
 
I16vec8 operator<< (int count)
 
I16vec8operator<<= (const M128 &a)
 
I16vec8operator<<= (int count)
 
- 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
 

Detailed Description

Definition at line 412 of file dvec.h.

Constructor & Destructor Documentation

◆ Iu16vec8() [1/3]

Iu16vec8::Iu16vec8 ( )
inline

◆ Iu16vec8() [2/3]

Iu16vec8::Iu16vec8 ( __m128i  mm)
inline

Definition at line 416 of file dvec.h.

416: I16vec8(mm) { }
I16vec8()
Definition: dvec.h:299

◆ Iu16vec8() [3/3]

Iu16vec8::Iu16vec8 ( unsigned short  s7,
unsigned short  s6,
unsigned short  s5,
unsigned short  s4,
unsigned short  s3,
unsigned short  s2,
unsigned short  s1,
unsigned short  s0 
)
inline

Definition at line 417 of file dvec.h.

418 {
419 _MM_8UW(0,vec) = s0;
420 _MM_8UW(1,vec) = s1;
421 _MM_8UW(2,vec) = s2;
422 _MM_8UW(3,vec) = s3;
423 _MM_8UW(4,vec) = s4;
424 _MM_8UW(5,vec) = s5;
425 _MM_8UW(6,vec) = s6;
426 _MM_8UW(7,vec) = s7;
427 }
__m128i vec
Definition: dvec.h:61
#define _MM_8UW(element, vector)
Definition: dvec.h:44
struct S1 s1
struct S2 s2

Member Function Documentation

◆ operator&=()

Iu16vec8 & Iu16vec8::operator&= ( const M128 a)
inline

Definition at line 431 of file dvec.h.

431{ return *this = (Iu16vec8) _mm_and_si128(vec,a); }
Iu16vec8()
Definition: dvec.h:415
__m128i _mm_and_si128(__m128i a, __m128i b)
Definition: emmintrin.h:1321
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ operator*=()

Iu16vec8 & Iu16vec8::operator*= ( const I16vec8 a)
inline

Definition at line 437 of file dvec.h.

437{ return *this = (Iu16vec8) _mm_mullo_epi16(vec,a); }
__m128i _mm_mullo_epi16(__m128i a, __m128i b)
Definition: emmintrin.h:1240

◆ operator+=()

Iu16vec8 & Iu16vec8::operator+= ( const I16vec8 a)
inline

Definition at line 435 of file dvec.h.

435{ return *this = (Iu16vec8) _mm_add_epi16(vec,a); }
__m128i _mm_add_epi16(__m128i a, __m128i b)
Definition: emmintrin.h:1123

◆ operator-=()

Iu16vec8 & Iu16vec8::operator-= ( const I16vec8 a)
inline

Definition at line 436 of file dvec.h.

436{ return *this = (Iu16vec8) _mm_sub_epi16(vec,a); }
__m128i _mm_sub_epi16(__m128i a, __m128i b)
Definition: emmintrin.h:1265

◆ operator<<() [1/2]

Iu16vec8 Iu16vec8::operator<< ( const M128 a)
inline

Definition at line 439 of file dvec.h.

439{ return _mm_sll_epi16(vec,a); }
__m128i _mm_sll_epi16(__m128i a, __m128i count)
Definition: emmintrin.h:1349

◆ operator<<() [2/2]

Iu16vec8 Iu16vec8::operator<< ( int  count)
inline

Definition at line 440 of file dvec.h.

440{ return _mm_slli_epi16(vec,count); }
__m128i _mm_slli_epi16(__m128i a, int count)
Definition: emmintrin.h:1344
GLuint GLuint GLsizei count
Definition: gl.h:1545

◆ operator<<=() [1/2]

Iu16vec8 & Iu16vec8::operator<<= ( const M128 a)
inline

Definition at line 441 of file dvec.h.

441{ return *this = (Iu16vec8)_mm_sll_epi16(vec,a); }

◆ operator<<=() [2/2]

Iu16vec8 & Iu16vec8::operator<<= ( int  count)
inline

Definition at line 442 of file dvec.h.

442{ return *this = (Iu16vec8)_mm_slli_epi16(vec,count); }

◆ operator=()

Iu16vec8 & Iu16vec8::operator= ( const M128 a)
inline

Definition at line 429 of file dvec.h.

429{ return *this = (Iu16vec8) a; }

◆ operator>>() [1/2]

Iu16vec8 Iu16vec8::operator>> ( const M128 a)
inline

Definition at line 443 of file dvec.h.

443{ return _mm_srl_epi16(vec,a); }
__m128i _mm_srl_epi16(__m128i a, __m128i count)
Definition: emmintrin.h:1402

◆ operator>>() [2/2]

Iu16vec8 Iu16vec8::operator>> ( int  count)
inline

Definition at line 444 of file dvec.h.

444{ return _mm_srli_epi16(vec,count); }
__m128i _mm_srli_epi16(__m128i a, int count)
Definition: emmintrin.h:1397

◆ operator>>=() [1/2]

Iu16vec8 & Iu16vec8::operator>>= ( const M128 a)
inline

Definition at line 445 of file dvec.h.

445{ return *this = (Iu16vec8) _mm_srl_epi16(vec,a); }

◆ operator>>=() [2/2]

Iu16vec8 & Iu16vec8::operator>>= ( int  count)
inline

Definition at line 446 of file dvec.h.

446{ return *this = (Iu16vec8) _mm_srli_epi16(vec,count); }

◆ operator[]() [1/2]

unsigned short & Iu16vec8::operator[] ( int  i)
inline

Definition at line 470 of file dvec.h.

471 {
472 assert(static_cast<unsigned int>(i) < 8);
473 return _MM_8UW(i,vec);
474 }
#define assert(x)
Definition: debug.h:53
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248

◆ operator[]() [2/2]

const unsigned short & Iu16vec8::operator[] ( int  i) const
inline

Definition at line 464 of file dvec.h.

465 {
466 assert(static_cast<unsigned int>(i) < 8);
467 return _MM_8UW(i,vec);
468 }

◆ operator^=()

Iu16vec8 & Iu16vec8::operator^= ( const M128 a)
inline

Definition at line 433 of file dvec.h.

433{ return *this = (Iu16vec8) _mm_xor_si128(vec,a); }
__m128i _mm_xor_si128(__m128i a, __m128i b)
Definition: emmintrin.h:1336

◆ operator|=()

Iu16vec8 & Iu16vec8::operator|= ( const M128 a)
inline

Definition at line 432 of file dvec.h.

432{ return *this = (Iu16vec8) _mm_or_si128(vec,a); }
__m128i _mm_or_si128(__m128i a, __m128i b)
Definition: emmintrin.h:1331

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