CMSIS-DSP  
CMSIS DSP Software Library
 
Loading...
Searching...
No Matches
Helium/complex_float.hpp File Reference

Data Structures

struct  vector_traits< std::complex< float >, arch, typename std::enable_if< std::is_base_of< Helium, arch >::value >::type >
 Vector datatype for Helium. More...
 
struct  vload1_gen_stride< std::complex< float >, 0, 1, 2, 3 >
 Load with generalized stride specialized for <0,1,2,3> More...
 
struct  vstore1_gen_stride< std::complex< float32_t >, 0, 1, 2, 3 >
 Generalized store with stride (Specialized for <0,1,2,3>) More...
 

Namespaces

namespace  inner
 

Functions

ComplexVector< float32x4_t > vconst (const std::complex< float > v)
 Vector constant.
 
ComplexVector< float32x4_t > vneg (const ComplexVector< float32x4_t > &a)
 Vector negate.
 
ComplexVector< float32x4_t > vconjugate (const ComplexVector< float32x4_t > &a)
 Vector conjugate.
 
ComplexVector< float32x4_t > vadd (const ComplexVector< float32x4_t > &a, const ComplexVector< float32x4_t > &b)
 Vector + Vector.
 
ComplexVector< float32x4_t > vadd (const ComplexVector< float32x4_t > &a, const std::complex< float > &b)
 Vector + Scalar.
 
ComplexVector< float32x4_t > vadd (const std::complex< float > &a, const ComplexVector< float32x4_t > &b)
 Scalar + Vector.
 
ComplexVector< float32x4_t > vsub (const ComplexVector< float32x4_t > &a, const ComplexVector< float32x4_t > &b)
 Vector - Vector.
 
ComplexVector< float32x4_t > vsub (const ComplexVector< float32x4_t > &a, const std::complex< float > &b)
 Vector - Scalar.
 
ComplexVector< float32x4_t > vsub (const std::complex< float > &a, const ComplexVector< float32x4_t > &b)
 Scalar - Vector.
 
ComplexVector< float32x4_t > vmul (const ComplexVector< float32x4_t > &a, const ComplexVector< float32x4_t > &b)
 Vector * Vector.
 
ComplexVector< float32x4_t > vmul (const ComplexVector< float32x4_t > &a, const std::complex< float > &b)
 Vector * Scalar.
 
ComplexVector< float32x4_t > vmul (const std::complex< float > &a, const ComplexVector< float32x4_t > &b)
 Scalar * Vector.
 
ComplexVector< float32x4_t > vmacc (const ComplexVector< float32x4_t > &acc, const ComplexVector< float32x4_t > &a, const ComplexVector< float32x4_t > &b)
 Multiply accumulate (Vector * Vector)
 
ComplexVector< float32x4_t > vmacc (const ComplexVector< float32x4_t > &acc, const ComplexVector< float32x4_t > &a, const std::complex< float > &b)
 Multiply accumulate (Vector * Scalar)
 
std::complex< float > vreduce (const ComplexVector< float32x4_t > &in)
 Vector reduce.
 
template<int S, typename std::enable_if< S==1, bool >::type = true>
ComplexVector< float32x4_t > vload1 (const std::complex< float32_t > *p)
 Vector load with stride.
 
ComplexVector< float32x4_t > vload1 (const std::complex< float32_t > *p, const index_t stride)
 Vector load with dynamic stride.
 
template<int S, typename std::enable_if< S==1, bool >::type = true>
void vstore1 (std::complex< float32_t > *p, const ComplexVector< float32x4_t > &val)
 Store with stride.
 
void vstore1 (std::complex< float32_t > *p, const index_t stride, const ComplexVector< float32x4_t > &val)
 Store with dynamic stride.