mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-12-13 10:30:05 +01:00
all: Replace if (ARCH_FOO) checks by #if ARCH_FOO
This is more spec-compliant because it does not rely on dead-code elimination by the compiler. Especially MSVC has problems with this, as can be seen in https://ffmpeg.org/pipermail/ffmpeg-devel/2022-May/296373.html or https://ffmpeg.org/pipermail/ffmpeg-devel/2022-May/297022.html This commit does not eliminate every instance where we rely on dead code elimination: It only tackles branching to the initialization of arch-specific dsp code, not e.g. all uses of CONFIG_ and HAVE_ checks. But maybe it is already enough to compile FFmpeg with MSVC with whole-programm-optimizations enabled (if one does not disable too many components). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
@@ -150,15 +150,16 @@ av_cold AVFloatDSPContext *avpriv_float_dsp_alloc(int bit_exact)
|
||||
fdsp->butterflies_float = butterflies_float_c;
|
||||
fdsp->scalarproduct_float = avpriv_scalarproduct_float_c;
|
||||
|
||||
if (ARCH_AARCH64)
|
||||
ff_float_dsp_init_aarch64(fdsp);
|
||||
if (ARCH_ARM)
|
||||
ff_float_dsp_init_arm(fdsp);
|
||||
if (ARCH_PPC)
|
||||
ff_float_dsp_init_ppc(fdsp, bit_exact);
|
||||
if (ARCH_X86)
|
||||
ff_float_dsp_init_x86(fdsp);
|
||||
if (ARCH_MIPS)
|
||||
ff_float_dsp_init_mips(fdsp);
|
||||
#if ARCH_AARCH64
|
||||
ff_float_dsp_init_aarch64(fdsp);
|
||||
#elif ARCH_ARM
|
||||
ff_float_dsp_init_arm(fdsp);
|
||||
#elif ARCH_PPC
|
||||
ff_float_dsp_init_ppc(fdsp, bit_exact);
|
||||
#elif ARCH_X86
|
||||
ff_float_dsp_init_x86(fdsp);
|
||||
#elif ARCH_MIPS
|
||||
ff_float_dsp_init_mips(fdsp);
|
||||
#endif
|
||||
return fdsp;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user