diff --git a/configure b/configure index 9e1b6e375b..308e2f180b 100755 --- a/configure +++ b/configure @@ -78,6 +78,7 @@ show_help(){ echo " --powerpc-perf-enable enable performance report on PPC" echo " (requires enabling PMC)" echo " --disable-mmx disable MMX usage" + echo " --disable-armv5te disable armv5te usage" echo " --disable-iwmmxt disable iwmmxt usage" echo " --disable-altivec disable AltiVec usage" echo " --disable-audio-oss disable OSS audio support [default=no]" @@ -345,6 +346,7 @@ cpu=`uname -m` tune="generic" powerpc_perf="no" mmx="default" +armv5te="default" iwmmxt="default" altivec="default" mmi="default" @@ -362,7 +364,7 @@ case "$cpu" in fi ;; # armv4l is a subset of armv5tel - armv4l|armv5tel) + arm|armv4l|armv5tel) cpu="armv4l" ;; alpha) @@ -719,6 +721,8 @@ for opt do ;; --disable-mmx) mmx="no" ;; + --disable-armv5te) armv5te="no" + ;; --disable-iwmmxt) iwmmxt="no" ;; --disable-altivec) altivec="no" @@ -999,6 +1003,16 @@ if test $mmx = "default"; then fi fi +# check armv5te instructions support +if test $armv5te = "default" -a $cpu = "armv4l"; then + armv5te=no + check_cc <> config.mak echo "#define HAVE_MM3DNOW 1" >> $TMPH fi +if test "$armv5te" = "yes" ; then + echo "TARGET_ARMV5TE=yes" >> config.mak + echo "#define HAVE_ARMV5TE 1" >> $TMPH +fi if test "$iwmmxt" = "yes" ; then echo "TARGET_IWMMXT=yes" >> config.mak echo "#define HAVE_IWMMXT 1" >> $TMPH diff --git a/libavcodec/mpegaudiodec.c b/libavcodec/mpegaudiodec.c index e9c78332bc..d49ce66b11 100644 --- a/libavcodec/mpegaudiodec.c +++ b/libavcodec/mpegaudiodec.c @@ -27,11 +27,6 @@ #include "bitstream.h" #include "dsputil.h" -/* Assume that all Intel XScale processors support armv5 edsp instructions */ -#if defined(ARCH_ARMV4L) && defined (HAVE_IWMMXT) -#define ARCH_ARM5E -#endif - /* * TODO: * - in low precision mode, use more 16 bit multiplies in synth filter @@ -797,7 +792,7 @@ static inline int round_sample(int *sum) # define MULS(ra, rb) \ ({ int __rt; asm ("mullhw %0, %1, %2" : "=r" (__rt) : "r" (ra), "r" (rb)); __rt; }) -# elif defined(ARCH_ARM5E) +# elif defined(HAVE_ARMV5TE) /* signed 16x16 -> 32 multiply add accumulate */ # define MACS(rt, ra, rb) \