AuxPort 0.2
Modules for Audio Software Development
|
SIMD Wrapper for Single-precision floating point operations
More...
#include <AuxSimd.h>
Protected Member Functions | |
virtual void | add (std::vector< float > &result, const std::vector< float > &vec1, const std::vector< float > &vec2)=0 |
Adds two vectors using SIMD extensions [Overridable]. | |
virtual void | multiply (std::vector< float > &result, const std::vector< float > &vec1, const std::vector< float > &vec2)=0 |
Multiples two vectors using SIMD extensions [Overridable]. | |
virtual void | sqrt (std::vector< float > &result, const std::vector< float > &vec)=0 |
Return square root of values in the vector using SIMD extensions [Overridable]. | |
virtual void | fma (std::vector< float > &result, const std::vector< float > &vec1, const std::vector< float > &vec2, const std::vector< float > &vec3)=0 |
Returns result after fused mutltiply-add using SIMD extensions [Overridable]. For example: result[i] will be equal to (vec1[i] * vec2[i]) + vec3[i]. | |
SIMD Wrapper for Single-precision floating point operations
|
protectedpure virtual |
Adds two vectors using SIMD extensions [Overridable].
Implemented in AuxPort::Simd::Float128, and AuxPort::Simd::Float256.
|
protectedpure virtual |
Returns result after fused mutltiply-add using SIMD extensions [Overridable]. For example: result[i] will be equal to (vec1[i] * vec2[i]) + vec3[i].
Implemented in AuxPort::Simd::Float128, and AuxPort::Simd::Float256.
|
protectedpure virtual |
Multiples two vectors using SIMD extensions [Overridable].
Implemented in AuxPort::Simd::Float128, and AuxPort::Simd::Float256.
|
protectedpure virtual |
Return square root of values in the vector using SIMD extensions [Overridable].
Implemented in AuxPort::Simd::Float128, and AuxPort::Simd::Float256.