[FFmpeg-devel] [PATCH 08/10] avcodec/x86/fdct: guard usage of undefined functions with preprocessor

Kacper Michajłow kasper93 at gmail.com
Tue Jul 22 22:16:09 EEST 2025


The asumption is that DCE will remove references to those functions.
However some compilers with certain instrumentation enabled doesn't DCE
those at all, resulting in linking failure. Tested with cl.exe -RTCu -RTCs.

Signed-off-by: Kacper Michajłow <kasper93 at gmail.com>
---
 libavcodec/x86/fdctdsp_init.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/libavcodec/x86/fdctdsp_init.c b/libavcodec/x86/fdctdsp_init.c
index 92a842433d..d43e45d220 100644
--- a/libavcodec/x86/fdctdsp_init.c
+++ b/libavcodec/x86/fdctdsp_init.c
@@ -31,8 +31,10 @@ av_cold void ff_fdctdsp_init_x86(FDCTDSPContext *c, AVCodecContext *avctx,
 
     if (!high_bit_depth) {
         if ((dct_algo == FF_DCT_AUTO || dct_algo == FF_DCT_MMX)) {
+#if HAVE_SSE2_INLINE
             if (INLINE_SSE2(cpu_flags))
                 c->fdct = ff_fdct_sse2;
+#endif
         }
     }
 }
-- 
2.50.1



More information about the ffmpeg-devel mailing list