ARM: allow runtime masking of CPU features
[ffmpeg.git] / libavcodec / arm / mpegvideo_arm.c
index 26eed89..cce90c7 100644 (file)
@@ -18,6 +18,7 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
+#include "libavutil/arm/cpu.h"
 #include "libavcodec/avcodec.h"
 #include "libavcodec/dsputil.h"
 #include "libavcodec/mpegvideo.h"
@@ -40,11 +41,12 @@ void ff_dct_unquantize_h263_intra_neon(MpegEncContext *s, DCTELEM *block,
 
 void ff_MPV_common_init_arm(MpegEncContext *s)
 {
-#if HAVE_ARMV5TE
-    ff_MPV_common_init_armv5te(s);
-#endif
+    int cpu_flags = av_get_cpu_flags();
+
+    if (have_armv5te(cpu_flags))
+        ff_MPV_common_init_armv5te(s);
 
-    if (HAVE_NEON) {
+    if (have_neon(cpu_flags)) {
         s->dct_unquantize_h263_intra = ff_dct_unquantize_h263_intra_neon;
         s->dct_unquantize_h263_inter = ff_dct_unquantize_h263_inter_neon;
     }