unofficial mirror of libc-alpha@sourceware.org
 help / color / mirror / Atom feed
* [PATCH V1] powerpc: Placeholder and infrastructure/build support to add Power11 related changes.
@ 2024-03-06 13:57 Amrita H S
  2024-03-18 10:24 ` Florian Weimer
  2024-03-18 17:44 ` Peter Bergner
  0 siblings, 2 replies; 5+ messages in thread
From: Amrita H S @ 2024-03-06 13:57 UTC (permalink / raw)
  To: libc-alpha; +Cc: bergner, Amrita H S

The following three changes have been added to provide
initial Power11 support.
    1. Add the directories to hold Power11 files.
    2. Add support to select Power11 libraries based on AT_PLATFORM.
    3. Let submachine=power11 be set automatically.

Signed-off-by: Amrita H S <amritahs@linux.vnet.ibm.com>
---
 sysdeps/powerpc/dl-procinfo.h                             | 8 +++++++-
 sysdeps/powerpc/powerpc32/power11/Implies                 | 2 ++
 sysdeps/powerpc/powerpc32/power11/fpu/multiarch/Implies   | 1 +
 sysdeps/powerpc/powerpc32/power11/multiarch/Implies       | 1 +
 sysdeps/powerpc/powerpc64/be/power11/Implies              | 2 ++
 sysdeps/powerpc/powerpc64/be/power11/fpu/Implies          | 1 +
 .../powerpc/powerpc64/be/power11/fpu/multiarch/Implies    | 1 +
 sysdeps/powerpc/powerpc64/be/power11/multiarch/Implies    | 1 +
 sysdeps/powerpc/powerpc64/le/power11/Implies              | 2 ++
 sysdeps/powerpc/powerpc64/le/power11/fpu/Implies          | 1 +
 .../powerpc/powerpc64/le/power11/fpu/multiarch/Implies    | 1 +
 sysdeps/powerpc/powerpc64/le/power11/multiarch/Implies    | 1 +
 sysdeps/powerpc/powerpc64/le/tst-glibc-hwcaps.c           | 6 ++++--
 sysdeps/powerpc/preconfigure                              | 2 +-
 sysdeps/powerpc/preconfigure.ac                           | 2 +-
 15 files changed, 27 insertions(+), 5 deletions(-)
 create mode 100644 sysdeps/powerpc/powerpc32/power11/Implies
 create mode 100644 sysdeps/powerpc/powerpc32/power11/fpu/multiarch/Implies
 create mode 100644 sysdeps/powerpc/powerpc32/power11/multiarch/Implies
 create mode 100644 sysdeps/powerpc/powerpc64/be/power11/Implies
 create mode 100644 sysdeps/powerpc/powerpc64/be/power11/fpu/Implies
 create mode 100644 sysdeps/powerpc/powerpc64/be/power11/fpu/multiarch/Implies
 create mode 100644 sysdeps/powerpc/powerpc64/be/power11/multiarch/Implies
 create mode 100644 sysdeps/powerpc/powerpc64/le/power11/Implies
 create mode 100644 sysdeps/powerpc/powerpc64/le/power11/fpu/Implies
 create mode 100644 sysdeps/powerpc/powerpc64/le/power11/fpu/multiarch/Implies
 create mode 100644 sysdeps/powerpc/powerpc64/le/power11/multiarch/Implies

diff --git a/sysdeps/powerpc/dl-procinfo.h b/sysdeps/powerpc/dl-procinfo.h
index 68f4241095..15e26d92e5 100644
--- a/sysdeps/powerpc/dl-procinfo.h
+++ b/sysdeps/powerpc/dl-procinfo.h
@@ -37,7 +37,7 @@
 #define HWCAP_IMPORTANT		(PPC_FEATURE_HAS_ALTIVEC \
 				+ PPC_FEATURE_HAS_DFP)
 
-#define _DL_PLATFORMS_COUNT	16
+#define _DL_PLATFORMS_COUNT	17
 
 #define _DL_FIRST_PLATFORM	32
 /* Mask to filter out platforms.  */
@@ -61,6 +61,7 @@
 #define PPC_PLATFORM_POWER8		13
 #define PPC_PLATFORM_POWER9		14
 #define PPC_PLATFORM_POWER10		15
+#define PPC_PLATFORM_POWER11		16
 
 static inline const char *
 __attribute__ ((unused))
@@ -88,6 +89,11 @@ _dl_string_platform (const char *str)
 	      ret = _DL_FIRST_PLATFORM + PPC_PLATFORM_POWER10;
 	      str++;
 	    }
+	  else if (str[1] == '1')
+	    {
+	      ret = _DL_FIRST_PLATFORM + PPC_PLATFORM_POWER11;
+	      str++;
+	    }
 	  else
 	    return -1;
 	  break;
