Bullet Collision Detection & Physics Library
Classes | Namespaces | Macros | Typedefs | Functions
sse/vectormath_aos.h File Reference
#include <math.h>
#include <xmmintrin.h>
#include <emmintrin.h>
#include <assert.h>
#include "vecidx_aos.h"
#include "floatInVec.h"
#include "boolInVec.h"
#include "vec_aos.h"
#include "quat_aos.h"
#include "mat_aos.h"
Include dependency graph for sse/vectormath_aos.h:

Go to the source code of this file.

Classes

union  SSEFloat
 
class  Vectormath::Aos::Vector3
 
class  Vectormath::Aos::Vector4
 
class  Vectormath::Aos::Point3
 
class  Vectormath::Aos::Quat
 
class  Vectormath::Aos::Matrix3
 
class  Vectormath::Aos::Matrix4
 
class  Vectormath::Aos::Transform3
 

Namespaces

 Vectormath
 
 Vectormath::Aos
 

Macros

#define Vector3Ref   Vector3&
 
#define QuatRef   Quat&
 
#define Matrix3Ref   Matrix3&
 
#define VM_ATTRIBUTE_ALIGNED_CLASS16(a)   a __attribute__ ((aligned (16)))
 
#define VM_ATTRIBUTE_ALIGN16   __attribute__ ((aligned (16)))
 
#define VECTORMATH_FORCE_INLINE   inline __attribute__ ((always_inline))
 
#define vec_splat(x, e)   _mm_shuffle_ps(x, x, _MM_SHUFFLE(e,e,e,e))
 
#define _mm_ror_ps(vec, i)   (((i)%4) ? (_mm_shuffle_ps(vec,vec, _MM_SHUFFLE((unsigned char)(i+3)%4,(unsigned char)(i+2)%4,(unsigned char)(i+1)%4,(unsigned char)(i+0)%4))) : (vec))
 
#define _mm_rol_ps(vec, i)   (((i)%4) ? (_mm_shuffle_ps(vec,vec, _MM_SHUFFLE((unsigned char)(7-i)%4,(unsigned char)(6-i)%4,(unsigned char)(5-i)%4,(unsigned char)(4-i)%4))) : (vec))
 
#define vec_sld(vec, vec2, x)   _mm_ror_ps(vec, ((x)/4))
 
#define _mm_abs_ps(vec)   _mm_andnot_ps(_MASKSIGN_,vec)
 
#define _mm_neg_ps(vec)   _mm_xor_ps(_MASKSIGN_,vec)
 
#define vec_madd(a, b, c)   _mm_add_ps(c, _mm_mul_ps(a, b) )
 
#define vec_nmsub(a, b, c)   _mm_sub_ps( c, _mm_mul_ps( a, b ) )
 
#define vec_sub(a, b)   _mm_sub_ps( a, b )
 
#define vec_add(a, b)   _mm_add_ps( a, b )
 
#define vec_mul(a, b)   _mm_mul_ps( a, b )
 
#define vec_xor(a, b)   _mm_xor_ps( a, b )
 
#define vec_and(a, b)   _mm_and_ps( a, b )
 
#define vec_cmpeq(a, b)   _mm_cmpeq_ps( a, b )
 
#define vec_cmpgt(a, b)   _mm_cmpgt_ps( a, b )
 
#define vec_mergeh(a, b)   _mm_unpacklo_ps( a, b )
 
#define vec_mergel(a, b)   _mm_unpackhi_ps( a, b )
 
#define vec_andc(a, b)   _mm_andnot_ps( b, a )
 
#define sqrtf4(x)   _mm_sqrt_ps( x )
 
#define rsqrtf4(x)   _mm_rsqrt_ps( x )
 
#define recipf4(x)   _mm_rcp_ps( x )
 
#define negatef4(x)   _mm_sub_ps( _mm_setzero_ps(), x )
 
#define _half4   _mm_setr_ps(.5f,.5f,.5f,.5f)
 
