summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabrice Bellard <fabrice@bellard.org>2003-01-07 17:40:41 +0000
committerFabrice Bellard <fabrice@bellard.org>2003-01-07 17:40:41 +0000
commit52b41d7f70821fa594ee8f5941665005c61260c0 (patch)
tree7abda5a98b07bb8b72e9893bc19de25eaa7d1533
parent5a508a98e918f647278ff9458d6d815f944eebde (diff)
allow easy use of GCC vector builtins on x86 (has someone a better idea?)
Originally committed as revision 1409 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rwxr-xr-xconfigure25
1 files changed, 25 insertions, 0 deletions
diff --git a/configure b/configure
index 97b02faaea..28e74d0e37 100755
--- a/configure
+++ b/configure
@@ -469,6 +469,26 @@ for restrict_keyword in restrict __restrict__ __restrict; do
fi
done
+# test gcc version to see if vector builtins can be used
+# currently only used on i386 for MMX builtins
+cat > $TMPC << EOF
+int main(void) {
+#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2)
+return 0;
+#else
+#error no vector builtins
+#endif
+}
+EOF
+
+builtin_vector=no
+if $cc -o $TMPO $TMPC 2> /dev/null ; then
+ builtin_vector=yes
+ if test "$mmx" = "yes" ; then
+ CFLAGS="$CFLAGS -msse"
+ fi
+fi
+
if test x"$1" = x"-h" -o x"$1" = x"--help" ; then
cat << EOF
@@ -522,6 +542,7 @@ echo "CPU $cpu"
echo "Big Endian $bigendian"
if test $cpu = "x86"; then
echo "MMX enabled $mmx"
+echo "Vector Builtins $builtin_vector"
fi
if test $cpu = "mips"; then
echo "MMI enabled $mmi"
@@ -583,6 +604,10 @@ if test "$mmx" = "yes" ; then
echo "TARGET_MMX=yes" >> config.mak
echo "#define HAVE_MMX 1" >> $TMPH
fi
+if test "$builtin_vector" = "yes" ; then
+ echo "TARGET_BUILTIN_VECTOR=yes" >> config.mak
+ echo "#define HAVE_BUILTIN_VECTOR 1" >> $TMPH
+fi
if test "$mmi" = "yes" ; then
echo "TARGET_MMI=yes" >> config.mak
echo "#define HAVE_MMI 1" >> $TMPH