27 #ifndef VOLK_KERNELS_VOLK_VOLK_8U_X3_ENCODEPOLARPUPPET_8U_H_
28 #define VOLK_KERNELS_VOLK_VOLK_8U_X3_ENCODEPOLARPUPPET_8U_H_
29 #include <volk/volk.h>
36 unsigned int res =
val;
37 res = (res >> 1) | res;
38 res = (res >> 2) | res;
39 res = (res >> 4) | res;
40 res = (res >> 8) | res;
41 res = (res >> 16) | res;
50 for (
i = 0;
i < frame_size; ++
i) {
51 *mask = (*mask & 0x80) ? 0xFF : 0x00;
56 #ifdef LV_HAVE_GENERIC
59 unsigned char* frozen_bit_mask,
60 const unsigned char* frozen_bits,
61 const unsigned char* info_bits,
62 unsigned int frame_size)
65 unsigned char* temp = (
unsigned char*)
volk_malloc(
sizeof(
unsigned char) * frame_size,
69 frame, temp, frozen_bit_mask, frozen_bits, info_bits, frame_size);
78 unsigned char* frozen_bit_mask,
79 const unsigned char* frozen_bits,
80 const unsigned char* info_bits,
81 unsigned int frame_size)
84 unsigned char* temp = (
unsigned char*)
volk_malloc(
sizeof(
unsigned char) * frame_size,
88 frame, temp, frozen_bit_mask, frozen_bits, info_bits, frame_size);
95 volk_8u_x3_encodepolarpuppet_8u_u_avx2(
unsigned char* frame,
96 unsigned char* frozen_bit_mask,
97 const unsigned char* frozen_bits,
98 const unsigned char* info_bits,
99 unsigned int frame_size)
102 unsigned char* temp = (
unsigned char*)
volk_malloc(
sizeof(
unsigned char) * frame_size,
105 volk_8u_x3_encodepolar_8u_x2_u_avx2(
106 frame, temp, frozen_bit_mask, frozen_bits, info_bits, frame_size);
113 #ifndef VOLK_KERNELS_VOLK_VOLK_8U_X3_ENCODEPOLARPUPPET_8U_A_H_
114 #define VOLK_KERNELS_VOLK_VOLK_8U_X3_ENCODEPOLARPUPPET_8U_A_H_
119 unsigned char* frozen_bit_mask,
120 const unsigned char* frozen_bits,
121 const unsigned char* info_bits,
122 unsigned int frame_size)
125 unsigned char* temp = (
unsigned char*)
volk_malloc(
sizeof(
unsigned char) * frame_size,
129 frame, temp, frozen_bit_mask, frozen_bits, info_bits, frame_size);
136 volk_8u_x3_encodepolarpuppet_8u_a_avx2(
unsigned char* frame,
137 unsigned char* frozen_bit_mask,
138 const unsigned char* frozen_bits,
139 const unsigned char* info_bits,
140 unsigned int frame_size)
143 unsigned char* temp = (
unsigned char*)
volk_malloc(
sizeof(
unsigned char) * frame_size,
146 volk_8u_x3_encodepolar_8u_x2_a_avx2(
147 frame, temp, frozen_bit_mask, frozen_bits, info_bits, frame_size);
val
Definition: volk_arch_defs.py:66
size_t volk_get_alignment(void)
Get the machine alignment in bytes.
Definition: volk.tmpl.c:102
static void volk_8u_x3_encodepolar_8u_x2_generic(unsigned char *frame, unsigned char *temp, const unsigned char *frozen_bit_mask, const unsigned char *frozen_bits, const unsigned char *info_bits, unsigned int frame_size)
Definition: volk_8u_x3_encodepolar_8u_x2.h:98
static void volk_8u_x3_encodepolar_8u_x2_a_ssse3(unsigned char *frame, unsigned char *temp, const unsigned char *frozen_bit_mask, const unsigned char *frozen_bits, const unsigned char *info_bits, unsigned int frame_size)
Definition: volk_8u_x3_encodepolar_8u_x2.h:156
static void volk_8u_x3_encodepolar_8u_x2_u_ssse3(unsigned char *frame, unsigned char *temp, const unsigned char *frozen_bit_mask, const unsigned char *frozen_bits, const unsigned char *info_bits, unsigned int frame_size)
Definition: volk_8u_x3_encodepolar_8u_x2.h:117
static void adjust_frozen_mask(unsigned char *mask, const unsigned int frame_size)
Definition: volk_8u_x3_encodepolarpuppet_8u.h:46
static unsigned int next_lower_power_of_two(const unsigned int val)
Definition: volk_8u_x3_encodepolarpuppet_8u.h:32
static void volk_8u_x3_encodepolarpuppet_8u_generic(unsigned char *frame, unsigned char *frozen_bit_mask, const unsigned char *frozen_bits, const unsigned char *info_bits, unsigned int frame_size)
Definition: volk_8u_x3_encodepolarpuppet_8u.h:58
static void volk_8u_x3_encodepolarpuppet_8u_a_ssse3(unsigned char *frame, unsigned char *frozen_bit_mask, const unsigned char *frozen_bits, const unsigned char *info_bits, unsigned int frame_size)
Definition: volk_8u_x3_encodepolarpuppet_8u.h:118
static void volk_8u_x3_encodepolarpuppet_8u_u_ssse3(unsigned char *frame, unsigned char *frozen_bit_mask, const unsigned char *frozen_bits, const unsigned char *info_bits, unsigned int frame_size)
Definition: volk_8u_x3_encodepolarpuppet_8u.h:77
for i
Definition: volk_config_fixed.tmpl.h:25
__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:51
VOLK_API void volk_free(void *aptr)
Free's memory allocated by volk_malloc.
Definition: volk_malloc.c:93