(cherry picked from commit 65345a5a30a0e866b6944c0e6184be3feca04335)
Signed-off-by: Diego Biurrun <[email protected]>

Conflicts:
        libavutil/cpu.c
        libavutil/cpu.h
---
 libavutil/cpu.c     | 1 +
 libavutil/cpu.h     | 1 +
 libavutil/x86/cpu.c | 2 ++
 3 files changed, 4 insertions(+)

diff --git a/libavutil/cpu.c b/libavutil/cpu.c
index 25895d6..60d0e14 100644
--- a/libavutil/cpu.c
+++ b/libavutil/cpu.c
@@ -64,6 +64,7 @@ static const struct {
     { AV_CPU_FLAG_FMA4,      "fma4"       },
     { AV_CPU_FLAG_3DNOW,     "3dnow"      },
     { AV_CPU_FLAG_3DNOWEXT,  "3dnowext"   },
+    { AV_CPU_FLAG_CMOV,      "cmov"       },
 #endif
     { 0 }
 };
diff --git a/libavutil/cpu.h b/libavutil/cpu.h
index df7bf44..e535580 100644
--- a/libavutil/cpu.h
+++ b/libavutil/cpu.h
@@ -41,6 +41,7 @@
 #define AV_CPU_FLAG_XOP          0x0400 ///< Bulldozer XOP functions
 #define AV_CPU_FLAG_FMA4         0x0800 ///< Bulldozer FMA4 functions
 #define AV_CPU_FLAG_IWMMXT       0x0100 ///< XScale IWMMXT
+#define AV_CPU_FLAG_CMOV         0x1000 ///< i686 cmov
 #define AV_CPU_FLAG_ALTIVEC      0x0001 ///< standard
 
 /**
diff --git a/libavutil/x86/cpu.c b/libavutil/x86/cpu.c
index 2424fe4..b87d3a3 100644
--- a/libavutil/x86/cpu.c
+++ b/libavutil/x86/cpu.c
@@ -83,6 +83,8 @@ int ff_get_cpu_flags_x86(void)
         cpuid(1, eax, ebx, ecx, std_caps);
         family = ((eax>>8)&0xf) + ((eax>>20)&0xff);
         model  = ((eax>>4)&0xf) + ((eax>>12)&0xf0);
+        if (std_caps & (1 << 15))
+            rval |= AV_CPU_FLAG_CMOV;
         if (std_caps & (1<<23))
             rval |= AV_CPU_FLAG_MMX;
         if (std_caps & (1<<25))
-- 
2.1.0

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to