mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-01 10:06:57 +03:00
tunables: Use glibc.tune.hwcap_mask tunable instead of _dl_hwcap_mask
Drop _dl_hwcap_mask when building with tunables. This completes the transition of hwcap_mask reading from _dl_hwcap_mask to tunables. * elf/dl-hwcaps.h: New file. * elf/dl-hwcaps.c: Include it. (_dl_important_hwcaps)[HAVE_TUNABLES]: Read and update glibc.tune.hwcap_mask. * elf/dl-cache.c: Include dl-hwcaps.h. (_dl_load_cache_lookup)[HAVE_TUNABLES]: Read glibc.tune.hwcap_mask. * sysdeps/sparc/sparc32/dl-machine.h: Likewise. * elf/dl-support.c (_dl_hwcap2)[HAVE_TUNABLES]: Drop _dl_hwcap_mask. * elf/rtld.c (rtld_global_ro)[HAVE_TUNABLES]: Drop _dl_hwcap_mask. (process_envvars)[HAVE_TUNABLES]: Likewise. * sysdeps/generic/ldsodefs.h (rtld_global_ro)[HAVE_TUNABLES]: Likewise. * sysdeps/x86/cpu-features.c (init_cpu_features): Don't initialize dl_hwcap_mask when tunables are enabled.
This commit is contained in:
@ -27,6 +27,7 @@
|
||||
#include <sysdep.h>
|
||||
#include <tls.h>
|
||||
#include <dl-plt.h>
|
||||
#include <elf/dl-hwcaps.h>
|
||||
|
||||
/* Return nonzero iff ELF header is compatible with the running host. */
|
||||
static inline int
|
||||
@ -37,7 +38,8 @@ elf_machine_matches_host (const Elf32_Ehdr *ehdr)
|
||||
else if (ehdr->e_machine == EM_SPARC32PLUS)
|
||||
{
|
||||
#ifdef SHARED
|
||||
return GLRO(dl_hwcap) & GLRO(dl_hwcap_mask) & HWCAP_SPARC_V9;
|
||||
uint64_t hwcap_mask = GET_HWCAP_MASK();
|
||||
return GLRO(dl_hwcap) & hwcap_mask & HWCAP_SPARC_V9;
|
||||
#else
|
||||
return GLRO(dl_hwcap) & HWCAP_SPARC_V9;
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user