[FFmpeg-devel] libavfilter/x86/vf_convolution.asm- fix missing decelerator for AVX512ICL sobel

James Darnley jdarnley at obe.tv
Fri Feb 24 15:51:08 EET 2023


On 2/24/23 04:00, Felix LeClair wrote:
> Fixes:  Compilation of Sobel with AVX512ICL
> Caused: Comment left without deleniator in AVX512ICL version of SOBEL
> 
> Testing:Confirmed working on AVX512 Alderlake (AKA SPR without AMX)

> diff --git a/libavfilter/x86/vf_convolution.asm b/libavfilter/x86/vf_convolution.asm
> index 9ac9ef5d73..8b85897819 100644
> --- a/libavfilter/x86/vf_convolution.asm
> +++ b/libavfilter/x86/vf_convolution.asm
> @@ -232,8 +232,8 @@ cglobal filter_sobel, 4, 15, 7, dst, width, rdiv, bias, matrix, ptr, c0, c1, c2,
>      psubd         m4, m5
>      vpermb        m3, m6, m3
>      mova          m5, m4
> -    vpdpbusd      m4, m2, [sobel_mulA] {1to16}
> -    vpdpbusd      m5, m3, [sobel_mulB] {1to16}
> +    vpdpbusd      m4, m2, [sobel_mulA]; {1to16}
> +    vpdpbusd      m5, m3, [sobel_mulB]; {1to16}
>  
>      cvtdq2ps  m4, m4
>      mulps     m4, m4


Fix compilation with what?

I'm not familiar with the sobel algorith/function so I can't say whether 
the code is correct.  However those constants are only dword sized and 
that is how you do a memory broadcast with avx512(icl).  Furthermore 
testing your change on an icl system results in a failure in checkasm.

So what program and what version fails to assemble that?

[re-sending to list]


More information about the ffmpeg-devel mailing list