Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-15-SP1:GA
glibc.18276
0002-S390-Use-hwcap-instead-of-dl_hwcap-in-ifun...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0002-S390-Use-hwcap-instead-of-dl_hwcap-in-ifunc-resolver.patch of Package glibc.18276
From 504d5b54b1c4c71965eae307fdac0eb313a3ce28 Mon Sep 17 00:00:00 2001 From: Stefan Liebler <stli@linux.ibm.com> Date: Tue, 18 Dec 2018 13:57:03 +0100 Subject: [PATCH 02/18] S390: Use hwcap instead of dl_hwcap in ifunc-resolvers. The renaming of hwcap arguments in ifunc-resolvers is needed in order to prepare for further commits which refactors ifunc handling for memset, memcmp, and memcpy. Now you are able to use s390_libc_ifunc_init which stores the stfle bits within the expression for an ifunc-resolver generated by s390_libc_ifunc_expr. ChangeLog: * sysdeps/s390/multiarch/ifunc-resolve.h (s390_libc_ifunc_init, s390_libc_ifunc, s390_vx_libc_ifunc2_redirected): Use hwcap instead of dl_hwcap. (cherry picked from commit e8023f2685c9f97e72bbe9d2a9c968e0d8438371) --- sysdeps/s390/multiarch/ifunc-resolve.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) Index: glibc-2.26/sysdeps/s390/multiarch/ifunc-resolve.h =================================================================== --- glibc-2.26.orig/sysdeps/s390/multiarch/ifunc-resolve.h +++ glibc-2.26/sysdeps/s390/multiarch/ifunc-resolve.h @@ -42,9 +42,9 @@ : : "cc"); #define s390_libc_ifunc_init() \ unsigned long long stfle_bits = 0ULL; \ - if (__glibc_likely((dl_hwcap & HWCAP_S390_STFLE) \ - && (dl_hwcap & HWCAP_S390_ZARCH) \ - && (dl_hwcap & HWCAP_S390_HIGH_GPRS))) \ + if (__glibc_likely ((hwcap & HWCAP_S390_STFLE) \ + && (hwcap & HWCAP_S390_ZARCH) \ + && (hwcap & HWCAP_S390_HIGH_GPRS))) \ { \ S390_STORE_STFLE (stfle_bits); \ } @@ -61,7 +61,7 @@ : __glibc_likely (S390_IS_Z10 (stfle_bits)) \ ? RESOLVERFUNC##_z10 \ : RESOLVERFUNC##_default, \ - unsigned long int dl_hwcap, s390_libc_ifunc_init); + unsigned long int hwcap, s390_libc_ifunc_init); #define s390_vx_libc_ifunc(FUNC) \ s390_vx_libc_ifunc2_redirected(FUNC, FUNC, FUNC) @@ -79,10 +79,10 @@ extern __typeof (TYPE_FUNC) RESOLVERFUNC##_vx attribute_hidden; \ extern __typeof (TYPE_FUNC) RESOLVERFUNC##_c attribute_hidden; \ __ifunc (TYPE_FUNC, FUNC, \ - (dl_hwcap & HWCAP_S390_VX) \ + (hwcap & HWCAP_S390_VX) \ ? RESOLVERFUNC##_vx \ : RESOLVERFUNC##_c, \ - unsigned long int dl_hwcap, s390_vx_libc_ifunc_init); + unsigned long int hwcap, s390_vx_libc_ifunc_init); #define s390_libc_ifunc_expr_init() #define s390_libc_ifunc_expr(TYPE_FUNC, FUNC, EXPR) \
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor