x86: Require fast gathers for AVX-512 mc resize and warp

Prefer using the AVX2 implementations (which doesn't use gathers) on Zen 4.
This commit is contained in:
Henrik Gramner 2023-12-08 15:34:17 +01:00 committed by Henrik Gramner
parent ec05e9b978
commit 0e438e70fa
1 changed files with 6 additions and 3 deletions

View File

@ -292,8 +292,11 @@ static ALWAYS_INLINE void mc_dsp_init_x86(Dav1dMCDSPContext *const c) {
c->blend = BF(dav1d_blend, avx512icl);
c->blend_v = BF(dav1d_blend_v, avx512icl);
c->blend_h = BF(dav1d_blend_h, avx512icl);
c->warp8x8 = BF(dav1d_warp_affine_8x8, avx512icl);
c->warp8x8t = BF(dav1d_warp_affine_8x8t, avx512icl);
c->resize = BF(dav1d_resize, avx512icl);
if (!(flags & DAV1D_X86_CPU_FLAG_SLOW_GATHER)) {
c->resize = BF(dav1d_resize, avx512icl);
c->warp8x8 = BF(dav1d_warp_affine_8x8, avx512icl);
c->warp8x8t = BF(dav1d_warp_affine_8x8t, avx512icl);
}
#endif
}