diff options
author | Siddhesh Poyarekar <siddhesh@sourceware.org> | 2017-05-31 06:38:32 +0530 |
---|---|---|
committer | Siddhesh Poyarekar <siddhesh@sourceware.org> | 2017-05-31 06:38:33 +0530 |
commit | 4158ba082c641f407009363b186b4c85f8a01a35 (patch) | |
tree | fcce87f0eaeed4b2c2e76f68fcc41a73f2c63b29 /ChangeLog | |
parent | 2e0bbbfbf95fc9e22692e93658a6fbdd2d4554da (diff) | |
download | glibc-4158ba082c641f407009363b186b4c85f8a01a35.tar glibc-4158ba082c641f407009363b186b4c85f8a01a35.tar.gz glibc-4158ba082c641f407009363b186b4c85f8a01a35.tar.bz2 glibc-4158ba082c641f407009363b186b4c85f8a01a35.zip |
Delay initialization of CPU features struct in static binaries
Allow the CPU features structure set up to be overridden by tunables
by delaying it to until after tunables are initialized. The
initialization is already delayed in dynamically linked glibc, it is
only in static binaries that the initialization is set early to allow
it to influence IFUNC relocations that happen in libc-start. It is a
bit too early however and there is a good place between tunables
initialization and IFUNC relocations where this can be done.
Verified that this does not regress the testsuite.
* csu/libc-start.c [!ARCH_INIT_CPU_FEATURES]: Define
ARCH_INIT_CPU_FEATURES.
(LIBC_START_MAIN): Call it.
* sysdeps/unix/sysv/linux/aarch64/libc-start.c
(__libc_start_main): Remove.
(ARCH_INIT_CPU_FEATURES): New macro.
* sysdeps/x86/libc-start.c (__libc_start_main): Remove.
(ARCH_INIT_CPU_FEATURES): New macro.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -1,3 +1,14 @@ +2017-05-31 Siddhesh Poyarekar <siddhesh@sourceware.org> + + * csu/libc-start.c [!ARCH_INIT_CPU_FEATURES]: Define + ARCH_INIT_CPU_FEATURES. + (LIBC_START_MAIN): Call it. + * sysdeps/unix/sysv/linux/aarch64/libc-start.c + (__libc_start_main): Remove. + (ARCH_INIT_CPU_FEATURES): New macro. + * sysdeps/x86/libc-start.c (__libc_start_main): Remove. + (ARCH_INIT_CPU_FEATURES): New macro. + 2017-05-30 Dennis Wölfing <denniswoelfing@gmx.de> Rüdiger Sonderfeld <ruediger@c-plusplus.de> |