ergo
Vector_intrin< Treal, Treg > Class Template Reference

Vector class template for access to SIMD operations. More...

#include <vector_intrin.h>

Public Member Functions

void ALWAYS_INLINE load_p (Treal const *ptr)
 
void ALWAYS_INLINE load1_p (Treal const *ptr)
 
void ALWAYS_INLINE store_p (Treal *ptr) const
 
Vector_intrin< Treal, Treg > &ALWAYS_INLINE operator*= (Vector_intrin< Treal, Treg > const &other)
 
Vector_intrin< Treal, Treg > &ALWAYS_INLINE operator+= (Vector_intrin< Treal, Treg > const &other)
 
Vector_intrin< Treal, Treg > &ALWAYS_INLINE operator+= (Treal const *ptr)
 
void ALWAYS_INLINE set_to_zero ()
 

Protected Attributes

Treg values
 

Detailed Description

template<typename Treal, typename Treg>
class Vector_intrin< Treal, Treg >

Vector class template for access to SIMD operations.

Currently supports a limited set of double and single precision SSE operations.

Member Function Documentation

◆ load1_p()

template<typename Treal, typename Treg>
void ALWAYS_INLINE Vector_intrin< Treal, Treg >::load1_p ( Treal const * ptr)
inline

References _mm_load1_p(), ALWAYS_INLINE, and values.

◆ load_p()

◆ operator*=()

template<typename Treal, typename Treg>
Vector_intrin< Treal, Treg > &ALWAYS_INLINE Vector_intrin< Treal, Treg >::operator*= ( Vector_intrin< Treal, Treg > const & other)
inline

References _mm_mul_p(), ALWAYS_INLINE, and values.

◆ operator+=() [1/2]

template<typename Treal, typename Treg>
Vector_intrin< Treal, Treg > &ALWAYS_INLINE Vector_intrin< Treal, Treg >::operator+= ( Treal const * ptr)
inline

◆ operator+=() [2/2]

template<typename Treal, typename Treg>
Vector_intrin< Treal, Treg > &ALWAYS_INLINE Vector_intrin< Treal, Treg >::operator+= ( Vector_intrin< Treal, Treg > const & other)
inline

References _mm_add_p(), ALWAYS_INLINE, and values.

◆ set_to_zero()

template<typename Treal, typename Treg>
void ALWAYS_INLINE Vector_intrin< Treal, Treg >::set_to_zero ( )
inline

◆ store_p()

template<typename Treal, typename Treg>
void ALWAYS_INLINE Vector_intrin< Treal, Treg >::store_p ( Treal * ptr) const
inline

Member Data Documentation

◆ values

template<typename Treal, typename Treg>
Treg Vector_intrin< Treal, Treg >::values
protected

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