|
|
|
@ -269,14 +269,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", |
|
|
|
|
tx == 4 ? "wht_wht" : txtp_types[txtp], sz, sz)) { |
|
|
|
|
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", |
|
|
|
|
tx == 4 ? "wht_wht" : txtp_types[txtp], |
|
|
|
|
sz, sz, sub)) { |
|
|
|
|
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); |
|
|
|
@ -294,8 +300,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); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|