summaryrefslogtreecommitdiff
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
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