On Thu, May 30, 2024 at 10:54:46AM +0300, Rémi Denis-Courmont wrote: > Can't we just use the compiler built-ins here? AFAIK, they (GCC, LLVM) use > the same algorithm if the CPU doesn't support native CTZ. And they will pick > the right instruction if CPU does have CTZ. > > I get it that maybe it wasn't working so well 20 years ago, but we've > increased compiler version requirements since then.
ffmpeg is written in C not GNU-C nor LLVM-C so we need to have non buggy C code A modern compiler should turn a built-in into a efficient piece of code but so should it recognize that efficient piece of code and turn it into a single instruction if such exist. In the end with a modern compiler it shouldnt matter how you write this a loop, some optimized standard implementation or a built in the disavantage of a builtin is that it requires #ifs and checks for each compiler. So we should go with the simplest/cleanest that reliably produces optimal code across all supported platforms (and also consider potential future platforms so we dont have a maintaince nightmare but something that we can write once and expect it will be close to optimal forever) Above though is off topic in this thread, which was a bugfix that we need anyway (also for backporting) thx [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Does the universe only have a finite lifespan? No, its going to go on forever, its just that you wont like living in it. -- Hiranya Peiri
signature.asc
Description: PGP signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".