#define _three   _mm_setr_ps(3.f,3.f,3.f,3.f)
 
#define _SINCOS_CC0   -0.0013602249f
 
#define _SINCOS_CC1   0.0416566950f
 
#define _SINCOS_CC2   -0.4999990225f
 
#define _SINCOS_SC0   -0.0001950727f
 
#define _SINCOS_SC1   0.0083320758f
 
#define _SINCOS_SC2   -0.1666665247f
 
#define _SINCOS_KC1   1.57079625129f
 
#define _SINCOS_KC2   7.54978995489e-8f
 

Typedefs

typedef __m128 vec_float4
 
typedef __m128 vec_uint4
 
typedef __m128 vec_int4
 
typedef __m128i vec_uchar16
 
typedef __m128i vec_ushort8
 

Functions

static __m128 vec_sel (__m128 a, __m128 b, __m128 mask)
 
static __m128 vec_sel (__m128 a, __m128 b, const unsigned int *_mask)
 
static __m128 vec_sel (__m128 a, __m128 b, unsigned int _mask)
 
static __m128 toM128 (unsigned int x)
 
static __m128 fabsf4 (__m128 x)
 
static __m128 vec_cts (__m128 x, int a)
 
static __m128 vec_ctf (__m128 x, int a)
 
static __m128 newtonrapson_rsqrt4 (const __m128 v)
 
static __m128 acosf4 (__m128 x)
 
static __m128 sinf4 (vec_float4 x)
 
static void sincosf4 (vec_float4 x, vec_float4 *s, vec_float4 *c)
 
const Vector3 Vectormath::Aos::operator* (float scalar, const Vector3 &vec)
 
const Vector3 Vectormath::Aos::operator* (const floatInVec &scalar, const Vector3 &vec)
 
const Vector3 Vectormath::Aos::mulPerElem (const Vector3 &vec0, const Vector3 &vec1)
 
const Vector3 Vectormath::Aos::divPerElem (const Vector3 &vec0, const Vector3 &vec1)
 
const Vector3 Vectormath::Aos::recipPerElem (const Vector3 &vec)
 
const Vector3 Vectormath::Aos::absPerElem (const Vector3 &vec)
 
const Vector3 Vectormath::Aos::copySignPerElem (const Vector3 &vec0, const Vector3 &vec1)
 
const Vector3 Vectormath::Aos::maxPerElem (const Vector3 &vec0, const Vector3 &vec1)
 
const Vector3 Vectormath::Aos::minPerElem (const Vector3 &vec0, const Vector3 &vec1)
 
float Vectormath::Aos::maxElem (const Vector3 &vec)
 
float Vectormath::Aos::minElem (const Vector3 &vec)
 
float Vectormath::Aos::sum (const Vector3 &vec)
 
float Vectormath::Aos::dot (const Vector3 &vec0, const Vector3 &vec1)
 
float Vectormath::Aos::lengthSqr (const Vector3 &vec)
 
float Vectormath::Aos::length (const Vector3 &vec)
 
const Vector3 Vectormath::Aos::normalize (const Vector3 &vec)
 
const Vector3 Vectormath::Aos::cross (const Vector3 &vec0, const Vector3 &vec1)
 
const Matrix3 Vectormath::Aos::outer (const Vector3 &tfrm0, const Vector3 &tfrm1)
 
const Vector3 Vectormath::Aos::rowMul (const Vector3 &vec, const Matrix3 &mat)
 
const Matrix3 Vectormath::Aos::crossMatrix (const Vector3 &vec)
 
const Matrix3 Vectormath::Aos::crossMatrixMul (const Vector3 &vec, const Matrix3 &mat)
 
const Vector3 Vectormath::Aos::lerp (float t, const Vector3 &vec0, const Vector3 &vec1)
 
const Vector3 Vectormath::Aos::lerp (const floatInVec &t, const Vector3 &vec0, const Vector3 &vec1)
 
