diff options
author | Viswanath Puttagunta <viswanath.puttagunta@linaro.org> | 2015-05-15 12:42:25 -0500 |
---|---|---|
committer | Jean-Marc Valin <jmvalin@jmvalin.ca> | 2015-10-07 18:09:20 -0400 |
commit | ba8713ccb5fd1ee893630d2d1bcd86aacfc3aeea (patch) | |
tree | 03882eef35e3832f77b70cf41ac2144d08021995 /configure.ac | |
parent | 3807af3b3b6109d38dce236abf8c96b8724da863 (diff) | |
download | opus-ba8713ccb5fd1ee893630d2d1bcd86aacfc3aeea.tar.gz |
armv7: Optimize fixed point FFT using NE10 library
Uses NEON optimized fixed point FFT routines in NE10 library.
Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 55 |
1 files changed, 24 insertions, 31 deletions
diff --git a/configure.ac b/configure.ac index d94fc7e2..cfcf95c3 100644 --- a/configure.ac +++ b/configure.ac @@ -477,43 +477,36 @@ AS_IF([test x"$enable_intrinsics" = x"yes"],[ ] ) - #Currently we only have intrinsic optimizations for floating point - AS_IF([test x"$enable_float" = x"yes"], + AS_IF([test x"$OPUS_ARM_MAY_HAVE_NEON_INTR" = x"1"], [ - AS_IF([test x"$OPUS_ARM_MAY_HAVE_NEON_INTR" = x"1"], - [ - AC_DEFINE([OPUS_ARM_MAY_HAVE_NEON_INTR], 1, [Compiler supports ARMv7 Neon Intrinsics]) - intrinsics_support="$intrinsics_support (Neon_Intrinsics)" - - AS_IF([test x"enable_rtcd" != x"" && test x"$OPUS_ARM_PRESUME_NEON_INTR" != x"1"], - [rtcd_support="$rtcd_support (ARMv7_Neon_Intrinsics)"],[]) - - AS_IF([test x"$OPUS_ARM_PRESUME_NEON_INTR" = x"1"], - [AC_DEFINE([OPUS_ARM_PRESUME_NEON_INTR], 1, [Define if binary requires NEON intrinsics support])]) + AC_DEFINE([OPUS_ARM_MAY_HAVE_NEON_INTR], 1, [Compiler supports ARMv7 Neon Intrinsics]) + intrinsics_support="$intrinsics_support (Neon_Intrinsics)" - OPUS_PATH_NE10() - AS_IF([test x"$NE10_LIBS" != x""], - [ - intrinsics_support="$intrinsics_support (NE10)" - AS_IF([test x"enable_rtcd" != x"" \ - && test x"$OPUS_ARM_PRESUME_NEON_INTR" != x"1"], - [rtcd_support="$rtcd_support (NE10)"],[]) - ]) + AS_IF([test x"enable_rtcd" != x"" && test x"$OPUS_ARM_PRESUME_NEON_INTR" != x"1"], + [rtcd_support="$rtcd_support (ARMv7_Neon_Intrinsics)"],[]) - AS_IF([test x"$rtcd_support" = x""], - [rtcd_support=no]) + AS_IF([test x"$OPUS_ARM_PRESUME_NEON_INTR" = x"1"], + [AC_DEFINE([OPUS_ARM_PRESUME_NEON_INTR], 1, [Define if binary requires NEON intrinsics support])]) - AS_IF([test x"$intrinsics_support" = x""], - [intrinsics_support=no], - [intrinsics_support="arm$intrinsics_support"]) - ], + OPUS_PATH_NE10() + AS_IF([test x"$NE10_LIBS" != x""], [ - AC_MSG_WARN([Compiler does not support ARM intrinsics]) - intrinsics_support=no + intrinsics_support="$intrinsics_support (NE10)" + AS_IF([test x"enable_rtcd" != x"" \ + && test x"$OPUS_ARM_PRESUME_NEON_INTR" != x"1"], + [rtcd_support="$rtcd_support (NE10)"],[]) ]) - ], [ - AC_MSG_WARN([Currently only have ARM intrinsics for float]) - intrinsics_support=no + + AS_IF([test x"$rtcd_support" = x""], + [rtcd_support=no]) + + AS_IF([test x"$intrinsics_support" = x""], + [intrinsics_support=no], + [intrinsics_support="arm$intrinsics_support"]) + ], + [ + AC_MSG_WARN([Compiler does not support ARM intrinsics]) + intrinsics_support=no ]) ], [i?86|x86_64], |