diff --git a/sysdeps/powerpc/powerpc32/power11/Implies b/sysdeps/powerpc/powerpc32/power11/Implies
new file mode 100644
index 0000000000..051cbe0f79
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power11/Implies
@@ -0,0 +1,2 @@
+powerpc/powerpc32/power10/fpu
+powerpc/powerpc32/power10
diff --git a/sysdeps/powerpc/powerpc32/power11/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc32/power11/fpu/multiarch/Implies
new file mode 100644
index 0000000000..58edb2861d
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power11/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power10/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc32/power11/multiarch/Implies b/sysdeps/powerpc/powerpc32/power11/multiarch/Implies
new file mode 100644
index 0000000000..c70f0428ba
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power11/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power10/multiarch
diff --git a/sysdeps/powerpc/powerpc64/be/power11/Implies b/sysdeps/powerpc/powerpc64/be/power11/Implies
new file mode 100644
index 0000000000..de481d1c13
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/be/power11/Implies
@@ -0,0 +1,2 @@
+powerpc/powerpc64/be/power10/fpu
+powerpc/powerpc64/be/power10
diff --git a/sysdeps/powerpc/powerpc64/be/power11/fpu/Implies b/sysdeps/powerpc/powerpc64/be/power11/fpu/Implies
new file mode 100644
index 0000000000..dff0e13064
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/be/power11/fpu/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/be/power10/fpu
diff --git a/sysdeps/powerpc/powerpc64/be/power11/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc64/be/power11/fpu/multiarch/Implies
new file mode 100644
index 0000000000..c3f259e009
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/be/power11/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/be/power10/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/be/power11/multiarch/Implies b/sysdeps/powerpc/powerpc64/be/power11/multiarch/Implies
new file mode 100644
index 0000000000..9491a394c9
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/be/power11/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/be/power10/multiarch
diff --git a/sysdeps/powerpc/powerpc64/le/power11/Implies b/sysdeps/powerpc/powerpc64/le/power11/Implies
new file mode 100644
index 0000000000..e18182dcc1
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/le/power11/Implies
@@ -0,0 +1,2 @@
+powerpc/powerpc64/le/power10/fpu
+powerpc/powerpc64/le/power10
diff --git a/sysdeps/powerpc/powerpc64/le/power11/fpu/Implies b/sysdeps/powerpc/powerpc64/le/power11/fpu/Implies
new file mode 100644
index 0000000000..e41bd55684
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/le/power11/fpu/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/le/power10/fpu
diff --git a/sysdeps/powerpc/powerpc64/le/power11/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc64/le/power11/fpu/multiarch/Implies
new file mode 100644
index 0000000000..c838d50931
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/le/power11/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/le/power10/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/le/power11/multiarch/Implies b/sysdeps/powerpc/powerpc64/le/power11/multiarch/Implies
new file mode 100644
index 0000000000..687248c3c2
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/le/power11/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/le/power10/multiarch
diff --git a/sysdeps/powerpc/powerpc64/le/tst-glibc-hwcaps.c b/sysdeps/powerpc/powerpc64/le/tst-glibc-hwcaps.c
index 77465d9133..65d3e69303 100644
--- a/sysdeps/powerpc/powerpc64/le/tst-glibc-hwcaps.c
+++ b/sysdeps/powerpc/powerpc64/le/tst-glibc-hwcaps.c
@@ -36,9 +36,11 @@ compute_level (void)
     return 9;
   if (strcmp (platform, "power10") == 0)
     return 10;
+  if (strcmp (platform, "power11") == 0)
+    return 11;
   printf ("warning: unrecognized AT_PLATFORM value: %s\n", platform);
-  /* Assume that the new platform supports POWER10.  */
-  return 10;
+  /* Assume that the new platform supports POWER11.  */
+  return 11;
 }
 
 static int
diff --git a/sysdeps/powerpc/preconfigure b/sysdeps/powerpc/preconfigure
index 4de94089a3..9e5a07ab6d 100644
--- a/sysdeps/powerpc/preconfigure
+++ b/sysdeps/powerpc/preconfigure
@@ -58,7 +58,7 @@ fi
 
     ;;
 
-  a2|970|power[4-9]|power5x|power6+|power10)
+  a2|970|power[4-9]|power5x|power6+|power10|power11)
     submachine=${archcpu}
     if test ${libc_cv_cc_submachine+y}
 then :
diff --git a/sysdeps/powerpc/preconfigure.ac b/sysdeps/powerpc/preconfigure.ac
index 6c63bd8257..14b6dafd4a 100644
--- a/sysdeps/powerpc/preconfigure.ac
+++ b/sysdeps/powerpc/preconfigure.ac
@@ -46,7 +46,7 @@ case "${machine}:${submachine}" in
     AC_CACHE_VAL(libc_cv_cc_submachine,libc_cv_cc_submachine="")
     ;;
 
