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 <[email protected]>
diff --git a/libavcodec/aacenc.c b/libavcodec/aacenc.c
index eb09132..408c031 100644
--- a/libavcodec/aacenc.c
+++ b/libavcodec/aacenc.c
@@ -1096,11 +1096,13 @@
s->abs_pow34 = abs_pow34_v;
s->quant_bands = quantize_bands;
- if (ARCH_X86)
- ff_aac_dsp_init_x86(s);
+#if ARCH_X86
+ ff_aac_dsp_init_x86(s);
+#endif
- if (HAVE_MIPSDSP)
- ff_aac_coder_init_mips(s);
+#if HAVE_MIPSDSP
+ ff_aac_coder_init_mips(s);
+#endif
ff_af_queue_init(avctx, &s->afq);
ff_aac_tableinit();