[FFmpeg-devel] [PATCH 1/2] Replace FFMIN/FFMAX by type specific macros

Rémi Denis-Courmont remi at remlab.net
Mon Jun 2 18:06:31 EEST 2025



Le 31 mai 2025 20:40:40 GMT+03:00, Marton Balint <cus at passwd.hu> a écrit :
>
>
>On Sat, 31 May 2025, Michael Niedermayer wrote:
>
>> This allows adjusting them to exactly match whatever is fastest on
>> a given CPU for each type.
>
>Did you use some tool to make this patch, or it was just manual work?
>
>Can't you use C11 generics to make this somewhat automatic?

So I tried to do exactly that, but you need multiple levels of generics. In the end, either the compiler crashed or my entire build system crashed because the compiler consumed too much memory.

And that was Debian, not some obscure compiler build of mine. As much as I generally would argue that compiler bugs aren't our problem, well...

>And if we are introducing something new, do we really want to stick to MIN/MAX macros which possibly evaluate their argument multiple times? It was always an issue, so I would love to see us moving away from it.

We can use static inlines to avoid that, but they won't work in const context. I don't think that there is a solution that would be portable, constant and expansion-safe all at the same time.


More information about the ffmpeg-devel mailing list