summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xconfigure16
-rw-r--r--libavcodec/x86/mathops.h6
2 files changed, 10 insertions, 12 deletions
diff --git a/configure b/configure
index 2dc71efed3..5e8e70e962 100755
--- a/configure
+++ b/configure
@@ -1253,7 +1253,6 @@ HAVE_LIST="
cdio_paranoia_h
cdio_paranoia_paranoia_h
closesocket
- cmov
CommandLineToArgvW
cpunop
CryptGenRandom
@@ -1287,6 +1286,7 @@ HAVE_LIST="
gettimeofday
gnu_as
gsm_h
+ i686
ibm_asm
inet_aton
io_h
@@ -1470,7 +1470,7 @@ ppc4xx_deps="ppc"
vis_deps="sparc"
-x86_64_suggest="cmov fast_cmov"
+x86_64_suggest="fast_cmov i686"
amd3dnow_deps="mmx"
amd3dnowext_deps="amd3dnow"
@@ -2870,21 +2870,21 @@ elif enabled x86; then
cpuflags="-march=$cpu"
disable mmx
;;
- # targets that do NOT support conditional mov (cmov)
+ # targets that do NOT support nopl and conditional mov (cmov)
pentium-mmx|k6|k6-[23]|winchip-c6|winchip2|c3)
cpuflags="-march=$cpu"
- disable cmov
+ disable i686
;;
- # targets that do support conditional mov (cmov)
+ # targets that do support nopl and conditional mov (cmov)
i686|pentiumpro|pentium[23]|pentium-m|athlon|athlon-tbird|athlon-4|athlon-[mx]p|athlon64*|k8*|opteron*|athlon-fx|core2|corei7*|amdfam10|barcelona|atom|bdver*)
cpuflags="-march=$cpu"
- enable cmov
+ enable i686
enable fast_cmov
;;
# targets that do support conditional mov but on which it's slow
pentium4|pentium4m|prescott|nocona)
cpuflags="-march=$cpu"
- enable cmov
+ enable i686
disable fast_cmov
;;
esac
@@ -3895,7 +3895,7 @@ if enabled x86; then
echo "SSSE3 enabled ${ssse3-no}"
echo "AVX enabled ${avx-no}"
echo "FMA4 enabled ${fma4-no}"
- echo "CMOV enabled ${cmov-no}"
+ echo "i686 features enabled ${i686-no}"
echo "CMOV is fast ${fast_cmov-no}"
echo "EBX available ${ebx_available-no}"
echo "EBP available ${ebp_available-no}"
diff --git a/libavcodec/x86/mathops.h b/libavcodec/x86/mathops.h
index cd408ac5a6..32c88705e5 100644
--- a/libavcodec/x86/mathops.h
+++ b/libavcodec/x86/mathops.h
@@ -68,7 +68,7 @@ static av_always_inline av_const int64_t MUL64(int a, int b)
#endif /* ARCH_X86_32 */
-#if HAVE_CMOV
+#if HAVE_I686
/* median of 3 */
#define mid_pred mid_pred
static inline av_const int mid_pred(int a, int b, int c)
@@ -87,9 +87,7 @@ static inline av_const int mid_pred(int a, int b, int c)
);
return i;
}
-#endif
-#if HAVE_CMOV
#define COPY3_IF_LT(x, y, a, b, c, d)\
__asm__ volatile(\
"cmpl %0, %3 \n\t"\
@@ -99,7 +97,7 @@ __asm__ volatile(\
: "+&r" (x), "+&r" (a), "+r" (c)\
: "r" (y), "r" (b), "r" (d)\
);
-#endif
+#endif /* HAVE_I686 */
#define MASK_ABS(mask, level) \
__asm__ ("cltd \n\t" \