From f724676cedbc24cea8d4db651bfb0196e696aac5 Mon Sep 17 00:00:00 2001 From: Torbjorn Granlund Date: Sun, 20 Mar 2016 21:56:29 +0100 Subject: (arm*): Handle big.LITTLE CPUs by extracting the lexically largest id. (arm*): Add many aarch64 CPUs. --- config.guess | 64 ++++++++++++++++++++++++++++++++++++------------------------ 1 file changed, 39 insertions(+), 25 deletions(-) (limited to 'config.guess') diff --git a/config.guess b/config.guess index e58e0bf2a..b4d431b7f 100755 --- a/config.guess +++ b/config.guess @@ -172,35 +172,49 @@ EOF fi ;; -arm*-*-*) - cpu_code=`sed -n 's/^CPU part.*\(0x.*\)$/\1/p' /proc/cpuinfo 2>/dev/null | head -n 1 2>/dev/null` - case "$cpu_code" in - 0xa10 | 0xa11 | 0xb11) # v4 strongarm/sa1100 +arm*-*-* | aarch64-*-*) + cpu_code=`sed -n 's/^CPU part.*\(0x.*\)$/\1/p' /proc/cpuinfo 2>/dev/null | sort -r | head -n 1 2>/dev/null` + cpu_implementer=`sed -n 's/^CPU implementer.*\(0x.*\)$/\1/p' /proc/cpuinfo 2>/dev/null | head -n 1 2>/dev/null` + case "${cpu_implementer}_${cpu_code}" in + 0x53_0x001) exact_cpu=exynosm1 ;; + 0x51_0x800) exact_cpu=armcortexa57 ;; + 0x43_0x0a1) exact_cpu=thunderx ;; + 0x50_0x000) exact_cpu=xgene1 ;; + esac + if test -z "$exact_cpu"; then + case "$cpu_code" in + 0xa10 | 0xa11 | 0xb11) # v4 strongarm/sa1100 exact_cpu="armsa1";; - 0x915 | 0x925 | \ - 0x920 | 0x922 | 0x940) # v4 + 0x915 | 0x925 | \ + 0x920 | 0x922 | 0x940) # v4 exact_cpu="arm9tdmi";; - 0x210 | 0x290 | 0x2d0 | \ - 0x212 | 0x292 | 0x2d2 | \ - 0x411) exact_cpu="armxscale";; # v5 pxa2xx - 0x926 | 0x946 | 0x966 | 0x968) # v5te/v5tej + 0x210 | 0x290 | 0x2d0 | \ + 0x212 | 0x292 | 0x2d2 | \ + 0x411) exact_cpu="armxscale";; # v5 pxa2xx + 0x926 | 0x946 | 0x966 | 0x968) # v5te/v5tej exact_cpu="arm9te";; - 0xa20 | 0xa22 | 0xa26) # v5te + 0xa20 | 0xa22 | 0xa26) # v5te exact_cpu="arm10";; - 0xb02) exact_cpu="arm11mpcore";; # v6 - 0xb36) exact_cpu="arm1136";; # v6 - 0xb56) exact_cpu="arm1156";; # v6t2 - 0xb76) exact_cpu="arm1176";; # v6 - 0xc05) exact_cpu="armcortexa5";; # v7a - 0xc07) exact_cpu="armcortexa7";; # v7a - 0xc08) exact_cpu="armcortexa8";; # v7a - 0xc09) exact_cpu="armcortexa9";; # v7a - 0xc0f) exact_cpu="armcortexa15";; # v7a - 0xc14) exact_cpu="armcortexr4";; # v7r - 0xc15) exact_cpu="armcortexr5";; # v7r - 0xc23) exact_cpu="armcortexm3";; # v7m - *) exact_cpu=$guess_cpu;; - esac + 0xb02) exact_cpu="arm11mpcore";; # v6 + 0xb36) exact_cpu="arm1136";; # v6 + 0xb56) exact_cpu="arm1156";; # v6t2 + 0xb76) exact_cpu="arm1176";; # v6 + 0xc05) exact_cpu="armcortexa5";; # v7a + 0xc07) exact_cpu="armcortexa7";; # v7a + 0xc08) exact_cpu="armcortexa8";; # v7a + 0xc09) exact_cpu="armcortexa9";; # v7a + 0xc0f) exact_cpu="armcortexa15";; # v7a + 0xc14) exact_cpu="armcortexr4";; # v7r + 0xc15) exact_cpu="armcortexr5";; # v7r + 0xc23) exact_cpu="armcortexm3";; # v7m + + 0xd04) exact_cpu="armcortexa35";; # v8-32 + 0xd03) exact_cpu="armcortexa53";; # v8 + 0xd07) exact_cpu="armcortexa57";; # v8 + 0xd08) exact_cpu="armcortexa72";; # v8 + *) exact_cpu=$guess_cpu;; + esac + fi exact_cpu="${exact_cpu}`sed -n 's;^Features.*\(neon\).*;\1;p' /proc/cpuinfo 2>/dev/null | head -n 1 2>/dev/null`" ;; -- cgit v1.2.1