diff options
author | Luiz Augusto von Dentz <luiz.von.dentz@intel.com> | 2020-12-03 13:29:47 -0800 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2020-12-03 22:57:59 +0100 |
commit | 76f4d931d237517c443dd793390ed7d73b12746e (patch) | |
tree | 340e8f8738d8fd358435046e916069965d02f581 | |
parent | 10310fb983b0fced7db7bdb2d14ec03c252f8a88 (diff) | |
download | sbc-76f4d931d237517c443dd793390ed7d73b12746e.tar.gz |
sbc_primitives: Fix build on non-x86 arch
Check if SBC_BUILD_WITH_MMX_SUPPORT is defined otherwise
sbc_init_primitives_mmx will not be declared and
_builtin_cpu_supports(“mmx”)) likely fail:
CC sbc/sbc_primitives.lo
sbc/sbc_primitives.c: In function ‘sbc_init_primitives_x86’:
sbc/sbc_primitives.c:599:3: warning: implicit declaration of function
‘sbc_init_primitives_mmx’; did you mean ‘sbc_init_primitives_x86’?
[-Wimplicit-function-declaration]
599 | sbc_init_primitives_mmx(state);
| ^~~~~~~~~~~~~~~~~~~~~~~
| sbc_init_primitives_x86
sbc/sbc_primitives.c: In function ‘sbc_init_primitives’:
sbc/sbc_primitives.c:598:6: error: hwcap ‘mmx’ is an invalid argument to
builtin ‘__builtin_cpu_supports’
598 | if (__builtin_cpu_supports(“mmx”))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[1]: *** [Makefile:711: sbc/sbc_primitives.lo] Error 1
make: *** [Makefile:453: all] Error 2
-rw-r--r-- | sbc/sbc_primitives.c | 2 | ||||
-rw-r--r-- | sbc/sbc_primitives_mmx.c | 5 |
2 files changed, 2 insertions, 5 deletions
diff --git a/sbc/sbc_primitives.c b/sbc/sbc_primitives.c index c9d1045..97a75be 100644 --- a/sbc/sbc_primitives.c +++ b/sbc/sbc_primitives.c @@ -595,8 +595,10 @@ static void sbc_init_primitives_x86(struct sbc_encoder_state *state) { __builtin_cpu_init(); +#ifdef SBC_BUILD_WITH_MMX_SUPPORT if (__builtin_cpu_supports("mmx")) sbc_init_primitives_mmx(state); +#endif #ifdef SBC_BUILD_WITH_SSE_SUPPORT if (__builtin_cpu_supports("sse4.2")) diff --git a/sbc/sbc_primitives_mmx.c b/sbc/sbc_primitives_mmx.c index 6984ce5..c7655ac 100644 --- a/sbc/sbc_primitives_mmx.c +++ b/sbc/sbc_primitives_mmx.c @@ -360,9 +360,4 @@ void sbc_init_primitives_mmx(struct sbc_encoder_state *state) state->sbc_calc_scalefactors = sbc_calc_scalefactors_mmx; state->implementation_info = "MMX"; } - -#else -void sbc_init_primitives_mmx(struct sbc_encoder_state *state) -{ -} #endif |