Vector Optimized Library of Kernels  3.0.0
Architecture-tuned implementations of math kernels
volk_32f_log2_32f.h File Reference
#include <inttypes.h>
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <arm_neon.h>

Go to the source code of this file.

Macros

#define LOG_POLY_DEGREE   6
 
#define VLOG2Q_NEON_PREAMBLE()
 
#define VLOG2Q_NEON_F32(log2_approx, aval)
 
#define INCLUDED_volk_32f_log2_32f_u_H
 

Functions

static void volk_32f_log2_32f_generic (float *bVector, const float *aVector, unsigned int num_points)
 
static void volk_32f_log2_32f_neon (float *bVector, const float *aVector, unsigned int num_points)
 
static void volk_32f_log2_32f_u_generic (float *bVector, const float *aVector, unsigned int num_points)
 

Macro Definition Documentation

◆ INCLUDED_volk_32f_log2_32f_u_H

#define INCLUDED_volk_32f_log2_32f_u_H

◆ LOG_POLY_DEGREE

#define LOG_POLY_DEGREE   6

◆ VLOG2Q_NEON_F32

#define VLOG2Q_NEON_F32 (   log2_approx,
  aval 
)

◆ VLOG2Q_NEON_PREAMBLE

#define VLOG2Q_NEON_PREAMBLE ( )
Value:
int32x4_t one = vdupq_n_s32(0x000800000); \
/* minimax polynomial */ \
float32x4_t p0 = vdupq_n_f32(-3.0400402727048585); \
float32x4_t p1 = vdupq_n_f32(6.1129631282966113); \
float32x4_t p2 = vdupq_n_f32(-5.3419892024633207); \
float32x4_t p3 = vdupq_n_f32(3.2865287703753912); \
float32x4_t p4 = vdupq_n_f32(-1.2669182593441635); \
float32x4_t p5 = vdupq_n_f32(0.2751487703421256); \
float32x4_t p6 = vdupq_n_f32(-0.0256910888150985); \
int32x4_t exp_mask = vdupq_n_s32(0x7f800000); \
int32x4_t sig_mask = vdupq_n_s32(0x007fffff); \
int32x4_t exp_bias = vdupq_n_s32(127);

Function Documentation

◆ volk_32f_log2_32f_generic()

static void volk_32f_log2_32f_generic ( float *  bVector,
const float *  aVector,
unsigned int  num_points 
)
inlinestatic

◆ volk_32f_log2_32f_neon()

static void volk_32f_log2_32f_neon ( float *  bVector,
const float *  aVector,
unsigned int  num_points 
)
inlinestatic

◆ volk_32f_log2_32f_u_generic()

static void volk_32f_log2_32f_u_generic ( float *  bVector,
const float *  aVector,
unsigned int  num_points 
)
inlinestatic