Vector Optimized Library of Kernels 3.2.0
Architecture-tuned implementations of math kernels
Loading...
Searching...
No Matches
volk_32u_popcntpuppet_32u.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2014 Free Software Foundation, Inc.
4 *
5 * This file is part of VOLK
6 *
7 * SPDX-License-Identifier: LGPL-3.0-or-later
8 */
9
10#ifndef INCLUDED_volk_32u_popcntpuppet_32u_H
11#define INCLUDED_volk_32u_popcntpuppet_32u_H
12
13#include <stdint.h>
15
16#ifdef LV_HAVE_GENERIC
17static inline void volk_32u_popcntpuppet_32u_generic(uint32_t* outVector,
18 const uint32_t* inVector,
19 unsigned int num_points)
20{
21 for (size_t i = 0; i < num_points; ++i) {
22 volk_32u_popcnt_generic(outVector + i, inVector[i]);
23 }
24}
25#endif /* LV_HAVE_GENERIC */
26
27#ifdef LV_HAVE_SSE4_2
28static inline void volk_32u_popcntpuppet_32u_a_sse4_2(uint32_t* outVector,
29 const uint32_t* inVector,
30 unsigned int num_points)
31{
32 for (size_t i = 0; i < num_points; ++i) {
33 volk_32u_popcnt_a_sse4_2(outVector + i, inVector[i]);
34 }
35}
36#endif /* LV_HAVE_SSE4_2 */
37
38#ifdef LV_HAVE_RVV
39static inline void volk_32u_popcntpuppet_32u_rvv(uint32_t* outVector,
40 const uint32_t* inVector,
41 unsigned int num_points)
42{
43 for (size_t i = 0; i < num_points; ++i) {
44 volk_32u_popcnt_rvv(outVector + i, inVector[i]);
45 }
46}
47#endif /* LV_HAVE_RVV */
48
49#ifdef LV_HAVE_RVA22V
50static inline void volk_32u_popcntpuppet_32u_rva22(uint32_t* outVector,
51 const uint32_t* inVector,
52 unsigned int num_points)
53{
54 for (size_t i = 0; i < num_points; ++i) {
55 volk_32u_popcnt_rva22(outVector + i, inVector[i]);
56 }
57}
58#endif /* LV_HAVE_RVA22V */
59
60#endif /* INCLUDED_volk_32fc_s32fc_rotatorpuppet_32fc_a_H */
static void volk_32u_popcnt_a_sse4_2(uint32_t *ret, const uint32_t value)
Definition volk_32u_popcnt.h:72
static void volk_32u_popcnt_generic(uint32_t *ret, const uint32_t value)
Definition volk_32u_popcnt.h:51
static void volk_32u_popcntpuppet_32u_a_sse4_2(uint32_t *outVector, const uint32_t *inVector, unsigned int num_points)
Definition volk_32u_popcntpuppet_32u.h:28
static void volk_32u_popcntpuppet_32u_generic(uint32_t *outVector, const uint32_t *inVector, unsigned int num_points)
Definition volk_32u_popcntpuppet_32u.h:17
for i
Definition volk_config_fixed.tmpl.h:13