platform/upstream/glibc.git
14 years agoFix strstr/strcasestr/fma/fmaf on x86_64.
Jakub Jelinek [Thu, 3 Sep 2009 02:43:04 +0000 (19:43 -0700)]
Fix strstr/strcasestr/fma/fmaf on x86_64.

14 years agoCleanup _IO_wfile_seekoff.
Andreas Schwab [Tue, 1 Sep 2009 22:36:22 +0000 (15:36 -0700)]
Cleanup _IO_wfile_seekoff.

This reformulates the in-buffer optimisation check to match the code in
_IO_new_file_seekoff.  No functional changes, but easier to understand.

14 years agoFix use of 64-bit insn in 32-bit memcpy for POWER6.
Joshua W. Boyer [Tue, 1 Sep 2009 22:35:35 +0000 (15:35 -0700)]
Fix use of 64-bit insn in 32-bit memcpy for POWER6.

14 years agoAdd hidden alias for fflush.
Andreas Schwab [Tue, 1 Sep 2009 22:31:09 +0000 (15:31 -0700)]
Add hidden alias for fflush.

14 years agoFix x86_64 bits/mathinline.h for -m32 compilation.
Jakub Jelinek [Tue, 1 Sep 2009 22:30:12 +0000 (15:30 -0700)]
Fix x86_64 bits/mathinline.h for -m32 compilation.

14 years agoFix parse error in bits/mathinline.h with --std=c99
Andreas Schwab [Mon, 31 Aug 2009 09:52:17 +0000 (11:52 +0200)]
Fix parse error in bits/mathinline.h with --std=c99

14 years agoFix problems with memory allocation in assert.
Ulrich Drepper [Mon, 31 Aug 2009 11:56:07 +0000 (04:56 -0700)]
Fix problems with memory allocation in assert.

In case the allocator is corrupted and an assert triggers, we shouldn't
allocate any more memory.  Use a private assert definition which doesn't
use malloc.

14 years agoAdd local assert function to avoid problems with memory allocation in
Ulrich Drepper [Mon, 31 Aug 2009 11:55:10 +0000 (04:55 -0700)]
Add local assert function to avoid problems with memory allocation in
the real one.

14 years agoSH lowlevellock broken for FUTEX_CLOCK_REALTIME.
Andrew Stubbs [Fri, 28 Aug 2009 21:57:16 +0000 (14:57 -0700)]
SH lowlevellock broken for FUTEX_CLOCK_REALTIME.

14 years agoRemove ENABLE_SSSE3_ON_ATOM.
H.J. Lu [Fri, 28 Aug 2009 21:54:46 +0000 (14:54 -0700)]
Remove ENABLE_SSSE3_ON_ATOM.

It turns that SSSE3 isn't slow on Atom. The problem is bsf. This patch
removes ENABLE_SSSE3_ON_ATOM.

14 years agoMore strto{,u}l{,l} tests.
Ulrich Drepper [Fri, 28 Aug 2009 20:45:28 +0000 (13:45 -0700)]
More strto{,u}l{,l} tests.

14 years agoAdd isinf optimized for 64-bit.
Ulrich Drepper [Wed, 26 Aug 2009 07:51:45 +0000 (00:51 -0700)]
Add isinf optimized for 64-bit.

14 years agoOptimized isnan for 64-bit machines.
Ulrich Drepper [Wed, 26 Aug 2009 07:12:58 +0000 (00:12 -0700)]
Optimized isnan for 64-bit machines.

14 years agoMake llround an alias for lround on 64-bit machines.
Ulrich Drepper [Wed, 26 Aug 2009 06:53:23 +0000 (23:53 -0700)]
Make llround an alias for lround on 64-bit machines.

14 years agoOptimized nearbyint for 64-bit.
Ulrich Drepper [Wed, 26 Aug 2009 06:26:16 +0000 (23:26 -0700)]
Optimized nearbyint for 64-bit.

14 years agoOptimized rint implementation for x86-64.
Ulrich Drepper [Wed, 26 Aug 2009 05:44:34 +0000 (22:44 -0700)]
Optimized rint implementation for x86-64.

