summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorRonald S. Bultje <rsbultje@gmail.com>2016-11-17 16:08:20 -0500
committerRonald S. Bultje <rsbultje@gmail.com>2016-12-27 10:02:33 -0500
commit1c8fbd7b90469f69fe3a3f78ba7886195d97c34f (patch)
tree9d635b45addd9ab0a8b73f15f48501bbcec0d16f /tests
parent0ff8c6b6d5243becfa73ff6960348a949055617b (diff)
checkasm/vp9: benchmark all sub-IDCTs (but not WHT or ADST).
Diffstat (limited to 'tests')
-rw-r--r--tests/checkasm/vp9dsp.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/tests/checkasm/vp9dsp.c b/tests/checkasm/vp9dsp.c
index 441041c2b0..f32b97cfa3 100644
--- a/tests/checkasm/vp9dsp.c
+++ b/tests/checkasm/vp9dsp.c
@@ -331,15 +331,20 @@ static void check_itxfm(void)
int n_txtps = tx < TX_32X32 ? N_TXFM_TYPES : 1;
for (txtp = 0; txtp < n_txtps; txtp++) {
- if (check_func(dsp.itxfm_add[tx][txtp], "vp9_inv_%s_%dx%d_add_%d",
- tx == 4 ? "wht_wht" : txtp_types[txtp], sz, sz,
- bit_depth)) {
- randomize_buffers();
- ftx(coef, tx, txtp, sz, bit_depth);
-
- for (sub = (txtp == 0) ? 1 : 2; sub <= sz; sub <<= 1) {
+ // skip testing sub-IDCTs for WHT or ADST since they don't
+ // implement it in any of the SIMD functions. If they do,
+ // consider changing this to ensure we have complete test
+ // coverage
+ for (sub = (txtp == 0 && tx < 4) ? 1 : sz; sub <= sz; sub <<= 1) {
+ if (check_func(dsp.itxfm_add[tx][txtp],
+ "vp9_inv_%s_%dx%d_sub%d_add_%d",
+ tx == 4 ? "wht_wht" : txtp_types[txtp],
+ sz, sz, sub, bit_depth)) {
int eob;
+ randomize_buffers();
+ ftx(coef, tx, txtp, sz, bit_depth);
+
if (sub < sz) {
eob = copy_subcoefs(subcoef0, coef, tx, txtp,
sz, sub, bit_depth);
@@ -357,8 +362,9 @@ static void check_itxfm(void)
!iszero(subcoef0, sz * sz * SIZEOF_COEF) ||
!iszero(subcoef1, sz * sz * SIZEOF_COEF))
fail();
+
+ bench_new(dst, sz * SIZEOF_PIXEL, coef, eob);
}
- bench_new(dst, sz * SIZEOF_PIXEL, coef, sz * sz);
}
}
}