[Gmp-commit] /var/hg/gmp: 2 new changesets

mercurial at gmplib.org mercurial at gmplib.org
Wed Nov 28 16:20:12 CET 2012


details:   /var/hg/gmp/rev/7c807a654d1d
changeset: 15148:7c807a654d1d
user:      Torbjorn Granlund <tege at gmplib.org>
date:      Wed Nov 28 16:19:56 2012 +0100
description:
Support specific ARM processors.

details:   /var/hg/gmp/rev/c224eda5f2ff
changeset: 15149:c224eda5f2ff
user:      Torbjorn Granlund <tege at gmplib.org>
date:      Wed Nov 28 16:20:08 2012 +0100
description:
*** empty log message ***

diffstat:

 ChangeLog    |   4 ++++
 config.guess |  31 +++++++++++++++++++++++++++++++
 config.sub   |   7 +++++++
 configure.in |   8 +++++---
 4 files changed, 47 insertions(+), 3 deletions(-)

diffs (95 lines):

diff -r e22f4fd9dc1d -r c224eda5f2ff ChangeLog
--- a/ChangeLog	Wed Nov 28 12:07:59 2012 +0100
+++ b/ChangeLog	Wed Nov 28 16:20:08 2012 +0100
@@ -1,5 +1,9 @@
 2012-11-28  Torbjorn Granlund  <tege at gmplib.org>
 
+	* config.guess (arm*-*-*): Support specific ARM processors.
+	* config.sub: Match arm CPUs.
+	* configure.in (arm*-*-*): Likewise.
+
 	* mpz/powm.c: Move new_b out since it lives on through b.
 
 	* configure.in (arm*-*-*): Pass -marm to deal with compilers defaulting
diff -r e22f4fd9dc1d -r c224eda5f2ff config.guess
--- a/config.guess	Wed Nov 28 12:07:59 2012 +0100
+++ b/config.guess	Wed Nov 28 16:20:08 2012 +0100
@@ -153,6 +153,37 @@
   rm -f $dummy.s $dummy.o $dummy
   ;;
 
+arm*-*-*)
+  cpu_code=`sed -n 's/^CPU part.*\(0x.*\)$/\1/p' /proc/cpuinfo 2>/dev/null`
+  case "$cpu_code" in
+      0x210)	exact_cpu="armxscale";;		# v5 pxa250
+      0x290)	exact_cpu="armxscale";;		# v5 pxa260
+      0x2d0)	exact_cpu="armxscale";;		# v5 pxa255
+      0x2d0)	exact_cpu="armxscale";;		# v5 pxa261
+      0x2d0)	exact_cpu="armxscale";;		# v5 pxa262
+      0x411)	exact_cpu="armxscale";;		# v5 pxa270
+      0x915)	exact_cpu="armti915t";;		# v?
+      0x925)	exact_cpu="armti925t";;		# v?
+      0x926)	exact_cpu="arm926";;		# v5
+      0x946)	exact_cpu="arm946";;		# v5
+      0x966)	exact_cpu="arm966";;		# v5
+      0xa11)	exact_cpu="armsa1";;		# v4 strongarm/sa1100
+      0xa26)	exact_cpu="arm1026";;		# v5
+      0xb02)	exact_cpu="arm11mpcore";;	# v6
+      0xb11)	exact_cpu="armsa1";;		# v4 strongarm/sa1110
+      0xb36)	exact_cpu="arm1136";;		# v6
+      0xb56)	exact_cpu="arm1156";;		# v6t2
+      0xb76)	exact_cpu="arm1176";;		# v6
+      0xc05)	exact_cpu="armcortexa5";;	# 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
+  esac
+  ;;
+
 ia64*-*-*)
   # CPUID[3] bits 24 to 31 is the processor family.  itanium2 is documented
   # as 0x1f, plain itanium has been seen returning 0x07 on two systems, but
diff -r e22f4fd9dc1d -r c224eda5f2ff config.sub
--- a/config.sub	Wed Nov 28 12:07:59 2012 +0100
+++ b/config.sub	Wed Nov 28 16:20:08 2012 +0100
@@ -116,6 +116,13 @@
 z900esa | z990esa | z9esa | z10esa | z196esa)
   test_cpu=s390;;
 
+armxscale | armxscale | armxscale | armxscale | armxscale | armxscale |	\
+armti915t | armti925t | arm926 | arm946 | arm966 | armsa1 | arm1026 |	\
+arm11mpcore | armsa1 | arm1136 | arm1156 | arm1176 | armcortexa5 |	\
+armcortexa8 | armcortexa9 | armcortexa15 | armcortexr4 | armcortexr5 |	\
+armcortexm3)
+  test_cpu="arm";;
+
 *)
   # Don't need or want to change the given name, just run configfsf.sub
   $SHELL $configfsf_sub "$given_full"
diff -r e22f4fd9dc1d -r c224eda5f2ff configure.in
--- a/configure.in	Wed Nov 28 12:07:59 2012 +0100
+++ b/configure.in	Wed Nov 28 16:20:08 2012 +0100
@@ -570,15 +570,17 @@
     gcc_testlist="gcc-arm-umodsi"
     GMP_INCLUDE_MPN(arm/arm-defs.m4)
     case $host_cpu in
-      armv5*)
+      armsa1 | armv4*)
+	;;
+      armxscale | arm926 | arm946 | arm966 | arm1026 | armv5*)
 	path="arm/v5 arm"
 	gcc_cflags_arch="-march=armv5"
 	;;
-      armv6*)
+      arm11mpcore | arm1136 | arm1156 | arm1176 | armv6*)
 	path="arm/v6 arm/v5 arm"
 	gcc_cflags_arch="-march=armv6"
 	;;
-      armv7*) # FIXME: plain v7 is thumb-only, should we match more strictly?
+      armcortexa5 | armcortexa8 | armcortexa9 | armcortexa15 | armv7a*)
 	path="arm/v6t2 arm/v6 arm/v5 arm"
 	gcc_cflags_arch="-march=armv7-a"
 	;;


More information about the gmp-commit mailing list