| @@ -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", | |||||
| 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; | int eob; | ||||
| randomize_buffers(); | |||||
| ftx(coef, tx, txtp, sz, bit_depth); | |||||
| 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); | |||||
| } | } | ||||
| } | } | ||||
| } | } | ||||