x86: Require fast gathers for AVX-512 horizontal loopfilters

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:20 +01:00 committed by Henrik Gramner
parent a04a724719
commit 0a8d66402e
1 changed files with 5 additions and 2 deletions

View File

@ -58,9 +58,12 @@ static ALWAYS_INLINE void loop_filter_dsp_init_x86(Dav1dLoopFilterDSPContext *co
if (!(flags & DAV1D_X86_CPU_FLAG_AVX512ICL)) return;
c->loop_filter_sb[0][0] = BF(dav1d_lpf_h_sb_y, avx512icl);
c->loop_filter_sb[0][1] = BF(dav1d_lpf_v_sb_y, avx512icl);
c->loop_filter_sb[1][0] = BF(dav1d_lpf_h_sb_uv, avx512icl);
c->loop_filter_sb[1][1] = BF(dav1d_lpf_v_sb_uv, avx512icl);
if (!(flags & DAV1D_X86_CPU_FLAG_SLOW_GATHER)) {
c->loop_filter_sb[0][0] = BF(dav1d_lpf_h_sb_y, avx512icl);
c->loop_filter_sb[1][0] = BF(dav1d_lpf_h_sb_uv, avx512icl);
}
#endif
}