const Vector3 Vectormath::Aos::slerp (float t, const Vector3 &unitVec0, const Vector3 &unitVec1)
 
const Vector3 Vectormath::Aos::slerp (const floatInVec &t, const Vector3 &unitVec0, const Vector3 &unitVec1)
 
const Vector3 Vectormath::Aos::select (const Vector3 &vec0, const Vector3 &vec1, bool select1)
 
const Vector3 Vectormath::Aos::select (const Vector3 &vec0, const Vector3 &vec1, const boolInVec &select1)
 
void Vectormath::Aos::storeXYZ (const Vector3 &vec, __m128 *quad)
 
void Vectormath::Aos::loadXYZArray (Vector3 &vec0, Vector3 &vec1, Vector3 &vec2, Vector3 &vec3, const __m128 *threeQuads)
 
void Vectormath::Aos::storeXYZArray (const Vector3 &vec0, const Vector3 &vec1, const Vector3 &vec2, const Vector3 &vec3, __m128 *threeQuads)
 
void Vectormath::Aos::storeHalfFloats (const Vector3 &vec0, const Vector3 &vec1, const Vector3 &vec2, const Vector3 &vec3, const Vector3 &vec4, const Vector3 &vec5, const Vector3 &vec6, const Vector3 &vec7, vec_ushort8 *threeQuads)
 
const Vector4 Vectormath::Aos::operator* (float scalar, const Vector4 &vec)
 
const Vector4 Vectormath::Aos::operator* (const floatInVec &scalar, const Vector4 &vec)
 
const Vector4 Vectormath::Aos::mulPerElem (const Vector4 &vec0, const Vector4 &vec1)
 
const Vector4 Vectormath::Aos::divPerElem (const Vector4 &vec0, const Vector4 &vec1)
 
const Vector4 Vectormath::Aos::recipPerElem (const Vector4 &vec)
 
const Vector4 Vectormath::Aos::absPerElem (const Vector4 &vec)
 
const Vector4 Vectormath::Aos::copySignPerElem (const Vector4 &vec0, const Vector4 &vec1)
 
const Vector4 Vectormath::Aos::maxPerElem (const Vector4 &vec0, const Vector4 &vec1)
 
const Vector4 Vectormath::Aos::minPerElem (const Vector4 &vec0, const Vector4 &vec1)
 
float Vectormath::Aos::maxElem (const Vector4 &vec)
 
float Vectormath::Aos::minElem (const Vector4 &vec)
 
float Vectormath::Aos::sum (const Vector4 &vec)
 
float Vectormath::Aos::dot (const Vector4 &vec0, const Vector4 &vec1)
 
float Vectormath::Aos::lengthSqr (const Vector4 &vec)
 
float Vectormath::Aos::length (const Vector4 &vec)
 
const Vector4 Vectormath::Aos::normalize (const Vector4 &vec)
 
const Matrix4 Vectormath::Aos::outer (const Vector4 &tfrm0, const Vector4 &tfrm1)
 
const Vector4 Vectormath::Aos::lerp (float t, const Vector4 &vec0, const Vector4 &vec1)
 
const Vector4 Vectormath::Aos::lerp (const floatInVec &t, const Vector4 &vec0, const Vector4 &vec1)
 
const Vector4 Vectormath::Aos::slerp (float t, const Vector4 &unitVec0, const Vector4 &unitVec1)
 
const Vector4 Vectormath::Aos::slerp (const floatInVec &t, const Vector4 &unitVec0, const Vector4 &unitVec1)
 
const Vector4 Vectormath::Aos::select (const Vector4 &vec0, const Vector4 &vec1, bool select1)
 
const Vector4 Vectormath::Aos::select (const Vector4 &vec0, const Vector4 &vec1, const boolInVec &select1)
 
void Vectormath::Aos::storeHalfFloats (const Vector4 &vec0, const Vector4 &vec1, const Vector4 &vec2, const Vector4 &vec3, vec_ushort8 *twoQuads)
 