14 years agoAdd 64-bit optimized s_round.
Ulrich Drepper [Wed, 26 Aug 2009 00:28:50 +0000 (17:28 -0700)]
Add 64-bit optimized s_round.

14 years agoOptimize out duplicated scalbln code for x86-64.
Ulrich Drepper [Tue, 25 Aug 2009 23:46:34 +0000 (16:46 -0700)]
Optimize out duplicated scalbln code for x86-64.

14 years agoFix generic fdiml.
Joseph Myers [Tue, 25 Aug 2009 22:48:06 +0000 (15:48 -0700)]
Fix generic fdiml.

14 years agoAdd 64-bit optimized scalbln.
Ulrich Drepper [Tue, 25 Aug 2009 22:42:41 +0000 (15:42 -0700)]
Add 64-bit optimized scalbln.

14 years agoOptimized signbit{,f} for x86-64.
Ulrich Drepper [Tue, 25 Aug 2009 21:54:12 +0000 (14:54 -0700)]
Optimized signbit{,f} for x86-64.

14 years agoAdd 64-bit optimized version lround.
Ulrich Drepper [Tue, 25 Aug 2009 21:12:41 +0000 (14:12 -0700)]
Add 64-bit optimized version lround.

14 years agoUpdate the conformance description.
Joseph Myers [Tue, 25 Aug 2009 20:08:04 +0000 (13:08 -0700)]
Update the conformance description.

14 years ago64-bit optimized implementation of trunc.
Ulrich Drepper [Tue, 25 Aug 2009 19:02:13 +0000 (12:02 -0700)]
64-bit optimized implementation of trunc.

14 years agoHandle AVX saving on x86-64 in interrupted smbol lookups.
Ulrich Drepper [Tue, 25 Aug 2009 17:42:30 +0000 (10:42 -0700)]
Handle AVX saving on x86-64 in interrupted smbol lookups.

If a signal arrived during a symbol lookup and the signal handler also
required a symbol lookup, the end of the lookup in the signal handler reset
the flag whether restoring AVX/SSE registers is needed.  Resetting means
in this case that the tail part of the outer lookup code will try to
restore the registers and this can fail miserably.  We now restore to the
previous value which makes nesting calls possible.

14 years agoAdd ceil implementation for 64-bit machines.
Ulrich Drepper [Tue, 25 Aug 2009 01:05:48 +0000 (18:05 -0700)]
Add ceil implementation for 64-bit machines.

On 64-bit machines we should not split doubles into two 32 bit
integer and handle the words separately.  We have wide registers.
This patch implements a 64-bit ceil version.  Ideally all other
functions will be converted over time.

14 years agoHint to kernel that thread stack memory can be removed.
Ulrich Drepper [Mon, 24 Aug 2009 23:23:47 +0000 (16:23 -0700)]
Hint to kernel that thread stack memory can be removed.

14 years agoOptimize float construction/extraction on x86-64.
Ulrich Drepper [Mon, 24 Aug 2009 21:52:49 +0000 (14:52 -0700)]
Optimize float construction/extraction on x86-64.

14 years agoMerge branch 'master' of ssh://sources.redhat.com/git/glibc
Ulrich Drepper [Mon, 24 Aug 2009 19:07:27 +0000 (12:07 -0700)]
Merge branch 'master' of ssh://sources.redhat.com/git/glibc

14 years agoFix overflow handling in fdim.
Ulrich Drepper [Mon, 24 Aug 2009 19:06:55 +0000 (12:06 -0700)]
Fix overflow handling in fdim.

14 years agoAdd sysdeps/unix/syscall-template.S; build syscall stubs with deps and -g pointing...
Roland McGrath [Mon, 24 Aug 2009 00:43:21 +0000 (17:43 -0700)]
Add sysdeps/unix/syscall-template.S; build syscall stubs with deps and -g pointing to it.

14 years agoDefine math_errhandling is possible.
Ulrich Drepper [Mon, 24 Aug 2009 17:33:57 +0000 (10:33 -0700)]
Define math_errhandling is possible.

