checkasm/vp9: benchmark all sub-IDCTs (but not WHT or ADST).
This commit is contained in:
parent
0ff8c6b6d5
commit
1c8fbd7b90
@ -331,15 +331,20 @@ static void check_itxfm(void)
|
|||||||
int n_txtps = tx < TX_32X32 ? N_TXFM_TYPES : 1;
|
int n_txtps = tx < TX_32X32 ? N_TXFM_TYPES : 1;
|
||||||
|
|
||||||
for (txtp = 0; txtp < n_txtps; txtp++) {
|
for (txtp = 0; txtp < n_txtps; txtp++) {
|
||||||
if (check_func(dsp.itxfm_add[tx][txtp], "vp9_inv_%s_%dx%d_add_%d",
|
// skip testing sub-IDCTs for WHT or ADST since they don't
|
||||||
tx == 4 ? "wht_wht" : txtp_types[txtp], sz, sz,
|
// implement it in any of the SIMD functions. If they do,
|
||||||
bit_depth)) {
|
// 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();
|
randomize_buffers();
|
||||||
ftx(coef, tx, txtp, sz, bit_depth);
|
ftx(coef, tx, txtp, sz, bit_depth);
|
||||||
|
|
||||||
for (sub = (txtp == 0) ? 1 : 2; sub <= sz; sub <<= 1) {
|
|
||||||
int eob;
|
|
||||||
|
|
||||||
if (sub < sz) {
|
if (sub < sz) {
|
||||||
eob = copy_subcoefs(subcoef0, coef, tx, txtp,
|
eob = copy_subcoefs(subcoef0, coef, tx, txtp,
|
||||||
sz, sub, bit_depth);
|
sz, sub, bit_depth);
|
||||||
@ -357,8 +362,9 @@ static void check_itxfm(void)
|
|||||||
!iszero(subcoef0, sz * sz * SIZEOF_COEF) ||
|
!iszero(subcoef0, sz * sz * SIZEOF_COEF) ||
|
||||||
!iszero(subcoef1, sz * sz * SIZEOF_COEF))
|
!iszero(subcoef1, sz * sz * SIZEOF_COEF))
|
||||||
fail();
|
fail();
|
||||||
|
|
||||||
|
bench_new(dst, sz * SIZEOF_PIXEL, coef, eob);
|
||||||
}
|
}
|
||||||
bench_new(dst, sz * SIZEOF_PIXEL, coef, sz * sz);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user