powerpc: Placeholder and infrastructure/build support to add Power11 related changes.

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.

Reviewed-by: Florian Weimer <fweimer@redhat.com>
Reviewed-by: Peter Bergner <bergner@linux.ibm.com>
(cherry picked from commit 1ea0511456)
This commit is contained in:
Amrita H S 2024-03-19 19:08:47 -05:00 committed by Peter Bergner
parent ee7f4c54e1
commit aad45c8ac3
15 changed files with 27 additions and 5 deletions

View File

@ -38,7 +38,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. */
@ -62,6 +62,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))
@ -89,6 +90,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;

View File

@ -0,0 +1,2 @@
powerpc/powerpc32/power10/fpu
powerpc/powerpc32/power10

View File

@ -0,0 +1 @@
powerpc/powerpc32/power10/fpu/multiarch

View File

@ -0,0 +1 @@
powerpc/powerpc32/power10/multiarch

View File

@ -0,0 +1,2 @@
powerpc/powerpc64/be/power10/fpu
powerpc/powerpc64/be/power10

View File

@ -0,0 +1 @@
powerpc/powerpc64/be/power10/fpu

View File

@ -0,0 +1 @@
powerpc/powerpc64/be/power10/fpu/multiarch

View File

@ -0,0 +1 @@
powerpc/powerpc64/be/power10/multiarch

View File

@ -0,0 +1,2 @@
powerpc/powerpc64/le/power10/fpu
powerpc/powerpc64/le/power10

View File

@ -0,0 +1 @@
powerpc/powerpc64/le/power10/fpu

View File

@ -0,0 +1 @@
powerpc/powerpc64/le/power10/fpu/multiarch

View File

@ -0,0 +1 @@
powerpc/powerpc64/le/power10/multiarch

View File

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

View File

@ -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 :

View File

@ -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="")
;;