14 years agoOptimize x86-64 signbit{,f} a bit.
Ulrich Drepper [Mon, 24 Aug 2009 17:20:58 +0000 (10:20 -0700)]
Optimize x86-64 signbit{,f} a bit.

14 years agoMerge branch 'master' of ssh://sources.redhat.com/git/glibc
Ulrich Drepper [Mon, 24 Aug 2009 03:43:53 +0000 (20:43 -0700)]
Merge branch 'master' of ssh://sources.redhat.com/git/glibc

14 years agoFix td_ta_map_lwp2thr logging and early sanity check.
Roland McGrath [Sun, 23 Aug 2009 23:33:50 +0000 (16:33 -0700)]
Fix td_ta_map_lwp2thr logging and early sanity check.

14 years agoExtend last test case.
Ulrich Drepper [Sun, 23 Aug 2009 23:03:48 +0000 (16:03 -0700)]
Extend last test case.

14 years agoAdd test case for last fixed regex bug.
Ulrich Drepper [Sun, 23 Aug 2009 22:33:40 +0000 (15:33 -0700)]
Add test case for last fixed regex bug.

14 years agoRecognize ill-formed { } expressions in regcomp.
Ulrich Drepper [Sun, 23 Aug 2009 22:22:00 +0000 (15:22 -0700)]
Recognize ill-formed { } expressions in regcomp.

14 years agoAlso correct _POSIX2_* constants in case older standards are selected.
Ulrich Drepper [Sun, 23 Aug 2009 21:55:51 +0000 (14:55 -0700)]
Also correct _POSIX2_* constants in case older standards are selected.

14 years agoMore namespace cleanups.
Ulrich Drepper [Sun, 23 Aug 2009 20:59:41 +0000 (13:59 -0700)]
More namespace cleanups.

14 years agoDefine _POSIX_VERSION correctly when older POSIX versions are selected.
Ulrich Drepper [Sun, 23 Aug 2009 19:27:09 +0000 (12:27 -0700)]
Define _POSIX_VERSION correctly when older POSIX versions are selected.

14 years agoPrint sign of NaN values.
Ulrich Drepper [Sun, 23 Aug 2009 18:57:52 +0000 (11:57 -0700)]
Print sign of NaN values.

14 years agoThread-local locale handling part of XPG7.
Ulrich Drepper [Sun, 23 Aug 2009 17:56:08 +0000 (10:56 -0700)]
Thread-local locale handling part of XPG7.

I incorrectly enabled the definitions for XPG6.

14 years agoRvert accidental checkins.
Ulrich Drepper [Sun, 23 Aug 2009 00:58:04 +0000 (17:58 -0700)]
Rvert accidental checkins.

14 years agoAdd sigstack handling to Linux ____longjmp_chk on powerpc.
Andreas Schwab [Sat, 22 Aug 2009 09:01:51 +0000 (02:01 -0700)]
Add sigstack handling to Linux ____longjmp_chk on powerpc.

14 years agoImprove backtrace_symbols{,_fd} output when missing symbols.
Roland McGrath [Thu, 20 Aug 2009 22:31:08 +0000 (15:31 -0700)]
Improve backtrace_symbols{,_fd} output when missing symbols.

14 years agoFix 64-bit platform handling in test cases for generated headers with constants.
Ulrich Drepper [Sun, 16 Aug 2009 07:39:43 +0000 (00:39 -0700)]
Fix 64-bit platform handling in test cases for generated headers with constants.

14 years agoImprove test-skeleton.c to clean up after dead parent.
Ulrich Drepper [Fri, 14 Aug 2009 07:42:51 +0000 (00:42 -0700)]
Improve test-skeleton.c to clean up after dead parent.

14 years agoAdd CFI directives to x86-64 pthread_rwlock_unlock.
Ulrich Drepper [Wed, 12 Aug 2009 03:47:36 +0000 (20:47 -0700)]
Add CFI directives to x86-64 pthread_rwlock_unlock.