const Point3 Vectormath::Aos::mulPerElem (const Point3 &pnt0, const Point3 &pnt1)
 
const Point3 Vectormath::Aos::divPerElem (const Point3 &pnt0, const Point3 &pnt1)
 
const Point3 Vectormath::Aos::recipPerElem (const Point3 &pnt)
 
const Point3 Vectormath::Aos::absPerElem (const Point3 &pnt)
 
const Point3 Vectormath::Aos::copySignPerElem (const Point3 &pnt0, const Point3 &pnt1)
 
const Point3 Vectormath::Aos::maxPerElem (const Point3 &pnt0, const Point3 &pnt1)
 
const Point3 Vectormath::Aos::minPerElem (const Point3 &pnt0, const Point3 &pnt1)
 
float Vectormath::Aos::maxElem (const Point3 &pnt)
 
float Vectormath::Aos::minElem (const Point3 &pnt)
 
float Vectormath::Aos::sum (const Point3 &pnt)
 
const Point3 Vectormath::Aos::scale (const Point3 &pnt, float scaleVal)
 
const Point3 Vectormath::Aos::scale (const Point3 &pnt, const floatInVec &scaleVal)
 
const Point3 Vectormath::Aos::scale (const Point3 &pnt, const Vector3 &scaleVec)
 
float Vectormath::Aos::projection (const Point3 &pnt, const Vector3 &unitVec)
 
float Vectormath::Aos::distSqrFromOrigin (const Point3 &pnt)
 
float Vectormath::Aos::distFromOrigin (const Point3 &pnt)
 
float Vectormath::Aos::distSqr (const Point3 &pnt0, const Point3 &pnt1)
 
float Vectormath::Aos::dist (const Point3 &pnt0, const Point3 &pnt1)
 
const Point3 Vectormath::Aos::lerp (float t, const Point3 &pnt0, const Point3 &pnt1)
 
const Point3 Vectormath::Aos::lerp (const floatInVec &t, const Point3 &pnt0, const Point3 &pnt1)
 
const Point3 Vectormath::Aos::select (const Point3 &pnt0, const Point3 &pnt1, bool select1)
 
const Point3 Vectormath::Aos::select (const Point3 &pnt0, const Point3 &pnt1, const boolInVec &select1)
 
void Vectormath::Aos::storeXYZ (const Point3 &pnt, __m128 *quad)
 
void Vectormath::Aos::loadXYZArray (Point3 &pnt0, Point3 &pnt1, Point3 &pnt2, Point3 &pnt3, const __m128 *threeQuads)
 
void Vectormath::Aos::storeXYZArray (const Point3 &pnt0, const Point3 &pnt1, const Point3 &pnt2, const Point3 &pnt3, __m128 *threeQuads)
 
void Vectormath::Aos::storeHalfFloats (const Point3 &pnt0, const Point3 &pnt1, const Point3 &pnt2, const Point3 &pnt3, const Point3 &pnt4, const Point3 &pnt5, const Point3 &pnt6, const Point3 &pnt7, vec_ushort8 *threeQuads)
 
const Quat Vectormath::Aos::operator* (float scalar, const Quat &quat)
 
const Quat Vectormath::Aos::operator* (const floatInVec &scalar, const Quat &quat)
 
const Quat Vectormath::Aos::conj (const Quat &quat)
 
const Vector3 Vectormath::Aos::rotate (const Quat &quat, const Vector3 &vec)
 
float Vectormath::Aos::dot (const Quat &quat0, const Quat &quat1)
 
float Vectormath::Aos::norm (const Quat &quat)
 
float Vectormath::Aos::length (const Quat &quat)
 
const Quat Vectormath::Aos::normalize (const Quat &quat)
 
const Quat Vectormath::Aos::lerp (float t, const Quat &quat0, const Quat &quat1)
 
const Quat Vectormath::Aos::lerp (const floatInVec &t, const Quat &quat0, const Quat &quat1)
 
