|
|
|
@ -2794,92 +2794,21 @@ enable $arch |
|
|
|
|
# Add processor-specific flags |
|
|
|
|
if test "$cpu" = generic; then |
|
|
|
|
: do nothing |
|
|
|
|
elif enabled ppc; then |
|
|
|
|
|
|
|
|
|
case $(tolower $cpu) in |
|
|
|
|
601|ppc601|powerpc601) |
|
|
|
|
cpuflags="-mcpu=601" |
|
|
|
|
disable altivec |
|
|
|
|
;; |
|
|
|
|
603*|ppc603*|powerpc603*) |
|
|
|
|
cpuflags="-mcpu=603" |
|
|
|
|
disable altivec |
|
|
|
|
;; |
|
|
|
|
604*|ppc604*|powerpc604*) |
|
|
|
|
cpuflags="-mcpu=604" |
|
|
|
|
disable altivec |
|
|
|
|
;; |
|
|
|
|
g3|75*|ppc75*|powerpc75*) |
|
|
|
|
cpuflags="-mcpu=750" |
|
|
|
|
disable altivec |
|
|
|
|
;; |
|
|
|
|
g4|745*|ppc745*|powerpc745*) |
|
|
|
|
cpuflags="-mcpu=7450" |
|
|
|
|
;; |
|
|
|
|
74*|ppc74*|powerpc74*) |
|
|
|
|
cpuflags="-mcpu=7400" |
|
|
|
|
;; |
|
|
|
|
g5|970|ppc970|powerpc970) |
|
|
|
|
cpuflags="-mcpu=970" |
|
|
|
|
;; |
|
|
|
|
power[3-7]*) |
|
|
|
|
cpuflags="-mcpu=$cpu" |
|
|
|
|
;; |
|
|
|
|
cell) |
|
|
|
|
cpuflags="-mcpu=cell" |
|
|
|
|
enable ldbrx |
|
|
|
|
;; |
|
|
|
|
e500mc) |
|
|
|
|
cpuflags="-mcpu=e500mc" |
|
|
|
|
disable altivec |
|
|
|
|
;; |
|
|
|
|
e500v2) |
|
|
|
|
cpuflags="-mcpu=8548 -mhard-float -mfloat-gprs=double" |
|
|
|
|
disable altivec |
|
|
|
|
;; |
|
|
|
|
e500) |
|
|
|
|
cpuflags="-mcpu=8540 -mhard-float" |
|
|
|
|
disable altivec |
|
|
|
|
;; |
|
|
|
|
esac |
|
|
|
|
|
|
|
|
|
elif enabled x86; then |
|
|
|
|
elif enabled aarch64; then |
|
|
|
|
|
|
|
|
|
case $cpu in |
|
|
|
|
i[345]86|pentium) |
|
|
|
|
cpuflags="-march=$cpu" |
|
|
|
|
disable mmx |
|
|
|
|
;; |
|
|
|
|
# targets that do NOT support conditional mov (cmov) |
|
|
|
|
pentium-mmx|k6|k6-[23]|winchip-c6|winchip2|c3) |
|
|
|
|
cpuflags="-march=$cpu" |
|
|
|
|
disable cmov |
|
|
|
|
;; |
|
|
|
|
# targets that do support conditional mov (cmov) |
|
|
|
|
i686|pentiumpro|pentium[23]|pentium-m|athlon|athlon-tbird|athlon-4|athlon-[mx]p|athlon64*|k8*|opteron*|athlon-fx|core2|amdfam10|barcelona|atom|bdver*) |
|
|
|
|
armv*) |
|
|
|
|
cpuflags="-march=$cpu" |
|
|
|
|
enable cmov |
|
|
|
|
enable fast_cmov |
|
|
|
|
;; |
|
|
|
|
# targets that do support conditional mov but on which it's slow |
|
|
|
|
pentium4|pentium4m|prescott|nocona) |
|
|
|
|
cpuflags="-march=$cpu" |
|
|
|
|
enable cmov |
|
|
|
|
disable fast_cmov |
|
|
|
|
*) |
|
|
|
|
cpuflags="-mcpu=$cpu" |
|
|
|
|
;; |
|
|
|
|
esac |
|
|
|
|
|
|
|
|
|
elif enabled sparc; then |
|
|
|
|
elif enabled alpha; then |
|
|
|
|
|
|
|
|
|
case $cpu in |
|
|
|
|
cypress|f93[04]|tsc701|sparcl*|supersparc|hypersparc|niagara|v[789]) |
|
|
|
|
cpuflags="-mcpu=$cpu" |
|
|
|
|
disable vis |
|
|
|
|
;; |
|
|
|
|
ultrasparc*|niagara[234]) |
|
|
|
|
cpuflags="-mcpu=$cpu" |
|
|
|
|
;; |
|
|
|
|
esac |
|
|
|
|
cpuflags="-mcpu=$cpu" |
|
|
|
|
|
|
|
|
|
elif enabled arm; then |
|
|
|
|
|
|
|
|
@ -2901,9 +2830,26 @@ elif enabled arm; then |
|
|
|
|
;; |
|
|
|
|
esac |
|
|
|
|
|
|
|
|
|
elif enabled alpha; then |
|
|
|
|
elif enabled avr32; then |
|
|
|
|
|
|
|
|
|
cpuflags="-mcpu=$cpu" |
|
|
|
|
case $cpu in |
|
|
|
|
ap7[02]0[0-2]) |
|
|
|
|
subarch="avr32_ap" |
|
|
|
|
cpuflags="-mpart=$cpu" |
|
|
|
|
;; |
|
|
|
|
ap) |
|
|
|
|
subarch="avr32_ap" |
|
|
|
|
cpuflags="-march=$cpu" |
|
|
|
|
;; |
|
|
|
|
uc3[ab]*) |
|
|
|
|
subarch="avr32_uc" |
|
|
|
|
cpuflags="-mcpu=$cpu" |
|
|
|
|
;; |
|
|
|
|
uc) |
|
|
|
|
subarch="avr32_uc" |
|
|
|
|
cpuflags="-march=$cpu" |
|
|
|
|
;; |
|
|
|
|
esac |
|
|
|
|
|
|
|
|
|
elif enabled bfin; then |
|
|
|
|
|
|
|
|
@ -2935,38 +2881,93 @@ elif enabled mips; then |
|
|
|
|
;; |
|
|
|
|
esac |
|
|
|
|
|
|
|
|
|
elif enabled avr32; then |
|
|
|
|
elif enabled ppc; then |
|
|
|
|
|
|
|
|
|
case $cpu in |
|
|
|
|
ap7[02]0[0-2]) |
|
|
|
|
subarch="avr32_ap" |
|
|
|
|
cpuflags="-mpart=$cpu" |
|
|
|
|
case $(tolower $cpu) in |
|
|
|
|
601|ppc601|powerpc601) |
|
|
|
|
cpuflags="-mcpu=601" |
|
|
|
|
disable altivec |
|
|
|
|
;; |
|
|
|
|
ap) |
|
|
|
|
subarch="avr32_ap" |
|
|
|
|
cpuflags="-march=$cpu" |
|
|
|
|
603*|ppc603*|powerpc603*) |
|
|
|
|
cpuflags="-mcpu=603" |
|
|
|
|
disable altivec |
|
|
|
|
;; |
|
|
|
|
uc3[ab]*) |
|
|
|
|
subarch="avr32_uc" |
|
|
|
|
604*|ppc604*|powerpc604*) |
|
|
|
|
cpuflags="-mcpu=604" |
|
|
|
|
disable altivec |
|
|
|
|
;; |
|
|
|
|
g3|75*|ppc75*|powerpc75*) |
|
|
|
|
cpuflags="-mcpu=750" |
|
|
|
|
disable altivec |
|
|
|
|
;; |
|
|
|
|
g4|745*|ppc745*|powerpc745*) |
|
|
|
|
cpuflags="-mcpu=7450" |
|
|
|
|
;; |
|
|
|
|
74*|ppc74*|powerpc74*) |
|
|
|
|
cpuflags="-mcpu=7400" |
|
|
|
|
;; |
|
|
|
|
g5|970|ppc970|powerpc970) |
|
|
|
|
cpuflags="-mcpu=970" |
|
|
|
|
;; |
|
|
|
|
power[3-7]*) |
|
|
|
|
cpuflags="-mcpu=$cpu" |
|
|
|
|
;; |
|
|
|
|
uc) |
|
|
|
|
subarch="avr32_uc" |
|
|
|
|
cpuflags="-march=$cpu" |
|
|
|
|
cell) |
|
|
|
|
cpuflags="-mcpu=cell" |
|
|
|
|
enable ldbrx |
|
|
|
|
;; |
|
|
|
|
e500mc) |
|
|
|
|
cpuflags="-mcpu=e500mc" |
|
|
|
|
disable altivec |
|
|
|
|
;; |
|
|
|
|
e500v2) |
|
|
|
|
cpuflags="-mcpu=8548 -mhard-float -mfloat-gprs=double" |
|
|
|
|
disable altivec |
|
|
|
|
;; |
|
|
|
|
e500) |
|
|
|
|
cpuflags="-mcpu=8540 -mhard-float" |
|
|
|
|
disable altivec |
|
|
|
|
;; |
|
|
|
|
esac |
|
|
|
|
|
|
|
|
|
elif enabled aarch64; then |
|
|
|
|
elif enabled sparc; then |
|
|
|
|
|
|
|
|
|
case $cpu in |
|
|
|
|
armv*) |
|
|
|
|
cpuflags="-march=$cpu" |
|
|
|
|
cypress|f93[04]|tsc701|sparcl*|supersparc|hypersparc|niagara|v[789]) |
|
|
|
|
cpuflags="-mcpu=$cpu" |
|
|
|
|
disable vis |
|
|
|
|
;; |
|
|
|
|
*) |
|
|
|
|
ultrasparc*|niagara[234]) |
|
|
|
|
cpuflags="-mcpu=$cpu" |
|
|
|
|
;; |
|
|
|
|
esac |
|
|
|
|
|
|
|
|
|
elif enabled x86; then |
|
|
|
|
|
|
|
|
|
case $cpu in |
|
|
|
|
i[345]86|pentium) |
|
|
|
|
cpuflags="-march=$cpu" |
|
|
|
|
disable mmx |
|
|
|
|
;; |
|
|
|
|
# targets that do NOT support conditional mov (cmov) |
|
|
|
|
pentium-mmx|k6|k6-[23]|winchip-c6|winchip2|c3) |
|
|
|
|
cpuflags="-march=$cpu" |
|
|
|
|
disable cmov |
|
|
|
|
;; |
|
|
|
|
# targets that do support conditional mov (cmov) |
|
|
|
|
i686|pentiumpro|pentium[23]|pentium-m|athlon|athlon-tbird|athlon-4|athlon-[mx]p|athlon64*|k8*|opteron*|athlon-fx|core2|amdfam10|barcelona|atom|bdver*) |
|
|
|
|
cpuflags="-march=$cpu" |
|
|
|
|
enable cmov |
|
|
|
|
enable fast_cmov |
|
|
|
|
;; |
|
|
|
|
# targets that do support conditional mov but on which it's slow |
|
|
|
|
pentium4|pentium4m|prescott|nocona) |
|
|
|
|
cpuflags="-march=$cpu" |
|
|
|
|
enable cmov |
|
|
|
|
disable fast_cmov |
|
|
|
|
;; |
|
|
|
|
esac |
|
|
|
|
|
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
add_cflags $cpuflags |
|
|
|
|