import glibc-2.17-292.el7.src.rpm
Signed-off-by: zhangbinchen <zhangbinchen@openanolis.org>
This commit is contained in:
commit
ff0128648f
929 changed files with 436800 additions and 0 deletions
70
glibc-rh1503854-1.patch
Normal file
70
glibc-rh1503854-1.patch
Normal file
|
@ -0,0 +1,70 @@
|
|||
commit 911569d02dec023d949d96aa7b0e828c91c06f55
|
||||
Author: Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
|
||||
Date: Mon Dec 28 16:36:46 2015 -0200
|
||||
|
||||
powerpc: Fix dl-procinfo HWCAP
|
||||
|
||||
HWCAP-related code should had been updated when the 32 bits of HWCAP were
|
||||
used. This patch updates the code in dl-procinfo.h to loop through all
|
||||
the 32 bits in HWCAP and updates _dl_powerpc_cap_flags accordingly.
|
||||
|
||||
diff --git a/sysdeps/powerpc/dl-procinfo.c b/sysdeps/powerpc/dl-procinfo.c
|
||||
index 6e7850e..0b55906 100644
|
||||
--- a/sysdeps/powerpc/dl-procinfo.c
|
||||
+++ b/sysdeps/powerpc/dl-procinfo.c
|
||||
@@ -45,11 +45,12 @@
|
||||
#if !defined PROCINFO_DECL && defined SHARED
|
||||
._dl_powerpc_cap_flags
|
||||
#else
|
||||
-PROCINFO_CLASS const char _dl_powerpc_cap_flags[60][10]
|
||||
+PROCINFO_CLASS const char _dl_powerpc_cap_flags[64][10]
|
||||
#endif
|
||||
#ifndef PROCINFO_DECL
|
||||
= {
|
||||
- "ppcle", "true_le", "archpmu", "vsx",
|
||||
+ "ppcle", "true_le", "", "",
|
||||
+ "", "", "archpmu", "vsx",
|
||||
"arch_2_06", "power6x", "dfp", "pa6t",
|
||||
"arch_2_05", "ic_snoop", "smt", "booke",
|
||||
"cellbe", "power5+", "power5", "power4",
|
||||
diff --git a/sysdeps/powerpc/dl-procinfo.h b/sysdeps/powerpc/dl-procinfo.h
|
||||
index bce3a49..2187c5e 100644
|
||||
--- a/sysdeps/powerpc/dl-procinfo.h
|
||||
+++ b/sysdeps/powerpc/dl-procinfo.h
|
||||
@@ -22,9 +22,6 @@
|
||||
#include <ldsodefs.h>
|
||||
#include <sysdep.h> /* This defines the PPC_FEATURE[2]_* macros. */
|
||||
|
||||
-/* There are 28 bits used, but they are bits 4..31. */
|
||||
-#define _DL_HWCAP_FIRST 4
|
||||
-
|
||||
/* The total number of available bits (including those prior to
|
||||
_DL_HWCAP_FIRST). Some of these bits might not be used. */
|
||||
#define _DL_HWCAP_COUNT 64
|
||||
@@ -68,7 +65,7 @@ static inline const char *
|
||||
__attribute__ ((unused))
|
||||
_dl_hwcap_string (int idx)
|
||||
{
|
||||
- return GLRO(dl_powerpc_cap_flags)[idx - _DL_HWCAP_FIRST];
|
||||
+ return GLRO(dl_powerpc_cap_flags)[idx];
|
||||
}
|
||||
|
||||
static inline const char *
|
||||
@@ -82,7 +79,7 @@ static inline int
|
||||
__attribute__ ((unused))
|
||||
_dl_string_hwcap (const char *str)
|
||||
{
|
||||
- for (int i = _DL_HWCAP_FIRST; i < _DL_HWCAP_COUNT; ++i)
|
||||
+ for (int i = 0; i < _DL_HWCAP_COUNT; ++i)
|
||||
if (strcmp (str, _dl_hwcap_string (i)) == 0)
|
||||
return i;
|
||||
return -1;
|
||||
@@ -180,7 +177,7 @@ _dl_procinfo (unsigned int type, unsigned long int word)
|
||||
case AT_HWCAP:
|
||||
_dl_printf ("AT_HWCAP: ");
|
||||
|
||||
- for (int i = _DL_HWCAP_FIRST; i <= _DL_HWCAP_LAST; ++i)
|
||||
+ for (int i = 0; i <= _DL_HWCAP_LAST; ++i)
|
||||
if (word & (1 << i))
|
||||
_dl_printf (" %s", _dl_hwcap_string (i));
|
||||
break;
|
Loading…
Add table
Add a link
Reference in a new issue