From e85591adcf0db4b047f71ff594644c1331bc9cca Mon Sep 17 00:00:00 2001 From: diego Date: Thu, 1 Dec 2005 02:51:22 +0000 Subject: AMD's Family 6 CPUs come with two flavors: one that supports SSE and one that dosen't. However, they're not easily distinguishible from their signature (family, model and stepping). Original configure might set -march=athlon-4 for a CPU that dosen't support SSE and causes gcc to generate code that won't run on the target machine. Closes bug #267. patch by Zuxy Meng zuxy -- dot -- meng -- at -- gmail -- dot -- com git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@17068 b3059339-0415-0410-9bf9-f77b7e298cf2 --- configure | 25 +++++++++---------------- 1 file changed, 9 insertions(+), 16 deletions(-) (limited to 'configure') diff --git a/configure b/configure index f30dfd17fd..dab0944b03 100755 --- a/configure +++ b/configure @@ -837,22 +837,15 @@ case "$host_arch" in fi ;; 6) iproc=686 - if test "$pmodel" -ge 7; then - proc=athlon-4 - elif test "$pmodel" -ge 6; then - # only Athlon XP supports ssem MP, Duron etc not - # but most of them are CPUID 666, so check if sse detected - # btw. there is also athlon-mp opt, but we need extended - # CPUID to detect if CPU is SMP capable -> athlon-mp ::atmos - if test "$_sse" = yes && test "$pstepping" -ge 2; then - proc=athlon-xp - else - proc=athlon-4 - fi - elif test "$pmodel" -ge 4; then - proc=athlon-tbird + # It's a bit difficult to determine the correct type of Family 6 + # AMD CPUs just from their signature. Instead, we check directly + # whether it supports SSE. + if test "$_sse" = yes; then + # gcc treats athlon-xp, athlon-4 and athlon-mp similarly. + proc=athlon-xp else - proc=athlon # TODO: should the Duron Spitfire be considered a Thunderbird instead? + # Again, gcc treats athlon and athlon-tbird similarly. + proc=athlon fi ;; 15) iproc=686 @@ -861,7 +854,7 @@ case "$host_arch" in proc=k8 ;; - *) proc=athlon-xp iproc=686 ;; + *) proc=k8 iproc=686 ;; esac ;; GenuineIntel) -- cgit v1.2.3