const Quat Vectormath::Aos::slerp (float t, const Quat &unitQuat0, const Quat &unitQuat1)
 
const Quat Vectormath::Aos::slerp (const floatInVec &t, const Quat &unitQuat0, const Quat &unitQuat1)
 
const Quat Vectormath::Aos::squad (float t, const Quat &unitQuat0, const Quat &unitQuat1, const Quat &unitQuat2, const Quat &unitQuat3)
 
const Quat Vectormath::Aos::squad (const floatInVec &t, const Quat &unitQuat0, const Quat &unitQuat1, const Quat &unitQuat2, const Quat &unitQuat3)
 
const Quat Vectormath::Aos::select (const Quat &quat0, const Quat &quat1, bool select1)
 
const Quat Vectormath::Aos::select (const Quat &quat0, const Quat &quat1, const boolInVec &select1)
 
const Matrix3 Vectormath::Aos::operator* (float scalar, const Matrix3 &mat)
 
const Matrix3 Vectormath::Aos::operator* (const floatInVec &scalar, const Matrix3 &mat)
 
const Matrix3 Vectormath::Aos::appendScale (const Matrix3 &mat, const Vector3 &scaleVec)
 
const Matrix3 Vectormath::Aos::prependScale (const Vector3 &scaleVec, const Matrix3 &mat)
 
const Matrix3 Vectormath::Aos::mulPerElem (const Matrix3 &mat0, const Matrix3 &mat1)
 
const Matrix3 Vectormath::Aos::absPerElem (const Matrix3 &mat)
 
const Matrix3 Vectormath::Aos::transpose (const Matrix3 &mat)
 
const Matrix3 Vectormath::Aos::inverse (const Matrix3 &mat)
 
float Vectormath::Aos::determinant (const Matrix3 &mat)
 
const Matrix3 Vectormath::Aos::select (const Matrix3 &mat0, const Matrix3 &mat1, bool select1)
 
const Matrix3 Vectormath::Aos::select (const Matrix3 &mat0, const Matrix3 &mat1, const boolInVec &select1)
 
const Matrix4 Vectormath::Aos::operator* (float scalar, const Matrix4 &mat)
 
const Matrix4 Vectormath::Aos::operator* (const floatInVec &scalar, const Matrix4 &mat)
 
const Matrix4 Vectormath::Aos::appendScale (const Matrix4 &mat, const Vector3 &scaleVec)
 
const Matrix4 Vectormath::Aos::prependScale (const Vector3 &scaleVec, const Matrix4 &mat)
 
const Matrix4 Vectormath::Aos::mulPerElem (const Matrix4 &mat0, const Matrix4 &mat1)
 
const Matrix4 Vectormath::Aos::absPerElem (const Matrix4 &mat)
 
const Matrix4 Vectormath::Aos::transpose (const Matrix4 &mat)
 
const Matrix4 Vectormath::Aos::inverse (const Matrix4 &mat)
 
const Matrix4 Vectormath::Aos::affineInverse (const Matrix4 &mat)
 
const Matrix4 Vectormath::Aos::orthoInverse (const Matrix4 &mat)
 
float Vectormath::Aos::determinant (const Matrix4 &mat)
 
const Matrix4 Vectormath::Aos::select (const Matrix4 &mat0, const Matrix4 &mat1, bool select1)
 
const Matrix4 Vectormath::Aos::select (const Matrix4 &mat0, const Matrix4 &mat1, const boolInVec &select1)
 
const Transform3 Vectormath::Aos::appendScale (const Transform3 &tfrm, const Vector3 &scaleVec)
 
const Transform3 Vectormath::Aos::prependScale (const Vector3 &scaleVec, const Transform3 &tfrm)
 
const Transform3 Vectormath::Aos::mulPerElem (const Transform3 &tfrm0, const Transform3 &tfrm1)
 
const Transform3 Vectormath::Aos::absPerElem (const Transform3 &tfrm)
 
