diff options
author | davilla <davilla@svn> | 2010-05-20 02:34:29 +0000 |
---|---|---|
committer | davilla <davilla@svn> | 2010-05-20 02:34:29 +0000 |
commit | 973121c89872e04418f610579e5b3f6cf1e56d90 (patch) | |
tree | 48ef7e3f12652abff79aea837bcf1930648fbff5 /configure.in | |
parent | bde8e20874fcf3bf0924d8b97d1fcbc7a06ba330 (diff) |
[arm] choose armv7a/cortex-a9/vfpv3-d16 vs armv6/cortex-a8 for tegra2 based on compiler capabilities instead of compiler version
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk@30324 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 25 |
1 files changed, 11 insertions, 14 deletions
diff --git a/configure.in b/configure.in index 80b3b97898..e7ab965dae 100644 --- a/configure.in +++ b/configure.in @@ -343,21 +343,18 @@ if test "$host_vendor" = "apple" ; then elif expr "X$host_cpu" : 'Xarm.*' > /dev/null; then CFLAGS="$CFLAGS -mfloat-abi=softfp -mno-apcs-stack-check" CXXFLAGS="$CXXFLAGS -mfloat-abi=softfp -mno-apcs-stack-check" - FFMPEG_EXTRACFLAGS=" -mfloat-abi=softfp" + FFMPEG_EXTRACFLAGS="-mfloat-abi=softfp" if test "$use_tegra" = "yes"; then - GCCVERSION="`$CC -dumpversion 2>&1`" - case $GCCVERSION in - 4.5.*) - # Compile for ARMv7a architecture, CortexA9 cpu and vfpv3-d16 coprocessor (Tegra2) - CFLAGS+=" -Wa,-march=armv7a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mthumb-interwork" - CXXFLAGS+=" -Wa,-march=armv7a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mthumb-interwork" - FFMPEG_EXTRACFLAGS+=" -mtune=cortex-a9 -mfpu=vfpv3-d16" - ;; - *) - # anything else, we have no clue so play it safe - CFLAGS+=" -Wa,-march=armv6 -mtune=cortex-a8 -mthumb-interwork" - CXXFLAGS+=" -Wa,-march=armv6 -mtune=cortex-a8 -mthumb-interwork" - esac + # Compile for ARMv7a architecture, need to test gcc for vfpv3-d16 support + SAVE_CFLAGS="$CFLAGS" + CFLAGS="-mfpu=vfpv3-d16" + AC_COMPILE_IFELSE( + [int foo;], + [ CFLAGS="$SAVE_CFLAGS -Wa,-march=armv7a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mthumb-interwork" + CXXFLAGS="$CXXFLAGS -Wa,-march=armv7a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mthumb-interwork" + FFMPEG_EXTRACFLAGS+=" -mtune=cortex-a9 -mfpu=vfpv3-d16"], + [ CFLAGS="$SAVE_CFLAGS -Wa,-march=armv6 -mtune=cortex-a8 -mthumb-interwork" + CXXFLAGS="$CXXFLAGS -Wa,-march=armv6 -mtune=cortex-a8 -mthumb-interwork"]) else # Compile for ARMv7a architecture, CortexA8 cpu and NEON coprocessor CFLAGS+=" -Wa,-march=armv7a -mcpu=cortex-a8 -mfpu=neon -mvectorize-with-neon-quad" |