-  a2|970|power[[4-9]]|power5x|power6+|power10)
+  a2|970|power[[4-9]]|power5x|power6+|power10|power11)
     submachine=${archcpu}
     AC_CACHE_VAL(libc_cv_cc_submachine,libc_cv_cc_submachine="")
     ;;
-- 
2.44.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH V1] powerpc: Placeholder and infrastructure/build support to add Power11 related changes.
  2024-03-06 13:57 [PATCH V1] powerpc: Placeholder and infrastructure/build support to add Power11 related changes Amrita H S
@ 2024-03-18 10:24 ` Florian Weimer
  2024-03-18 17:46   ` Peter Bergner
  2024-03-18 17:44 ` Peter Bergner
  1 sibling, 1 reply; 5+ messages in thread
From: Florian Weimer @ 2024-03-18 10:24 UTC (permalink / raw)
  To: Amrita H S; +Cc: libc-alpha, bergner

* Amrita H. S.:

> The following three changes have been added to provide
> initial Power11 support.
>     1. Add the directories to hold Power11 files.
>     2. Add support to select Power11 libraries based on AT_PLATFORM.
>     3. Let submachine=power11 be set automatically.
>
> Signed-off-by: Amrita H S <amritahs@linux.vnet.ibm.com>

I assume this is covered by IBM's copyright assignment?  Then
Signed-off-by: isn't needed.

Other mechanics look okay to me.

Reviewed-by: Florian Weimer <fweimer@redhat.com>

Peter, are you going to approve/merge this?

Thanks,
Florian


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH V1] powerpc: Placeholder and infrastructure/build support to add Power11 related changes.
  2024-03-06 13:57 [PATCH V1] powerpc: Placeholder and infrastructure/build support to add Power11 related changes Amrita H S
  2024-03-18 10:24 ` Florian Weimer
@ 2024-03-18 17:44 ` Peter Bergner
  1 sibling, 0 replies; 5+ messages in thread
From: Peter Bergner @ 2024-03-18 17:44 UTC (permalink / raw)
  To: libc-alpha, Amrita H S

On 3/6/24 7:57 AM, Amrita H S wrote:
> The following three changes have been added to provide
> initial Power11 support.
>     1. Add the directories to hold Power11 files.
>     2. Add support to select Power11 libraries based on AT_PLATFORM.
>     3. Let submachine=power11 be set automatically.

LGTM.

Reviewed-by: Peter Bergner <bergner@linux.ibm.com>


I'll merge the patch for you.  Thanks.


Peter


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH V1] powerpc: Placeholder and infrastructure/build support to add Power11 related changes.
  2024-03-18 10:24 ` Florian Weimer
@ 2024-03-18 17:46   ` Peter Bergner
  2024-03-20  2:14     ` Peter Bergner
  0 siblings, 1 reply; 5+ messages in thread
From: Peter Bergner @ 2024-03-18 17:46 UTC (permalink / raw)
  To: Florian Weimer, Amrita H S; +Cc: libc-alpha

On 3/18/24 5:24 AM, Florian Weimer wrote:
> * Amrita H. S.:
> 
>> The following three changes have been added to provide
>> initial Power11 support.
>>     1. Add the directories to hold Power11 files.
>>     2. Add support to select Power11 libraries based on AT_PLATFORM.
>>     3. Let submachine=power11 be set automatically.
>>
>> Signed-off-by: Amrita H S <amritahs@linux.vnet.ibm.com>
> 
> I assume this is covered by IBM's copyright assignment?  Then
> Signed-off-by: isn't needed.

Yes it is.



> Other mechanics look okay to me.
> 
> Reviewed-by: Florian Weimer <fweimer@redhat.com>

Thanks for the extra eyes on the patch!



> Peter, are you going to approve/merge this?

Already approved and yes, I'll merge the patch for her.

Peter


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH V1] powerpc: Placeholder and infrastructure/build support to add Power11 related changes.
  2024-03-18 17:46   ` Peter Bergner
@ 2024-03-20  2:14     ` Peter Bergner
  0 siblings, 0 replies; 5+ messages in thread
From: Peter Bergner @ 2024-03-20  2:14 UTC (permalink / raw)
  To: Florian Weimer, Amrita H S; +Cc: libc-alpha

On 3/18/24 12:46 PM, Peter Bergner wrote:
> On 3/18/24 5:24 AM, Florian Weimer wrote:
>> Peter, are you going to approve/merge this?
> 
> Already approved and yes, I'll merge the patch for her.

Pushed now.

Peter


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-03-20  2:14 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-06 13:57 [PATCH V1] powerpc: Placeholder and infrastructure/build support to add Power11 related changes Amrita H S
2024-03-18 10:24 ` Florian Weimer
2024-03-18 17:46   ` Peter Bergner
2024-03-20  2:14     ` Peter Bergner
2024-03-18 17:44 ` Peter Bergner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).