[opus] [PATCH 1/3] Add configure check for Aarch64-specific Neon intrinsics.
Jonathan Lennox
jonathan at vidyo.com
Thu Nov 19 13:55:18 PST 2015
Note that these patches conflict with my (withdrawn) inline assembly for Aarch64 patches, since I’m reusing the same files to hold the optimized functions.
> On Nov 19, 2015, at 4:53 PM, Jonathan Lennox <jonathan at vidyo.com> wrote:
>
> ---
> configure.ac | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/configure.ac b/configure.ac
> index 90a06c8..adcb969 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -503,6 +503,26 @@ AS_IF([test x"$enable_intrinsics" = x"yes"],[
> [rtcd_support="$rtcd_support (NE10)"])
> ])
>
> + OPUS_CHECK_INTRINSICS(
> + [Aarch64 Neon],
> + [$ARM_NEON_INTR_CFLAGS],
> + [OPUS_ARM_MAY_HAVE_AARCH64_NEON_INTR],
> + [OPUS_ARM_PRESUME_AARCH64_NEON_INTR],
> + [[#include <arm_neon.h>
> + ]],
> + [[
> + static int32_t IN;
> + static int16_t OUT;
> + OUT = vqmovns_s32(IN);
> + ]]
> + )
> +
> + AS_IF([test x"$OPUS_ARM_PRESUME_AARCH64_NEON_INTR" = x"1"],
> + [
> + AC_DEFINE([OPUS_ARM_PRESUME_AARCH64_NEON_INTR], 1, [Define if binary requires Aarch64 Neon Intrinsics])
> + intrinsics_support="$intrinsics_support (NEON [Aarch64])"
> + ])
> +
> AS_IF([test x"$intrinsics_support" = x""],
> [intrinsics_support=no],
> [intrinsics_support="ARM$intrinsics_support"])
> --
> 2.4.9 (Apple Git-60)
>
> _______________________________________________
> opus mailing list
> opus at xiph.org
> http://lists.xiph.org/mailman/listinfo/opus
More information about the opus
mailing list