about summary refs log tree commit diff
diff options
context:
space:
mode:
authorCarlos Eduardo Seo <cseo@linux.vnet.ibm.com>2015-11-04 19:30:49 -0200
committerTulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>2015-12-22 14:45:55 -0200
commitb1f19b8ef1003f202424ca222003a18b880bf914 (patch)
treedbcfc830cc9e0eab1147930e907da6f4f0380dc8
parent2cf3e1aa7477b813ca3ebb901003a7d44f970218 (diff)
downloadglibc-b1f19b8ef1003f202424ca222003a18b880bf914.tar.gz
glibc-b1f19b8ef1003f202424ca222003a18b880bf914.tar.xz
glibc-b1f19b8ef1003f202424ca222003a18b880bf914.zip
powerpc: Add basic support for POWER9 sans hwcap.
This patch adds the minimum changes for supporting the POWER9 processor.
-rw-r--r--ChangeLog13
-rw-r--r--sysdeps/powerpc/dl-procinfo.c3
-rw-r--r--sysdeps/powerpc/dl-procinfo.h6
-rw-r--r--sysdeps/powerpc/powerpc32/power9/Implies2
-rw-r--r--sysdeps/powerpc/powerpc32/power9/fpu/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc32/power9/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power9/Implies2
-rw-r--r--sysdeps/powerpc/powerpc64/power9/fpu/Implies2
-rw-r--r--sysdeps/powerpc/powerpc64/power9/fpu/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power9/multiarch/Implies1
10 files changed, 30 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index a57db54b46..83143de100 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2015-12-22  Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>
+
+	* sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_platforms): Added
+	platform and feature support for POWER9.
+	* sysdeps/powerpc/dl-procinfo.h: Likewise.
+	* sysdeps/powerpc/powerpc32/power9/Implies: New file.
+	* sysdeps/powerpc/powerpc32/power9/fpu/multiarch/Implies: Likewise.
+	* sysdeps/powerpc/powerpc32/power9/multiarch/Implies: Likewise.
+	* sysdeps/powerpc/powerpc64/power9/Implies: Likewise, for powerpc64.
+	* sysdeps/powerpc/powerpc64/power9/fpu/Implies: Likewise.
+	* sysdeps/powerpc/powerpc64/power9/fpu/multiarch/Implies: Likewise.
+	* sysdeps/powerpc/powerpc64/power9/multiarch/Implies: Likewise.
+
 2015-12-22  Samuel Thibault  <samuel.thibault@ens-lyon.org>
 
 	Harmonize generic stdio-lock support with nptl
diff --git a/sysdeps/powerpc/dl-procinfo.c b/sysdeps/powerpc/dl-procinfo.c
index 770c1f3465..a8df5b8192 100644
--- a/sysdeps/powerpc/dl-procinfo.c
+++ b/sysdeps/powerpc/dl-procinfo.c
@@ -75,7 +75,7 @@ PROCINFO_CLASS const char _dl_powerpc_cap_flags[60][10]
 #if !defined PROCINFO_DECL && defined SHARED
   ._dl_powerpc_platforms
 #else
-PROCINFO_CLASS const char _dl_powerpc_platforms[14][12]
+PROCINFO_CLASS const char _dl_powerpc_platforms[15][12]
 #endif
 #ifndef PROCINFO_DECL
 = {
@@ -93,6 +93,7 @@ PROCINFO_CLASS const char _dl_powerpc_platforms[14][12]
     [PPC_PLATFORM_PPC464] = "ppc464",
     [PPC_PLATFORM_PPC476] = "ppc476",
     [PPC_PLATFORM_POWER8] = "power8",
+    [PPC_PLATFORM_POWER9] = "power9"
   }
 #endif
 #if !defined SHARED || defined PROCINFO_DECL
diff --git a/sysdeps/powerpc/dl-procinfo.h b/sysdeps/powerpc/dl-procinfo.h
index 36873cf2f2..407149bb14 100644
--- a/sysdeps/powerpc/dl-procinfo.h
+++ b/sysdeps/powerpc/dl-procinfo.h
@@ -40,7 +40,7 @@
 #define HWCAP_IMPORTANT		(PPC_FEATURE_HAS_ALTIVEC \
 				+ PPC_FEATURE_HAS_DFP)
 
-#define _DL_PLATFORMS_COUNT	14
+#define _DL_PLATFORMS_COUNT	15
 
 #define _DL_FIRST_PLATFORM	32
 /* Mask to filter out platforms.  */
@@ -62,6 +62,7 @@
 #define PPC_PLATFORM_PPC464		11
 #define PPC_PLATFORM_PPC476		12
 #define PPC_PLATFORM_POWER8		13
+#define PPC_PLATFORM_POWER9		14
 
 static inline const char *
 __attribute__ ((unused))
@@ -125,6 +126,9 @@ _dl_string_platform (const char *str)
 	case '8':
 	  ret = _DL_FIRST_PLATFORM + PPC_PLATFORM_POWER8;
 	  break;
+	case '9':
+	  ret = _DL_FIRST_PLATFORM + PPC_PLATFORM_POWER9;
+	  break;
 	default:
 	  return -1;
 	}
diff --git a/sysdeps/powerpc/powerpc32/power9/Implies b/sysdeps/powerpc/powerpc32/power9/Implies
new file mode 100644
index 0000000000..066dea2798
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power9/Implies
@@ -0,0 +1,2 @@
+powerpc/powerpc32/power8/fpu
+powerpc/powerpc32/power8
diff --git a/sysdeps/powerpc/powerpc32/power9/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc32/power9/fpu/multiarch/Implies
new file mode 100644
index 0000000000..4393b56872
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power9/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power8/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc32/power9/multiarch/Implies b/sysdeps/powerpc/powerpc32/power9/multiarch/Implies
new file mode 100644
index 0000000000..4393b56872
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power9/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power8/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power9/Implies b/sysdeps/powerpc/powerpc64/power9/Implies
new file mode 100644
index 0000000000..fad2505ab9
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power9/Implies
@@ -0,0 +1,2 @@
+powerpc/powerpc64/power8/fpu
+powerpc/powerpc64/power8
diff --git a/sysdeps/powerpc/powerpc64/power9/fpu/Implies b/sysdeps/powerpc/powerpc64/power9/fpu/Implies
new file mode 100644
index 0000000000..fad2505ab9
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power9/fpu/Implies
@@ -0,0 +1,2 @@
+powerpc/powerpc64/power8/fpu
+powerpc/powerpc64/power8
diff --git a/sysdeps/powerpc/powerpc64/power9/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc64/power9/fpu/multiarch/Implies
new file mode 100644
index 0000000000..f11e1bdba2
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power9/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power8/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power9/multiarch/Implies b/sysdeps/powerpc/powerpc64/power9/multiarch/Implies
new file mode 100644
index 0000000000..dd6bca4b36
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power9/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power8/multiarch