const Transform3 Vectormath::Aos::inverse (const Transform3 &tfrm)
 
const Transform3 Vectormath::Aos::orthoInverse (const Transform3 &tfrm)
 
const Transform3 Vectormath::Aos::select (const Transform3 &tfrm0, const Transform3 &tfrm1, bool select1)
 
const Transform3 Vectormath::Aos::select (const Transform3 &tfrm0, const Transform3 &tfrm1, const boolInVec &select1)
 

Macro Definition Documentation

#define _half4   _mm_setr_ps(.5f,.5f,.5f,.5f)
#define _mm_abs_ps (   vec)    _mm_andnot_ps(_MASKSIGN_,vec)

Definition at line 80 of file sse/vectormath_aos.h.

#define _mm_neg_ps (   vec)    _mm_xor_ps(_MASKSIGN_,vec)

Definition at line 81 of file sse/vectormath_aos.h.

#define _mm_rol_ps (   vec,
 
)    (((i)%4) ? (_mm_shuffle_ps(vec,vec, _MM_SHUFFLE((unsigned char)(7-i)%4,(unsigned char)(6-i)%4,(unsigned char)(5-i)%4,(unsigned char)(4-i)%4))) : (vec))

Definition at line 75 of file sse/vectormath_aos.h.

#define _mm_ror_ps (   vec,
 
)    (((i)%4) ? (_mm_shuffle_ps(vec,vec, _MM_SHUFFLE((unsigned char)(i+3)%4,(unsigned char)(i+2)%4,(unsigned char)(i+1)%4,(unsigned char)(i+0)%4))) : (vec))

Definition at line 73 of file sse/vectormath_aos.h.

#define _SINCOS_CC0   -0.0013602249f
#define _SINCOS_CC1   0.0416566950f
#define _SINCOS_CC2   -0.4999990225f
#define _SINCOS_KC1   1.57079625129f
#define _SINCOS_KC2   7.54978995489e-8f
#define _SINCOS_SC0   -0.0001950727f
#define _SINCOS_SC1   0.0083320758f
#define _SINCOS_SC2   -0.1666665247f
#define _three   _mm_setr_ps(3.f,3.f,3.f,3.f)
#define Matrix3Ref   Matrix3&

Definition at line 41 of file sse/vectormath_aos.h.

#define negatef4 (   x)    _mm_sub_ps( _mm_setzero_ps(), x )

Definition at line 187 of file sse/vectormath_aos.h.

#define QuatRef   Quat&

Definition at line 40 of file sse/vectormath_aos.h.

#define recipf4 (   x)    _mm_rcp_ps( x )

Definition at line 186 of file sse/vectormath_aos.h.

#define rsqrtf4 (   x)    _mm_rsqrt_ps( x )

Definition at line 185 of file sse/vectormath_aos.h.

#define sqrtf4 (   x)    _mm_sqrt_ps( x )

Definition at line 184 of file sse/vectormath_aos.h.

#define vec_add (   a,
 
)    _mm_add_ps( a, b )

Definition at line 172 of file sse/vectormath_aos.h.

#define vec_and (   a,
 
)    _mm_and_ps( a, b )

Definition at line 175 of file sse/vectormath_aos.h.

#define vec_andc (   a,
 
)    _mm_andnot_ps( b, a )

Definition at line 182 of file sse/vectormath_aos.h.

#define vec_cmpeq (   a,
 
)    _mm_cmpeq_ps( a, b )

Definition at line 176 of file sse/vectormath_aos.h.

#define vec_cmpgt (   a,
 
)    _mm_cmpgt_ps( a, b )

Definition at line 177 of file sse/vectormath_aos.h.

#define vec_madd (   a,
  b,
 
)    _mm_add_ps(c, _mm_mul_ps(a, b) )

Definition at line 83 of file sse/vectormath_aos.h.

#define vec_mergeh (   a,
 
)    _mm_unpacklo_ps( a, b )

