aboutsummaryrefslogtreecommitdiff
path: root/ChangeLog
AgeCommit message (Collapse)Author
2009-08-08Support mixed SSE/AVX audit and check AVX only once.H.J. Lu
This patch fixes mixed SSE/AVX audit and checks AVX only once in _dl_runtime_profile. When an AVX or SSE register value in pltenter is modified, we have to make sure that the SSE part value is the same in both lr_xmm and lr_vector fields so that pltexit will get the correct value from either lr_xmm or lr_vector fields. AVX-enabled pltenter should update both lr_xmm and lr_vector fields to support stacked AVX/SSE pltenter functions.
2009-08-08Use PIC only if SHARED is defined.H.J. Lu
For ia32, we can avoid PIC in IFUNC functions in static library.
2009-08-08Simplify cpuid.h configure test.Jim Meyering
2009-08-08Move SSE4.2 functions together.Ulrich Drepper
2009-08-07Add SSSE3-optimized implementation of str{,n}cmp for x86-64.Ulrich Drepper
2009-08-07Avoid warning through fake initialization.Ulrich Drepper
2009-08-07Add the missing "; \".H.J. Lu
2009-08-07Fix expanding STB_GNU_UNIQUE hash table.Andreas Schwab
An invalid symbol name pointer was entered into the hash table while enlarging it.
2009-08-07Properly count number of logical processors on Intel CPUs.H.J. Lu
The meaning of the 25-14 bits in EAX returned from cpuid with EAX = 4 has been changed from "the maximum number of threads sharing the cache" to "the maximum number of addressable IDs for logical processors sharing the cache" if cpuid takes EAX = 11. We need to use results from both EAX = 4 and EAX = 11 to get the number of threads sharing the cache. The 25-14 bits in EAX on Core i7 is 15 although the number of logical processors is 8. Here is a white paper on this: http://software.intel.com/en-us/articles/intel-64-architecture-processor-topology-enumeration/ This patch correctly counts number of logical processors on Intel CPUs with EAX = 11 support on cpuid. Tested on Dinnington, Core i7 and Nehalem EX/EP. It also fixed Pentium Ds workaround since EBX may not have the right value returned from cpuid with EAX = 1.
2009-08-07Fix sed expression in TAGS command.Andreas Schwab
The backslash-newline pair is interpreted as the beginning of an address regex.
2009-08-04Add x86 SSE strlen.Ulrich Drepper
2009-08-04Add x86 32-bit SSE4.2 string functions.H.J. Lu
This patch adds 32bit SSE4.2 string functions. It uses -16L instead of 0xfffffffffffffff0L, which works for both 32bit and 64bit long. Tested on 32bit Core i7 and Core 2.
2009-08-02x86/x86-64 now needs <cpuid.h> from gcc.Ulrich Drepper
2009-07-31Optimize x86 and x86-64 ____longjmp_chk for Linux.Ulrich Drepper
2009-07-31Fix ____longjmp_chk on x86-64.Ulrich Drepper
After a recent change to fix CFI in ____longjmp_chk the test of the ss_flags used the wrong memory location.
2009-07-31Support multiarch for i686.H.J. Lu
This patch adds multiarch support when configured for i686. I modified some x86-64 functions to support 32bit. I will contribute 32bit SSE string and memory functions later.
2009-07-31Fix obstack* on i?86Jakub Jelinek
obstack calls several callbacks, so on i?86 it'd better be compiled without -mpreferred-stack-boundary=2, otherwise the callbacks are called with misaligned stack.
2009-07-30Add sigstack handling to Linux ____longjmp_chk on i386.Ulrich Drepper
All other i386 ports need to provide their own versions.
2009-07-30____longjmp_chk is now OS-specific.Ulrich Drepper
We use sigaltstack internally which on some systems is a syscall and should be used as such. Move the x86-64 version to the Linux specific directory and create in its place a file which always causes compile errors.
2009-07-30Add test case for ____longjmp_chk vs signal stacks.Ulrich Drepper
2009-07-30Fix x86-64 ____longjmp_chk to handle signal stacks.Ulrich Drepper
The simple test previously used might trigger if the longjmp jumps from the signal stack to the normal stack. We now explicitly test for this case.
2009-07-30Stop backtrace when we make no more progress.Ulrich Drepper
2009-07-29Add support for x86-64 fma instruction.Ulrich Drepper
Use it to implement fma and fmaf, if possible.
2009-07-29Fix x86-64 TCB alignment for future processor versions.Ulrich Drepper
2009-07-29Improve CFI in x86-64 ld.so trampoline code.Ulrich Drepper
2009-07-29Properly restore AVX registers on x86-64.H.J. Lu
tst-audit4 and tst-audit5 fail under AVX emulator due to je instead of jne. This patch fixes them.
2009-07-29Preserve SSE registers in runtime relocations on x86-64.Ulrich Drepper
SSE registers are used for passing parameters and must be preserved in runtime relocations. This is inside ld.so enforced through the tests in tst-xmmymm.sh. But the malloc routines used after startup come from libc.so and can be arbitrarily complex. It's overkill to save the SSE registers all the time because of that. These calls are rare. Instead we save them on demand. The new infrastructure put in place in this patch makes this possible and efficient.
2009-07-28Fix bookkeeping of static TLS block for TLS_TCB_AT_TP architectures.Ulrich Drepper
2009-07-27Refine testing for xmm/ymm register use in x86-64 ld.so.Ulrich Drepper
The test now takes the callgraph into account. Only code called during runtime relocation is affected by the limitation. We now determine the affected object files as closely as possible from the outside. This allowed to remove some the specializations for some of the string functions as they are only used in other code paths.
2009-07-27Define and implement RES_USE_DNSSEC option in resolver.Adam Tkac
2009-07-27Fix STB_GNU_UNIQUE handling for > 30 unique symbols.Jakub Jelinek
There were several issues when the initial 31 entries hashtab filled up. size * 3 <= tab->n_elements is always false, table can't have more elements than its size. I assume from libiberty/hashtab.c this meant to be check for 3/4 full. Even after fixing that, _dl_higher_prime_number (31) apparently returns 31, only _dl_higher_prime_number (32) returns 61. And, size variable wasn't updated during reallocation, which means during reallocation the insertion of the new entry was done into a wrong spot. All this lead to a hang in ld.so, because a search with n_elements 31 size 31 wouldn't ever terminate.
2009-07-27No need for special strcmp for rtld.Ulrich Drepper
2009-07-26Make sure no code in ld.so uses xmm/ymm registers on x86-64.Ulrich Drepper
This patch introduces a test to make sure no function modifies the xmm/ymm registers. With the exception of the auditing functions. The test is probably too pessimistic. All code linked into ld.so is checked. Perhaps at some point the callgraph starting from _dl_fixup and _dl_profile_fixup is checked and we can start using faster SSE-using functions in parts of ld.so.
2009-07-26Add missing ChangeLog entry for last checkin.Ulrich Drepper
2009-07-26Compatibility of signalfd/eventfd with older kernels.Ulrich Drepper
2009-07-26Handle SERVFAIL, NOTIMP, REFUSED replies from DNS server better.Ulrich Drepper
When doing IPv4+6 lookups we have to pass up the error record from send_dg.
2009-07-26Define NT_GNU_GOLD_VERSION.Ulrich Drepper
2009-07-25Some some optimizations for x86-64 strcmp.H.J. Lu
2009-07-25Handle missing NSS modules and those without callbacks.Ulrich Drepper
getaddrinfo didn't update the status variable in that round of the loop if no callback was used.
2009-07-25Optimize x86-64 SSE4.2 strcmp.Ulrich Drepper
The file contained some code which was never used. Don't compile it in.
2009-07-24Don't automatically use /lib/modules/* headers.Ulrich Drepper
Ever since the /usr/include/linux headers got cleaned up this isn't necessary. Meanwhile everybody should have these cleanups.
2009-07-24S/390: Hardware iconv modules.Andreas Krebbel
2009-07-23Avoid cpuid instructions in cache info discovery.Ulrich Drepper
When multiarch is enabled we have this information stored. Use it.
2009-07-23Add more cache descriptors for L3 caches on x86 and x86-64.Ulrich Drepper
The most recent AP 485 describes a few more cache descriptors for L3 caches with 24-way associativity.
2009-07-23Perform test for Arom x86-64 in central place and handle it.Ulrich Drepper
There will be more than one function which, in multiarch mode, wants to use SSSE3. We should not test in each of them for Atoms with slow SSSE3. Instead, disable the SSSE3 bit in the startup code for such machines.
2009-07-23Avoid warnings in test cases.Ulrich Drepper
The posix/tst-rfc3484* test cases caused warnings in newer gccs because the unused but copied sin_zero part of sockaddr_in wasn't explicitly initialized.
2009-07-23Make include/unistd.h suitable for C++ test cases.Duncan Simpson
2009-07-23Preserve stack alignment in i386 makecontext.Ulrich Drepper
2009-07-23Some more fixes for the unique symbol handling.Ulrich Drepper
The hash value can be zero, so we need a different test for empty slots. And unify the way we prevent a DSO from being unloaded.
2009-07-23Handle unloading of DSO with a unique symbol definition.Ulrich Drepper