14 years agoAdd CFI directives to x86-64 pthread_rwlock_{rd,wr)lock.
Ulrich Drepper [Mon, 10 Aug 2009 18:26:16 +0000 (11:26 -0700)]
Add CFI directives to x86-64 pthread_rwlock_{rd,wr)lock.

14 years agoSH: fix clobber list in stdlib/longlong.h
SUGIOKA Toshinobu [Mon, 10 Aug 2009 15:12:49 +0000 (08:12 -0700)]
SH: fix clobber list in stdlib/longlong.h

14 years agoFix check for PI mutex in x86-64 pthread_cond_signal
Andreas Schwab [Mon, 10 Aug 2009 15:10:11 +0000 (08:10 -0700)]
Fix check for PI mutex in x86-64 pthread_cond_signal

Register eax contains the syscall number, use a different one instead.

14 years agoOptimize x86-64 version of sem_timedwait.
Ulrich Drepper [Sun, 9 Aug 2009 00:48:09 +0000 (17:48 -0700)]
Optimize x86-64 version of sem_timedwait.

14 years agoRemove duplicate NEWS entry.
Ulrich Drepper [Sat, 8 Aug 2009 18:01:04 +0000 (11:01 -0700)]
Remove duplicate NEWS entry.

14 years agoYet more news items.
Ulrich Drepper [Sat, 8 Aug 2009 17:57:59 +0000 (10:57 -0700)]
Yet more news items.

14 years agoSupport mixed SSE/AVX audit and check AVX only once.
H.J. Lu [Sat, 8 Aug 2009 17:54:42 +0000 (10:54 -0700)]
Support mixed SSE/AVX audit and check AVX only once.

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.

14 years agoUse PIC only if SHARED is defined.
H.J. Lu [Sat, 8 Aug 2009 17:29:29 +0000 (10:29 -0700)]
Use PIC only if SHARED is defined.

For ia32, we can avoid PIC in IFUNC functions in static library.

14 years agoSimplify cpuid.h configure test.
Jim Meyering [Sat, 8 Aug 2009 17:25:58 +0000 (10:25 -0700)]
Simplify cpuid.h configure test.

14 years agoAnother minor optimization of x86-64 pthread_cond_wait.
Ulrich Drepper [Sat, 8 Aug 2009 17:21:46 +0000 (10:21 -0700)]
Another minor optimization of x86-64 pthread_cond_wait.

14 years agoMove SSE4.2 functions together.
Ulrich Drepper [Sat, 8 Aug 2009 16:38:32 +0000 (09:38 -0700)]
Move SSE4.2 functions together.

14 years agoAdd some news items.
Ulrich Drepper [Sat, 8 Aug 2009 16:13:02 +0000 (09:13 -0700)]
Add some news items.

14 years agoAdd SSSE3-optimized implementation of str{,n}cmp for x86-64.
Ulrich Drepper [Sat, 8 Aug 2009 05:51:02 +0000 (22:51 -0700)]
Add SSSE3-optimized implementation of str{,n}cmp for x86-64.

14 years agoSmall optimizations to cancellable x86-64 code.
Ulrich Drepper [Sat, 8 Aug 2009 03:36:53 +0000 (20:36 -0700)]
Small optimizations to cancellable x86-64 code.

14 years agoAvoid warning through fake initialization.
Ulrich Drepper [Fri, 7 Aug 2009 23:19:54 +0000 (16:19 -0700)]
Avoid warning through fake initialization.

14 years agoFix whitespace in last patch.
Ulrich Drepper [Fri, 7 Aug 2009 17:41:54 +0000 (10:41 -0700)]
Fix whitespace in last patch.

14 years agoAdd the missing "; \".
H.J. Lu [Fri, 7 Aug 2009 17:40:45 +0000 (10:40 -0700)]
Add the missing "; \".

14 years agoFix expanding STB_GNU_UNIQUE hash table.
Andreas Schwab [Fri, 7 Aug 2009 17:39:55 +0000 (10:39 -0700)]
Fix expanding STB_GNU_UNIQUE hash table.

An invalid symbol name pointer was entered into the hash table while
enlarging it.