Definition at line 179 of file sse/vectormath_aos.h.

#define vec_mergel (   a,
 
)    _mm_unpackhi_ps( a, b )

Definition at line 180 of file sse/vectormath_aos.h.

#define vec_mul (   a,
 
)    _mm_mul_ps( a, b )

Definition at line 173 of file sse/vectormath_aos.h.

#define vec_nmsub (   a,
  b,
 
)    _mm_sub_ps( c, _mm_mul_ps( a, b ) )

Definition at line 170 of file sse/vectormath_aos.h.

#define vec_sld (   vec,
  vec2,
 
)    _mm_ror_ps(vec, ((x)/4))

Definition at line 78 of file sse/vectormath_aos.h.

#define vec_splat (   x,
 
)    _mm_shuffle_ps(x, x, _MM_SHUFFLE(e,e,e,e))

Definition at line 71 of file sse/vectormath_aos.h.

#define vec_sub (   a,
 
)    _mm_sub_ps( a, b )

Definition at line 171 of file sse/vectormath_aos.h.

#define vec_xor (   a,
 
)    _mm_xor_ps( a, b )

Definition at line 174 of file sse/vectormath_aos.h.

#define Vector3Ref   Vector3&

Definition at line 39 of file sse/vectormath_aos.h.

#define VECTORMATH_FORCE_INLINE   inline __attribute__ ((always_inline))

Definition at line 52 of file sse/vectormath_aos.h.

#define VM_ATTRIBUTE_ALIGN16   __attribute__ ((aligned (16)))

Definition at line 51 of file sse/vectormath_aos.h.

#define VM_ATTRIBUTE_ALIGNED_CLASS16 (   a)    a __attribute__ ((aligned (16)))

Definition at line 50 of file sse/vectormath_aos.h.

Typedef Documentation

typedef __m128 vec_float4

Definition at line 65 of file sse/vectormath_aos.h.

typedef __m128 vec_int4

Definition at line 67 of file sse/vectormath_aos.h.

typedef __m128i vec_uchar16

Definition at line 68 of file sse/vectormath_aos.h.

typedef __m128 vec_uint4

Definition at line 66 of file sse/vectormath_aos.h.

typedef __m128i vec_ushort8

Definition at line 69 of file sse/vectormath_aos.h.

Function Documentation

static __m128 acosf4 ( __m128  x)
inlinestatic

Definition at line 198 of file sse/vectormath_aos.h.

static __m128 fabsf4 ( __m128  x)
inlinestatic

Definition at line 116 of file sse/vectormath_aos.h.

static __m128 newtonrapson_rsqrt4 ( const __m128  v)
inlinestatic

Definition at line 189 of file sse/vectormath_aos.h.

static void sincosf4 ( vec_float4  x,
vec_float4 s,
vec_float4 c 
)
inlinestatic

Definition at line 300 of file sse/vectormath_aos.h.

static __m128 sinf4 ( vec_float4  x)
inlinestatic

Definition at line 229 of file sse/vectormath_aos.h.

static __m128 toM128 ( unsigned int  x)
inlinestatic

Definition at line 111 of file sse/vectormath_aos.h.

static __m128 vec_ctf ( __m128  x,
int  a 
)
inlinestatic

Definition at line 163 of file sse/vectormath_aos.h.

static __m128 vec_cts ( __m128  x,
int  a 
)
inlinestatic

Definition at line 155 of file sse/vectormath_aos.h.

static __m128 vec_sel ( __m128  a,
__m128  b,
__m128  mask 
)
inlinestatic

Definition at line 98 of file sse/vectormath_aos.h.

static __m128 vec_sel ( __m128  a,
__m128  b,
const unsigned int *  _mask 
)
inlinestatic

Definition at line 102 of file sse/vectormath_aos.h.

static __m128 vec_sel ( __m128  a,
__m128  b,
unsigned int  _mask 
)
inlinestatic

Definition at line 106 of file sse/vectormath_aos.h.