[FFmpeg-devel] [PATCH 2/2] checkasm/vc1dsp: check the not-in-place block content
James Almer
jamrial at gmail.com
Tue Jun 11 18:08:51 EEST 2024
On 6/11/2024 11:55 AM, Rémi Denis-Courmont wrote:
> This seems to cause issues in FATE for 4x4 and 4x8 transforms. But then
> again, FATE does not seem to care in the 8x4 case.
>
> Note that AArch64 NEON code is known to fail this test.
> ---
> tests/checkasm/vc1dsp.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/tests/checkasm/vc1dsp.c b/tests/checkasm/vc1dsp.c
> index f18f0f8251..2cc6785a0c 100644
> --- a/tests/checkasm/vc1dsp.c
> +++ b/tests/checkasm/vc1dsp.c
> @@ -317,11 +317,13 @@ static void check_inv_trans_adding(void)
> for (int j = 0; j < tests[t].height; ++j)
> for (int i = 0; i < tests[t].width; ++i) {
> int idx = j * 8 + i;
> - inv_trans_in1[idx] = inv_trans_in0[idx] = coeffs->d[j * tests[t].width + i];
> + inv_trans_in0[idx] = coeffs->d[j * tests[t].width + i];
> }
> + memcpy(inv_trans_in1, inv_trans_in0, 8 * 8 * 2);
Is there any gain doing this?
> call_ref(inv_trans_out0 + 24 + 8, 24, inv_trans_in0);
> call_new(inv_trans_out1 + 24 + 8, 24, inv_trans_in1);
> - if (memcmp(inv_trans_out0, inv_trans_out1, 10 * 24))
> + if (memcmp(inv_trans_in0, inv_trans_in1, 8 * 8 * 2) ||
nit: sizeof (int16_t)
> + memcmp(inv_trans_out0, inv_trans_out1, 10 * 24))
> fail();
> bench_new(inv_trans_out1 + 24 + 8, 24, inv_trans_in1 + 8);
> av_free(coeffs);
More information about the ffmpeg-devel
mailing list