Go to the documentation of this file.
   31 #define randomize_buffer(buf)                 \ 
   34     double bmg[2], stddev = 10.0, mean = 0.0; \ 
   36     for (i = 0; i < LEN; i += 2) {            \ 
   37         av_bmg_get(&checkasm_lfg, bmg);       \ 
   38         buf[i]     = bmg[0] * stddev + mean;  \ 
   39         buf[i + 1] = bmg[1] * stddev + mean;  \ 
   54     for (
i = 0; 
i < 
LEN; 
i++) {
 
   57             fprintf(stderr, 
"%d: %- .12f - %- .12f = % .12g\n",
 
   58                     i, cdst[
i], odst[
i], cdst[
i] - odst[
i]);
 
   77     for (
i = 0; 
i < 
LEN; 
i++) {
 
   80             fprintf(stderr, 
"%d: %- .12f - %- .12f = % .12g\n",
 
   81                     i, cdst[
i], odst[
i], cdst[
i] - odst[
i]);
 
   89 #define ARBITRARY_FMUL_ADD_CONST 0.005 
  101     for (
i = 0; 
i < 
LEN; 
i++) {
 
  103             fprintf(stderr, 
"%d: %- .12f - %- .12f = % .12g\n",
 
  104                     i, cdst[
i], odst[
i], cdst[
i] - odst[
i]);
 
  122         for (
i = 0; 
i < 
LEN; 
i++) {
 
  125                 fprintf(stderr, 
"%d: %- .12f - %- .12f = % .12g\n",
 
  126                         i, cdst[
i], odst[
i], cdst[
i] - odst[
i]);
 
  134 #define ARBITRARY_FMUL_WINDOW_CONST 0.008 
  142                  const float *
win, 
int len);
 
  146     for (
i = 0; 
i < 
LEN; 
i++) {
 
  148             fprintf(stderr, 
"%d: %- .12f - %- .12f = % .12g\n",
 
  149                     i, cdst[
i], odst[
i], cdst[
i] - odst[
i]);
 
  157 #define ARBITRARY_FMAC_SCALAR_CONST 0.005 
  171     for (
i = 0; 
i < 
LEN; 
i++) {
 
  173             fprintf(stderr, 
"%d: %- .12f - %- .12f = % .12g\n",
 
  174                     i, cdst[
i], odst[
i], cdst[
i] - odst[
i]);
 
  193     for (
i = 0; 
i < 
LEN; 
i++) {
 
  196             fprintf(stderr, 
"%d: %- .12f - %- .12f = % .12g\n", 
i,
 
  197                     cdst[
i], odst[
i], cdst[
i] - odst[
i]);
 
  205 #define ARBITRARY_DMAC_SCALAR_CONST 0.005 
  218     for (
i = 0; 
i < 
LEN; 
i++) {
 
  220             fprintf(stderr, 
"%d: %- .12f - %- .12f = % .12g\n",
 
  221                     i, cdst[
i], odst[
i], cdst[
i] - odst[
i]);
 
  248     for (
i = 0; 
i < 
LEN; 
i++) {
 
  251             fprintf(stderr, 
"%d: %- .12f - %- .12f = % .12g\n",
 
  252                     i, cdst[
i], odst[
i], cdst[
i] - odst[
i]);
 
  253             fprintf(stderr, 
"%d: %- .12f - %- .12f = % .12g\n",
 
  254                     i, cdst1[
i], odst1[
i], cdst1[
i] - odst1[
i]);
 
  264 #define ARBITRARY_SCALARPRODUCT_CONST 0.2 
  274         fprintf(stderr, 
"%- .12f - %- .12f = % .12g\n",
 
  275                 cprod, oprod, cprod - oprod);
 
  290         fprintf(stderr, 
"%- .12f - %- .12f = % .12g\n",
 
  291                 cprod, oprod, cprod - oprod);
 
  311         fprintf(stderr, 
"floatdsp: Out of memory error\n");
 
  349     report(
"butterflies_float");
 
  352     report(
"scalarproduct_float");
 
  355     report(
"scalarproduct_double");
 
  
void(* butterflies_float)(float *restrict v1, float *restrict v2, int len)
Calculate the sum and difference of two vectors of floats.
 
void(* vector_fmul_reverse)(float *dst, const float *src0, const float *src1, int len)
Calculate the entry wise product of two vectors of floats, and store the result in a vector of floats...
 
#define randomize_buffer(buf)
 
int float_near_abs_eps(float a, float b, float eps)
 
#define check_func(func,...)
 
static void test_scalarproduct_double(const double *src0, const double *src1)
 
#define declare_func_float(ret,...)
 
static void test_vector_dmac_scalar(const double *src0, const double *src1, const double *src2)
 
void(* vector_dmul)(double *dst, const double *src0, const double *src1, int len)
Calculate the entry wise product of two vectors of doubles and store the result in a vector of double...
 
static float win(SuperEqualizerContext *s, float n, int N)
 
#define ARBITRARY_FMUL_ADD_CONST
 
int double_near_abs_eps(double a, double b, double eps)
 
void checkasm_check_float_dsp(void)
 
float(* scalarproduct_float)(const float *v1, const float *v2, int len)
Calculate the scalar product of two vectors of floats.
 
static void test_butterflies_float(const float *src0, const float *src1)
 
static void test_vector_fmul_scalar(const float *src0, const float *src1)
 
#define LOCAL_ALIGNED_16(t, v,...)
 
static __device__ float fabs(float a)
 
#define LOCAL_ALIGNED_32(t, v,...)
 
static void test_vector_fmul(const float *src0, const float *src1)
 
void(* vector_fmul_scalar)(float *dst, const float *src, float mul, int len)
Multiply a vector of floats by a scalar float.
 
#define ARBITRARY_FMAC_SCALAR_CONST
 
double(* scalarproduct_double)(const double *v1, const double *v2, size_t len)
Calculate the scalar product of two vectors of doubles.
 
void(* vector_fmul)(float *dst, const float *src0, const float *src1, int len)
Calculate the entry wise product of two vectors of floats and store the result in a vector of floats.
 
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
 
#define ARBITRARY_FMUL_WINDOW_CONST
 
static void test_vector_dmul_scalar(const double *src0, const double *src1)
 
static void test_vector_fmul_add(const float *src0, const float *src1, const float *src2)
 
#define ARBITRARY_SCALARPRODUCT_CONST
 
#define i(width, name, range_min, range_max)
 
void(* vector_fmac_scalar)(float *dst, const float *src, float mul, int len)
Multiply a vector of floats by a scalar float and add to destination vector.
 
void(* vector_fmul_add)(float *dst, const float *src0, const float *src1, const float *src2, int len)
Calculate the entry wise product of two vectors of floats, add a third vector of floats and store the...
 
#define ARBITRARY_DMAC_SCALAR_CONST
 
static void test_vector_fmul_window(const float *src0, const float *src1, const float *win)
 
void(* vector_dmul_scalar)(double *dst, const double *src, double mul, int len)
Multiply a vector of double by a scalar double.
 
static void test_scalarproduct_float(const float *src0, const float *src1)
 
void(* vector_fmul_window)(float *dst, const float *src0, const float *src1, const float *win, int len)
Overlap/add with window function.
 
#define declare_func(ret,...)
 
av_cold AVFloatDSPContext * avpriv_float_dsp_alloc(int bit_exact)
Allocate a float DSP context.
 
void(* vector_dmac_scalar)(double *dst, const double *src, double mul, int len)
Multiply a vector of doubles by a scalar double and add to destination vector.
 
static void test_vector_dmul(const double *src0, const double *src1)
 
static void test_vector_fmac_scalar(const float *src0, const float *src1, const float *src2)