14 years agoFix whitespaces in last checkin.
Ulrich Drepper [Fri, 7 Aug 2009 16:47:12 +0000 (09:47 -0700)]
Fix whitespaces in last checkin.

14 years agoProperly count number of logical processors on Intel CPUs.
H.J. Lu [Fri, 7 Aug 2009 16:39:36 +0000 (09:39 -0700)]
Properly count number of logical processors on Intel CPUs.

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.

14 years agoFix sed expression in TAGS command.
Andreas Schwab [Fri, 7 Aug 2009 08:40:42 +0000 (10:40 +0200)]
Fix sed expression in TAGS command.

The backslash-newline pair is interpreted as the beginning of an address
regex.

14 years agoIgnore TAGS.
Andreas Schwab [Thu, 6 Aug 2009 11:29:14 +0000 (13:29 +0200)]
Ignore TAGS.

14 years agoAdd x86 SSE strlen.
Ulrich Drepper [Wed, 5 Aug 2009 01:15:02 +0000 (18:15 -0700)]
Add x86 SSE strlen.

14 years agoAdd x86 32-bit SSE4.2 string functions.
H.J. Lu [Tue, 4 Aug 2009 19:13:43 +0000 (12:13 -0700)]
Add x86 32-bit SSE4.2 string functions.

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.

14 years agoOptimize x86-64 syscall cancellation handling.
Ulrich Drepper [Tue, 4 Aug 2009 18:03:46 +0000 (11:03 -0700)]
Optimize x86-64 syscall cancellation handling.

The syscall wrappers had to save and restore the syscall parameter
values and return value when calling the functions to enable/disable
cancellation were called.  Not anymore.  The called functions are
special and don't modify any unexpected registers.

14 years agoRemove leftover code from Linux/x86 ____longjmp_chk.
Ulrich Drepper [Mon, 3 Aug 2009 04:51:37 +0000 (21:51 -0700)]
Remove leftover code from Linux/x86 ____longjmp_chk.

14 years agox86/x86-64 now needs <cpuid.h> from gcc.
Ulrich Drepper [Sun, 2 Aug 2009 17:38:44 +0000 (10:38 -0700)]
x86/x86-64 now needs <cpuid.h> from gcc.

14 years agoRemove last trace of bounded pointer handling from ____longjmp_chk on x86-64.
Ulrich Drepper [Sat, 1 Aug 2009 21:18:58 +0000 (14:18 -0700)]
Remove last trace of bounded pointer handling from ____longjmp_chk on x86-64.

14 years agoMacro cleanup.
Ulrich Drepper [Sat, 1 Aug 2009 05:30:30 +0000 (22:30 -0700)]
Macro cleanup.

Better definition of the *_NITSET macros.

14 years agoMerge branch 'master' of file:///net/myware66/home/drepper/gnu/libc
Ulrich Drepper [Sat, 1 Aug 2009 04:50:00 +0000 (21:50 -0700)]
Merge branch 'master' of file:///net/myware66/home/drepper/gnu/libc

14 years agoRegenerated.
Ulrich Drepper [Sat, 1 Aug 2009 04:48:59 +0000 (21:48 -0700)]
Regenerated.

14 years agoOptimize x86 and x86-64 ____longjmp_chk for Linux.
Ulrich Drepper [Sat, 1 Aug 2009 00:27:38 +0000 (17:27 -0700)]
Optimize x86 and x86-64 ____longjmp_chk for Linux.

14 years agoFix ____longjmp_chk on x86-64.
Ulrich Drepper [Fri, 31 Jul 2009 19:57:45 +0000 (12:57 -0700)]
Fix ____longjmp_chk on x86-64.

After a recent change to fix CFI in ____longjmp_chk the test of the
ss_flags used the wrong memory location.

14 years agoSupport multiarch for i686.
H.J. Lu [Fri, 31 Jul 2009 18:53:35 +0000 (11:53 -0700)]
Support multiarch for i686.

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.

14 years agoFix obstack* on i?86
Jakub Jelinek [Fri, 31 Jul 2009 14:26:36 +0000 (07:26 -0700)]
Fix obstack* on i?86

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.

