Vector Optimized Library of Kernels 3.2.0
Architecture-tuned implementations of math kernels
Loading...
Searching...
No Matches
volk_32fc_x2_s32fc_multiply_conjugate_add_32fc.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2019 Free Software Foundation, Inc.
4 *
5 * This file is part of VOLK
6 *
7 * SPDX-License-Identifier: LGPL-3.0-or-later
8 */
9
78
79#ifndef INCLUDED_volk_32fc_x2_s32fc_multiply_conjugate_add_32fc_H
80#define INCLUDED_volk_32fc_x2_s32fc_multiply_conjugate_add_32fc_H
81
82#include <float.h>
83#include <inttypes.h>
84#include <stdio.h>
86#include <volk/volk_complex.h>
87
88
89#ifdef LV_HAVE_GENERIC
90
91static inline void
93 const lv_32fc_t* aVector,
94 const lv_32fc_t* bVector,
95 const lv_32fc_t scalar,
96 unsigned int num_points)
97{
99 cVector, aVector, bVector, &scalar, num_points);
100}
101#endif /* LV_HAVE_GENERIC */
102
103
104#ifdef LV_HAVE_AVX
105
106static inline void
108 const lv_32fc_t* aVector,
109 const lv_32fc_t* bVector,
110 const lv_32fc_t scalar,
111 unsigned int num_points)
112{
114 cVector, aVector, bVector, &scalar, num_points);
115}
116#endif /* LV_HAVE_AVX */
117
118
119#ifdef LV_HAVE_SSE3
120
121static inline void
123 const lv_32fc_t* aVector,
124 const lv_32fc_t* bVector,
125 const lv_32fc_t scalar,
126 unsigned int num_points)
127{
129 cVector, aVector, bVector, &scalar, num_points);
130}
131#endif /* LV_HAVE_SSE */
132
133
134#ifdef LV_HAVE_AVX
135
136static inline void
138 const lv_32fc_t* aVector,
139 const lv_32fc_t* bVector,
140 const lv_32fc_t scalar,
141 unsigned int num_points)
142{
144 cVector, aVector, bVector, &scalar, num_points);
145}
146#endif /* LV_HAVE_AVX */
147
148
149#ifdef LV_HAVE_SSE3
150
151static inline void
153 const lv_32fc_t* aVector,
154 const lv_32fc_t* bVector,
155 const lv_32fc_t scalar,
156 unsigned int num_points)
157{
159 cVector, aVector, bVector, &scalar, num_points);
160}
161#endif /* LV_HAVE_SSE */
162
163
164#ifdef LV_HAVE_NEON
165
166static inline void
168 const lv_32fc_t* aVector,
169 const lv_32fc_t* bVector,
170 const lv_32fc_t scalar,
171 unsigned int num_points)
172{
174 cVector, aVector, bVector, &scalar, num_points);
175}
176#endif /* LV_HAVE_NEON */
177
178#endif /* INCLUDED_volk_32fc_x2_s32fc_multiply_conjugate_add_32fc_H */
static void volk_32fc_x2_s32fc_multiply_conjugate_add2_32fc_generic(lv_32fc_t *cVector, const lv_32fc_t *aVector, const lv_32fc_t *bVector, const lv_32fc_t *scalar, unsigned int num_points)
Definition volk_32fc_x2_s32fc_multiply_conjugate_add2_32fc.h:86
static void volk_32fc_x2_s32fc_multiply_conjugate_add2_32fc_neon(lv_32fc_t *cVector, const lv_32fc_t *aVector, const lv_32fc_t *bVector, const lv_32fc_t *scalar, unsigned int num_points)
Definition volk_32fc_x2_s32fc_multiply_conjugate_add2_32fc.h:298
static void volk_32fc_x2_s32fc_multiply_conjugate_add2_32fc_u_sse3(lv_32fc_t *cVector, const lv_32fc_t *aVector, const lv_32fc_t *bVector, const lv_32fc_t *scalar, unsigned int num_points)
Definition volk_32fc_x2_s32fc_multiply_conjugate_add2_32fc.h:168
static void volk_32fc_x2_s32fc_multiply_conjugate_add2_32fc_u_avx(lv_32fc_t *cVector, const lv_32fc_t *aVector, const lv_32fc_t *bVector, const lv_32fc_t *scalar, unsigned int num_points)
Definition volk_32fc_x2_s32fc_multiply_conjugate_add2_32fc.h:123
static void volk_32fc_x2_s32fc_multiply_conjugate_add2_32fc_a_avx(lv_32fc_t *cVector, const lv_32fc_t *aVector, const lv_32fc_t *bVector, const lv_32fc_t *scalar, unsigned int num_points)
Definition volk_32fc_x2_s32fc_multiply_conjugate_add2_32fc.h:211
static void volk_32fc_x2_s32fc_multiply_conjugate_add2_32fc_a_sse3(lv_32fc_t *cVector, const lv_32fc_t *aVector, const lv_32fc_t *bVector, const lv_32fc_t *scalar, unsigned int num_points)
Definition volk_32fc_x2_s32fc_multiply_conjugate_add2_32fc.h:256
static void volk_32fc_x2_s32fc_multiply_conjugate_add_32fc_a_avx(lv_32fc_t *cVector, const lv_32fc_t *aVector, const lv_32fc_t *bVector, const lv_32fc_t scalar, unsigned int num_points)
Definition volk_32fc_x2_s32fc_multiply_conjugate_add_32fc.h:137
static void volk_32fc_x2_s32fc_multiply_conjugate_add_32fc_generic(lv_32fc_t *cVector, const lv_32fc_t *aVector, const lv_32fc_t *bVector, const lv_32fc_t scalar, unsigned int num_points)
Definition volk_32fc_x2_s32fc_multiply_conjugate_add_32fc.h:92
static void volk_32fc_x2_s32fc_multiply_conjugate_add_32fc_u_sse3(lv_32fc_t *cVector, const lv_32fc_t *aVector, const lv_32fc_t *bVector, const lv_32fc_t scalar, unsigned int num_points)
Definition volk_32fc_x2_s32fc_multiply_conjugate_add_32fc.h:122
static void volk_32fc_x2_s32fc_multiply_conjugate_add_32fc_a_sse3(lv_32fc_t *cVector, const lv_32fc_t *aVector, const lv_32fc_t *bVector, const lv_32fc_t scalar, unsigned int num_points)
Definition volk_32fc_x2_s32fc_multiply_conjugate_add_32fc.h:152
static void volk_32fc_x2_s32fc_multiply_conjugate_add_32fc_u_avx(lv_32fc_t *cVector, const lv_32fc_t *aVector, const lv_32fc_t *bVector, const lv_32fc_t scalar, unsigned int num_points)
Definition volk_32fc_x2_s32fc_multiply_conjugate_add_32fc.h:107
static void volk_32fc_x2_s32fc_multiply_conjugate_add_32fc_neon(lv_32fc_t *cVector, const lv_32fc_t *aVector, const lv_32fc_t *bVector, const lv_32fc_t scalar, unsigned int num_points)
Definition volk_32fc_x2_s32fc_multiply_conjugate_add_32fc.h:167
float complex lv_32fc_t
Definition volk_complex.h:74