Browse Source

checkasm/float_dsp: add test for vector_dmul

Signed-off-by: James Almer <jamrial@gmail.com>
tags/n4.1
James Almer 6 years ago
parent
commit
93bf1dcaec
1 changed files with 24 additions and 0 deletions
  1. +24
    -0
      tests/checkasm/float_dsp.c

+ 24
- 0
tests/checkasm/float_dsp.c View File

@@ -61,6 +61,28 @@ static void test_vector_fmul(const float *src0, const float *src1)
bench_new(odst, src0, src1, LEN);
}

static void test_vector_dmul(const double *src0, const double *src1)
{
LOCAL_ALIGNED_32(double, cdst, [LEN]);
LOCAL_ALIGNED_32(double, odst, [LEN]);
int i;

declare_func(void, double *dst, const double *src0, const double *src1,
int len);

call_ref(cdst, src0, src1, LEN);
call_new(odst, src0, src1, LEN);
for (i = 0; i < LEN; i++) {
if (!double_near_abs_eps(cdst[i], odst[i], DBL_EPSILON)) {
fprintf(stderr, "%d: %- .12f - %- .12f = % .12g\n",
i, cdst[i], odst[i], cdst[i] - odst[i]);
fail();
break;
}
}
bench_new(odst, src0, src1, LEN);
}

#define ARBITRARY_FMUL_ADD_CONST 0.005
static void test_vector_fmul_add(const float *src0, const float *src1, const float *src2)
{
@@ -294,6 +316,8 @@ void checkasm_check_float_dsp(void)
if (check_func(fdsp->vector_fmac_scalar, "vector_fmac_scalar"))
test_vector_fmac_scalar(src0, src1, src2);
report("vector_fmac");
if (check_func(fdsp->vector_dmul, "vector_dmul"))
test_vector_dmul(dbl_src0, dbl_src1);
if (check_func(fdsp->vector_dmul_scalar, "vector_dmul_scalar"))
test_vector_dmul_scalar(dbl_src0, dbl_src1);
report("vector_dmul");


Loading…
Cancel
Save