libgo patch committed: Use ppc64le for little-endian 64-bit PowerPC architecture

Ian Lance Taylor iant@golang.org
Fri Nov 21 18:44:00 GMT 2014


This patch by Lynn A. Boger changes libgo to use ppc64le for
little-endian 64-bit PowerPC.  Bootstrapped and ran testsuite on
x86_64-unknown-linux-gnu.  Committed to mainline.

Ian
-------------- next part --------------
diff -r 96de84075614 libgo/configure.ac
--- a/libgo/configure.ac	Tue Nov 18 09:28:24 2014 -0800
+++ b/libgo/configure.ac	Fri Nov 21 10:01:45 2014 -0800
@@ -194,6 +194,7 @@
 mips_abi=unknown
 is_ppc=no
 is_ppc64=no
+is_ppc64le=no
 is_s390=no
 is_s390x=no
 is_sparc=no
@@ -266,11 +267,18 @@
 #ifdef _ARCH_PPC64
 #error 64-bit
 #endif],
-[is_ppc=yes], [is_ppc64=yes])
+[is_ppc=yes],
+    [AC_COMPILE_IFELSE([
+#if defined(_BIG_ENDIAN) || defined(__BIG_ENDIAN__)
+#error 64be
+#endif],
+[is_ppc64le=yes],[is_ppc64=yes])])
     if test "$is_ppc" = "yes"; then
       GOARCH=ppc
+    elif test "$is_ppc64" = "yes"; then
+      GOARCH=ppc64
     else
-      GOARCH=ppc64
+      GOARCH=ppc64le
     fi
     ;;
   s390*-*-*)
@@ -310,6 +318,7 @@
 AM_CONDITIONAL(LIBGO_IS_MIPSO64, test $mips_abi = o64)
 AM_CONDITIONAL(LIBGO_IS_PPC, test $is_ppc = yes)
 AM_CONDITIONAL(LIBGO_IS_PPC64, test $is_ppc64 = yes)
+AM_CONDITIONAL(LIBGO_IS_PPC64LE, test $is_ppc64le = yes)
 AM_CONDITIONAL(LIBGO_IS_S390, test $is_s390 = yes)
 AM_CONDITIONAL(LIBGO_IS_S390X, test $is_s390x = yes)
 AM_CONDITIONAL(LIBGO_IS_SPARC, test $is_sparc = yes)
diff -r 96de84075614 libgo/go/go/build/syslist.go
--- a/libgo/go/go/build/syslist.go	Tue Nov 18 09:28:24 2014 -0800
+++ b/libgo/go/go/build/syslist.go	Fri Nov 21 10:01:45 2014 -0800
@@ -5,4 +5,4 @@
 package build
 
 const goosList = "darwin dragonfly freebsd linux nacl netbsd openbsd plan9 solaris windows "
-const goarchList = "386 amd64 amd64p32 arm arm64 alpha m68k mipso32 mipsn32 mipsn64 mipso64 ppc ppc64 s390 s390x sparc sparc64 "
+const goarchList = "386 amd64 amd64p32 arm arm64 alpha m68k mipso32 mipsn32 mipsn64 mipso64 ppc ppc64 ppc64le s390 s390x sparc sparc64 "
diff -r 96de84075614 libgo/testsuite/gotest
--- a/libgo/testsuite/gotest	Tue Nov 18 09:28:24 2014 -0800
+++ b/libgo/testsuite/gotest	Fri Nov 21 10:01:45 2014 -0800
@@ -379,7 +379,7 @@
 {
 	text="T"
 	case "$GOARCH" in
-	ppc64) text="[TD]" ;;
+	ppc64*) text="[TD]" ;;
 	esac
 
 	symtogo='sed -e s/_test/XXXtest/ -e s/.*_\([^_]*\.\)/\1/ -e s/XXXtest/_test/'


More information about the Gcc-patches mailing list