14 years agoRemove CHEC_ESP handling from i386 __longjmp.
Ulrich Drepper [Fri, 31 Jul 2009 14:20:45 +0000 (07:20 -0700)]
Remove CHEC_ESP handling from i386 __longjmp.

14 years agoWhitespace cleanup.
Ulrich Drepper [Fri, 31 Jul 2009 04:51:56 +0000 (21:51 -0700)]
Whitespace cleanup.

14 years agoAdd sigstack handling to Linux ____longjmp_chk on i386.
Ulrich Drepper [Fri, 31 Jul 2009 04:50:14 +0000 (21:50 -0700)]
Add sigstack handling to Linux ____longjmp_chk on i386.

All other i386 ports need to provide their own versions.

14 years ago____longjmp_chk is now OS-specific.
Ulrich Drepper [Fri, 31 Jul 2009 04:42:27 +0000 (21:42 -0700)]
____longjmp_chk is now OS-specific.

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.

14 years agoChange code a bit to correct CFI.
Ulrich Drepper [Fri, 31 Jul 2009 04:29:27 +0000 (21:29 -0700)]
Change code a bit to correct CFI.

14 years agoOptimize ____longjmp_chk for x86-64 a bit.
Ulrich Drepper [Fri, 31 Jul 2009 03:09:30 +0000 (20:09 -0700)]
Optimize ____longjmp_chk for x86-64 a bit.

14 years agoAdd CFLAGS definition missing from last patch.
Ulrich Drepper [Fri, 31 Jul 2009 02:46:46 +0000 (19:46 -0700)]
Add CFLAGS definition missing from last patch.

14 years agoAdd test case for ____longjmp_chk vs signal stacks.
Ulrich Drepper [Fri, 31 Jul 2009 00:48:58 +0000 (17:48 -0700)]
Add test case for ____longjmp_chk vs signal stacks.

14 years agoFix x86-64 ____longjmp_chk to handle signal stacks.
Ulrich Drepper [Fri, 31 Jul 2009 00:31:48 +0000 (17:31 -0700)]
Fix x86-64 ____longjmp_chk to handle signal stacks.

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.

14 years agoStop backtrace when we make no more progress.
Ulrich Drepper [Thu, 30 Jul 2009 23:53:52 +0000 (16:53 -0700)]
Stop backtrace when we make no more progress.

14 years agoAdd support for x86-64 fma instruction.
Ulrich Drepper [Wed, 29 Jul 2009 22:26:06 +0000 (15:26 -0700)]
Add support for x86-64 fma instruction.

Use it to implement fma and fmaf, if possible.

14 years agoPrepare use if IFUNC functions outside libc.so.
Ulrich Drepper [Wed, 29 Jul 2009 22:22:28 +0000 (15:22 -0700)]
Prepare use if IFUNC functions outside libc.so.

We use a callback function into libc.so to get access to the data
structure with the information and have special versions of the test
macros which automatically use this function.

14 years agoFix x86-64 TCB alignment for future processor versions.
Ulrich Drepper [Wed, 29 Jul 2009 16:01:04 +0000 (09:01 -0700)]
Fix x86-64 TCB alignment for future processor versions.

14 years agoImprove CFI in x86-64 ld.so trampoline code.
Ulrich Drepper [Wed, 29 Jul 2009 15:50:03 +0000 (08:50 -0700)]
Improve CFI in x86-64 ld.so trampoline code.

14 years agoProperly restore AVX registers on x86-64.
H.J. Lu [Wed, 29 Jul 2009 15:40:54 +0000 (08:40 -0700)]
Properly restore AVX registers on x86-64.

tst-audit4 and tst-audit5 fail under AVX emulator due to je instead of
jne. This patch fixes them.

14 years agoPreserve SSE registers in runtime relocations on x86-64.
Ulrich Drepper [Wed, 29 Jul 2009 15:33:03 +0000 (08:33 -0700)]
Preserve SSE registers in runtime relocations on x86-64.

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.