11#ifndef INCLUDED_volk_32f_x2_powpuppet_32f_H
12#define INCLUDED_volk_32f_x2_powpuppet_32f_H
18static inline float*
make_positive(
const float* input,
unsigned int num_points)
21 for (
unsigned int i = 0;
i < num_points;
i++) {
22 output[
i] = fabsf(input[
i]);
30#if LV_HAVE_AVX2 && LV_HAVE_FMA
31static inline void volk_32f_x2_powpuppet_32f_a_avx2_fma(
float* cVector,
34 unsigned int num_points)
37 volk_32f_x2_pow_32f_a_avx2_fma(cVector, bVector, aVectorPos, num_points);
43static inline void volk_32f_x2_powpuppet_32f_a_avx2(
float* cVector,
46 unsigned int num_points)
49 volk_32f_x2_pow_32f_a_avx2(cVector, bVector, aVectorPos, num_points);
55static inline void volk_32f_x2_powpuppet_32f_a_sse4_1(
float* cVector,
58 unsigned int num_points)
61 volk_32f_x2_pow_32f_a_sse4_1(cVector, bVector, aVectorPos, num_points);
70 unsigned int num_points)
79static inline void volk_32f_x2_powpuppet_32f_u_sse4_1(
float* cVector,
82 unsigned int num_points)
85 volk_32f_x2_pow_32f_u_sse4_1(cVector, bVector, aVectorPos, num_points);
90#if LV_HAVE_AVX2 && LV_HAVE_FMA
91static inline void volk_32f_x2_powpuppet_32f_u_avx2_fma(
float* cVector,
94 unsigned int num_points)
97 volk_32f_x2_pow_32f_u_avx2_fma(cVector, bVector, aVectorPos, num_points);
103static inline void volk_32f_x2_powpuppet_32f_u_avx2(
float* cVector,
104 const float* bVector,
105 const float* aVector,
106 unsigned int num_points)
109 volk_32f_x2_pow_32f_u_avx2(cVector, bVector, aVectorPos, num_points);
115static inline void volk_32f_x2_powpuppet_32f_rvv(
float* cVector,
116 const float* bVector,
117 const float* aVector,
118 unsigned int num_points)
121 volk_32f_x2_pow_32f_rvv(cVector, bVector, aVectorPos, num_points);
size_t volk_get_alignment(void)
Get the machine alignment in bytes.
Definition volk.tmpl.c:90
static void volk_32f_x2_pow_32f_generic(float *cVector, const float *bVector, const float *aVector, unsigned int num_points)
Definition volk_32f_x2_pow_32f.h:523
static void volk_32f_x2_powpuppet_32f_generic(float *cVector, const float *bVector, const float *aVector, unsigned int num_points)
Definition volk_32f_x2_powpuppet_32f.h:67
static float * make_positive(const float *input, unsigned int num_points)
Definition volk_32f_x2_powpuppet_32f.h:18
for i
Definition volk_config_fixed.tmpl.h:13
__VOLK_DECL_BEGIN VOLK_API void * volk_malloc(size_t size, size_t alignment)
Allocate size bytes of data aligned to alignment.
Definition volk_malloc.c:38
VOLK_API void volk_free(void *aptr)
Free's memory allocated by volk_malloc.
Definition volk_malloc.c:70