Commit 125ec24e authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont

Revert "Remove unused 3dnow and mmxext checks"

This reverts commit 6fe7eb60.
These checks are still in use outside of memcpy() optimizations.
Note this revert breaks the build on some platforms due to code rot.
parent 0fa7047b
...@@ -1095,6 +1095,7 @@ AC_ARG_ENABLE(mmx, ...@@ -1095,6 +1095,7 @@ AC_ARG_ENABLE(mmx,
esac esac
]) ])
have_mmx="no" have_mmx="no"
have_mmxext="no"
AS_IF([test "${enable_mmx}" != "no"], [ AS_IF([test "${enable_mmx}" != "no"], [
ARCH="${ARCH} mmx" ARCH="${ARCH} mmx"
VLC_SAVE_FLAGS VLC_SAVE_FLAGS
...@@ -1141,9 +1142,26 @@ asm volatile("packuswb %%mm1,%%mm2"::"r"(p):"mm1", "mm2"); ...@@ -1141,9 +1142,26 @@ asm volatile("packuswb %%mm1,%%mm2"::"r"(p):"mm1", "mm2");
have_mmx="yes" have_mmx="yes"
]) ])
AC_CACHE_CHECK([if $CC groks MMX EXT inline assembly],
[ac_cv_mmxext_inline], [
AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[
void *p;
asm volatile("maskmovq %%mm1,%%mm2"::"r"(p):"mm1", "mm2");
]])
], [
ac_cv_mmxext_inline=yes
], [
ac_cv_mmxext_inline=no
])
])
VLC_RESTORE_FLAGS VLC_RESTORE_FLAGS
AS_IF([test "${ac_cv_mmxext_inline}" != "no"], [
AC_DEFINE(CAN_COMPILE_MMXEXT, 1, [Define to 1 if MMX EXT inline assembly is available.])
have_mmxext="yes"
])
]) ])
AM_CONDITIONAL([HAVE_MMX], [test "${have_mmx}" = "yes"]) AM_CONDITIONAL([HAVE_MMX], [test "${have_mmx}" = "yes"])
AM_CONDITIONAL([HAVE_MMXEXT], [test "${have_mmxext}" = "yes"])
dnl Check for fully workin SSE2 intrinsics dnl Check for fully workin SSE2 intrinsics
dnl We need support for -mmmx, we need <emmintrin.h>, and we also need a dnl We need support for -mmmx, we need <emmintrin.h>, and we also need a
...@@ -1307,6 +1325,29 @@ asm volatile("insertq %%xmm1,%%xmm0"::"r"(p):"xmm0", "xmm1"); ...@@ -1307,6 +1325,29 @@ asm volatile("insertq %%xmm1,%%xmm0"::"r"(p):"xmm0", "xmm1");
]) ])
AM_CONDITIONAL([HAVE_SSE2], [test "$have_sse2" = "yes"]) AM_CONDITIONAL([HAVE_SSE2], [test "$have_sse2" = "yes"])
VLC_SAVE_FLAGS
CFLAGS="${CFLAGS} -mmmx"
have_3dnow="no"
AC_CACHE_CHECK([if $CC groks 3D Now! inline assembly], [ac_cv_3dnow_inline], [
AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[[
void *p;
asm volatile("pfadd %%mm1,%%mm2"::"r"(p):"mm1", "mm2");
]])
], [
ac_cv_3dnow_inline=yes
], [
ac_cv_3dnow_inline=no
])
])
VLC_RESTORE_FLAGS
AS_IF([test "${ac_cv_3dnow_inline}" != "no"], [
AC_DEFINE(CAN_COMPILE_3DNOW, 1,
[Define to 1 if 3D Now! inline assembly is available.])
have_3dnow="yes"
])
AM_CONDITIONAL([HAVE_3DNOW], [test "$have_3dnow" = "yes"])
AC_ARG_ENABLE(neon, AC_ARG_ENABLE(neon,
[AS_HELP_STRING([--disable-neon], [AS_HELP_STRING([--disable-neon],
[disable NEON optimizations (default auto)])],, [ [disable NEON optimizations (default auto)])],, [
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment