|
|
|
From c2b54e66e194405a1ff062bb442ede9a8c4b913a Mon Sep 17 00:00:00 2001
|
|
|
|
From: Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
|
|
|
|
Date: Wed, 4 Nov 2015 19:30:49 -0200
|
|
|
|
Subject: [PATCH] powerpc: Add basic support for POWER9 sans hwcap.
|
|
|
|
|
|
|
|
This patch adds the minimum changes for supporting the POWER9 processor.
|
|
|
|
|
|
|
|
(cherry picked from commit b1f19b8ef1003f202424ca222003a18b880bf914)
|
|
|
|
---
|
|
|
|
ChangeLog | 13 +++++++++++++
|
|
|
|
sysdeps/powerpc/dl-procinfo.c | 3 ++-
|
|
|
|
sysdeps/powerpc/dl-procinfo.h | 6 +++++-
|
|
|
|
sysdeps/powerpc/powerpc32/power9/Implies | 2 ++
|
|
|
|
sysdeps/powerpc/powerpc32/power9/fpu/multiarch/Implies | 1 +
|
|
|
|
sysdeps/powerpc/powerpc32/power9/multiarch/Implies | 1 +
|
|
|
|
sysdeps/powerpc/powerpc64/power9/Implies | 2 ++
|
|
|
|
sysdeps/powerpc/powerpc64/power9/fpu/Implies | 2 ++
|
|
|
|
sysdeps/powerpc/powerpc64/power9/fpu/multiarch/Implies | 1 +
|
|
|
|
sysdeps/powerpc/powerpc64/power9/multiarch/Implies | 1 +
|
|
|
|
10 files changed, 30 insertions(+), 2 deletions(-)
|
|
|
|
create mode 100644 sysdeps/powerpc/powerpc32/power9/Implies
|
|
|
|
create mode 100644 sysdeps/powerpc/powerpc32/power9/fpu/multiarch/Implies
|
|
|
|
create mode 100644 sysdeps/powerpc/powerpc32/power9/multiarch/Implies
|
|
|
|
create mode 100644 sysdeps/powerpc/powerpc64/power9/Implies
|
|
|
|
create mode 100644 sysdeps/powerpc/powerpc64/power9/fpu/Implies
|
|
|
|
create mode 100644 sysdeps/powerpc/powerpc64/power9/fpu/multiarch/Implies
|
|
|
|
create mode 100644 sysdeps/powerpc/powerpc64/power9/multiarch/Implies
|
|
|
|
|
|
|
|
diff --git a/ChangeLog b/ChangeLog
|
|
|
|
index 079da2a..cecd77c 100644
|
|
|
|
diff --git a/sysdeps/powerpc/dl-procinfo.c b/sysdeps/powerpc/dl-procinfo.c
|
|
|
|
index 770c1f3..a8df5b8 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 36873cf..407149b 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 0000000..066dea2
|
|
|
|
--- /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 0000000..4393b56
|
|
|
|
--- /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 0000000..4393b56
|
|
|
|
--- /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 0000000..fad2505
|
|
|
|
--- /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 0000000..fad2505
|
|
|
|
--- /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 0000000..f11e1bd
|
|
|
|
--- /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 0000000..dd6bca4
|
|
|
|
--- /dev/null
|
|
|
|
+++ b/sysdeps/powerpc/powerpc64/power9/multiarch/Implies
|
|
|
|
@@ -0,0 +1 @@
|
|
|
|
+powerpc/powerpc64/power8/multiarch
|
|
|
|
--
|
|
|
|
2.1.0
|
|
|
|
|