]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
[BZ #6817]
authorUlrich Drepper <drepper@redhat.com>
Fri, 8 Aug 2008 04:51:57 +0000 (04:51 +0000)
committerUlrich Drepper <drepper@redhat.com>
Fri, 8 Aug 2008 04:51:57 +0000 (04:51 +0000)
2008-08-01  Steven Munroe  <sjmunroe@us.ibm.com>
    Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>

[BZ #6817]
* sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags):
Added the members 'vsx' and 'arch_2_06'.
(_dl_powerpc_platforms): Add the member 'power7'.
* sysdeps/powerpc/dl-procinfo.h: Modify _DL_HWCAP_FIRST
to reflect the changes required by VSX and ISA 2.06.
Modify _DL_PLATFORMS_COUNT to reflect the addition of
'power7'.
Defined PPC_PLATFORM_POWER7.
(_dl_string_platform): Add support for POWER7.
* sysdeps/powerpc/sysdep.h: Define bit masks for VSX
capability and ISA 2.06.

ChangeLog
sysdeps/powerpc/dl-procinfo.c
sysdeps/powerpc/dl-procinfo.h
sysdeps/powerpc/sysdep.h

index cdb739ea6f203073527398833b2b75fd58fc3ac8..bf05a2fe2c56a0867b26b435a468b1d53b58d984 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+2008-08-01  Steven Munroe  <sjmunroe@us.ibm.com>
+           Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>
+
+       [BZ #6817]
+       * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags):
+       Added the members 'vsx' and 'arch_2_06'.
+       (_dl_powerpc_platforms): Add the member 'power7'.
+       * sysdeps/powerpc/dl-procinfo.h: Modify _DL_HWCAP_FIRST
+       to reflect the changes required by VSX and ISA 2.06.
+       Modify _DL_PLATFORMS_COUNT to reflect the addition of
+       'power7'.
+       Defined PPC_PLATFORM_POWER7.
+       (_dl_string_platform): Add support for POWER7.
+       * sysdeps/powerpc/sysdep.h: Define bit masks for VSX
+       capability and ISA 2.06.
+
 2008-08-07  Ulrich Drepper  <drepper@redhat.com>
 
        [BZ #6824]
index a732e94fa836b51aeeeb7c87e9c661cef3cf7598..1c74c2a90569fd676996cd695ad793428a8213e5 100644 (file)
 #if !defined PROCINFO_DECL && defined SHARED
   ._dl_powerpc_cap_flags
 #else
-PROCINFO_CLASS const char _dl_powerpc_cap_flags[23][10]
+PROCINFO_CLASS const char _dl_powerpc_cap_flags[25][10]
 #endif
 #ifndef PROCINFO_DECL
 = {
-    "power6x", "dfp", "pa6t",
+    "vsx", 
+    "arch_2_06", "power6x", "dfp", "pa6t",
     "arch_2_05", "ic_snoop", "smt", "booke",
     "cellbe", "power5+", "power5", "power4",
     "notb", "efpdouble", "efpsingle", "spe",
@@ -67,7 +68,7 @@ PROCINFO_CLASS const char _dl_powerpc_cap_flags[23][10]
 #if !defined PROCINFO_DECL && defined SHARED
   ._dl_powerpc_platforms
 #else
-PROCINFO_CLASS const char _dl_powerpc_platforms[7][12]
+PROCINFO_CLASS const char _dl_powerpc_platforms[8][12]
 #endif
 #ifndef PROCINFO_DECL
 = {
@@ -77,7 +78,8 @@ PROCINFO_CLASS const char _dl_powerpc_platforms[7][12]
     [PPC_PLATFORM_POWER5_PLUS] = "power5+",
     [PPC_PLATFORM_POWER6] = "power6",
     [PPC_PLATFORM_CELL_BE] = "ppc-cell-be",
-    [PPC_PLATFORM_POWER6X] = "power6x"
+    [PPC_PLATFORM_POWER6X] = "power6x",
+    [PPC_PLATFORM_POWER7] = "power7"
   }
 #endif
 #if !defined SHARED || defined PROCINFO_DECL
index 0bf935385a8e77bedc20dff0d03d47b1506f6aaa..254195a94cd4af222ffca6c9b93822a5ba0821b7 100644 (file)
 #include <ldsodefs.h>
 #include <sysdep.h>            /* This defines the PPC_FEATURE_* macros.  */
 
-/* There are 20 bits used, but they are bits 12..31.  */
-#define _DL_HWCAP_FIRST                9
+/* There are 25 bits used, but they are bits 7..31.  */
+#define _DL_HWCAP_FIRST                7
 #define _DL_HWCAP_COUNT                32
 
 /* These bits influence library search.  */
 #define HWCAP_IMPORTANT                (PPC_FEATURE_HAS_ALTIVEC \
                                + PPC_FEATURE_HAS_DFP)
 
-#define _DL_PLATFORMS_COUNT    7
+#define _DL_PLATFORMS_COUNT    8
 
 #define _DL_FIRST_PLATFORM      32
 /* Mask to filter out platforms.  */
@@ -46,6 +46,7 @@
 #define PPC_PLATFORM_POWER6            4
 #define PPC_PLATFORM_CELL_BE           5
 #define PPC_PLATFORM_POWER6X           6
+#define PPC_PLATFORM_POWER7            7
 
 static inline const char *
 __attribute__ ((unused))
@@ -103,6 +104,9 @@ _dl_string_platform (const char *str)
              ++str;
            }
          break;
+       case '7':
+         ret = _DL_FIRST_PLATFORM + PPC_PLATFORM_POWER7;
+         break;
        default:
          return -1;
        }
index 2ae52b78c0cfe9a9fd8aad6a83d6d9dc6692a3fd..43edeb71eb5a172539bda6a022027fa18462fd4c 100644 (file)
@@ -44,6 +44,8 @@
 #define PPC_FEATURE_PA6T               0x00000800 /* PA Semi 6T Core */
 #define PPC_FEATURE_HAS_DFP            0x00000400 /* Decimal FP Unit */
 #define PPC_FEATURE_POWER6_EXT         0x00000200 /* P6 + mffgpr/mftgpr */
+#define PPC_FEATURE_HAS_VSX            0x00000100 /* P7 Vector Extension.  */
+#define PPC_FEATURE_ARCH_2_06          0x00000080 /* ISA 2.06 */
 #define PPC_FEATURE_970 (PPC_FEATURE_POWER4 + PPC_FEATURE_HAS_ALTIVEC)
 
 #ifdef __ASSEMBLER__