From: Janne Grunau Date: Sun, 18 Feb 2018 23:47:53 +0000 (+0100) Subject: arm: make the assembler functions compatible with non ELF/gas platforms X-Git-Tag: archive/raspbian/3.0.11.1-2+rpi1~1^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2^2~1 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=dc5d9510321d211a9a00676509d58a4d074003b0;p=vlc.git arm: make the assembler functions compatible with non ELF/gas platforms Allow assembling arm neon functions for IOS and arm windows. Signed-off-by: Martin Storsjö (cherry picked from commit ec4d9649d1c03fe8f578db38b41dccdf5e11b005) Signed-off-by: Thomas Guillem [Add modules/arm_neon/asm.S missing from orig tarball.] Gbp-Pq: Name 0001-arm-make-the-assembler-functions-compatible-with-non.patch --- diff --git a/modules/arm_neon/asm.S b/modules/arm_neon/asm.S new file mode 100644 index 00000000..728391ea --- /dev/null +++ b/modules/arm_neon/asm.S @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2018 Janne Grunau + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifdef __APPLE__ +# define EXTERN_ASM _ +#else +# define EXTERN_ASM +#endif + +#if defined(__APPLE__) || defined(_WIN32) +# define HAVE_AS_ARCH_DIRECTIVE 0 +# define HAVE_AS_FPU_DIRECTIVE 0 +#else +# define HAVE_AS_ARCH_DIRECTIVE 1 +# define HAVE_AS_FPU_DIRECTIVE 1 +#endif + +.macro function name + .globl EXTERN_ASM\name +#ifdef __ELF__ + .type EXTERN_ASM\name, %function +#endif +EXTERN_ASM\name: +.endm