LIBINT  2.6.0
Public Types | Public Member Functions | Public Attributes | List of all members
libint2::simd::VectorSSEFloat Struct Reference

SIMD vector of 4 single-precision floating-point real numbers, operations on which use SSE instructions available on all recent x86 hardware. More...

#include <vector_x86.h>

Public Types

typedef float T
 

Public Member Functions

 VectorSSEFloat ()
 creates a vector of default-initialized values.
 
 VectorSSEFloat (T a)
 Initializes all elements to the same value. More...
 
 VectorSSEFloat (T(&a)[4])
 creates a vector of values initialized by an ordinary static-sized array
 
 VectorSSEFloat (T a0, T a1, T a2, T a3)
 creates a vector of values initialized by an ordinary static-sized array
 
VectorSSEFloatoperator= (T a)
 
VectorSSEFloatoperator+= (VectorSSEFloat a)
 
VectorSSEFloatoperator-= (VectorSSEFloat a)
 
VectorSSEFloat operator- () const
 
 operator float () const
 
 operator double () const
 
 operator __m128 () const
 implicit conversion to SSE 128-bit "register"
 
void load (T const *a)
 loads a to this
 
void load_aligned (T const *a)
 loads a to this More...
 
void convert (T *a) const
 writes this to a
 
void convert_aligned (T *a) const
 writes this to a More...
 

Public Attributes

__m128 d
 

Detailed Description

SIMD vector of 4 single-precision floating-point real numbers, operations on which use SSE instructions available on all recent x86 hardware.

Constructor & Destructor Documentation

◆ VectorSSEFloat()

libint2::simd::VectorSSEFloat::VectorSSEFloat ( a)
inline

Initializes all elements to the same value.

Parameters
athe value to which all elements will be set

Member Function Documentation

◆ convert_aligned()

void libint2::simd::VectorSSEFloat::convert_aligned ( T *  a) const
inline

writes this to a

Note
a must be aligned to 32 bytes

◆ load_aligned()

void libint2::simd::VectorSSEFloat::load_aligned ( T const *  a)
inline

loads a to this

See also
load()
Note
a must be aligned to 16 bytes

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