about summary refs log tree commit diff
path: root/sysdeps/x86_64
Commit message (Collapse)AuthorAgeFilesLines
* Move TEST_f_f tests for [e-j]* functions from libm-test.inc to ↵Joseph Myers2013-12-031-0/+244
| | | | auto-libm-test-in.
* Move TEST_f_f tests for [a-c]* functions from libm-test.inc to ↵Joseph Myers2013-11-301-0/+653
| | | | auto-libm-test-in.
* Fix dbl-64 e_sqrt.c for non-default rounding modes (bug 16271).Joseph Myers2013-11-281-0/+1
|
* Fix typo in _dl_tlsdesc_resolve_hold.Ondřej Bílka2013-11-261-1/+1
|
* Fix spurious "inexact" exceptions from x86 pow with NaN argument (bug 16167).Joseph Myers2013-11-161-0/+3
|
* rename configure.in to configure.acMike Frysinger2013-10-304-2/+2
| | | | | | | Autoconf has been deprecating configure.in for quite a long time. Rename all our configure.in and preconfigure.in files to .ac. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Use p2align instead ALIGNOndřej Bílka2013-10-089-323/+288
|
* PowerPC floating point little-endian [1 of 15]Alan Modra2013-10-041-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | http://sourceware.org/ml/libc-alpha/2013-08/msg00081.html This is the first of a series of patches to ban ieee854_long_double and the ieee854_long_double macros when using IBM long double. union ieee854_long_double just isn't correct for IBM long double, especially when little-endian, and pretending it is OK has allowed a number of bugs to remain undetected in sysdeps/ieee754/ldbl-128ibm/. This changes the few places in generic code that use it. * stdio-common/printf_size.c (__printf_size): Don't use union ieee854_long_double in fpnum union. * stdio-common/printf_fphex.c (__printf_fphex): Likewise. Use signbit macro to retrieve sign from long double. * stdio-common/printf_fp.c (___printf_fp): Use signbit macro to retrieve sign from long double. * sysdeps/ieee754/ldbl-128ibm/printf_fphex.c: Adjust for fpnum change. * sysdeps/ieee754/ldbl-128/printf_fphex.c: Likewise. * sysdeps/ieee754/ldbl-96/printf_fphex.c: Likewise. * sysdeps/x86_64/fpu/printf_fphex.c: Likewise. * math/test-misc.c (main): Don't use union ieee854_long_double. ports/ * sysdeps/ia64/fpu/printf_fphex.c: Adjust for fpnum change.
* Faster strrchr.Ondřej Bílka2013-09-266-943/+199
|
* BZ #15754: CVE-2013-4788Carlos O'Donell2013-09-231-0/+5
| | | | | | | | | | | | The pointer guard used for pointer mangling was not initialized for static applications resulting in the security feature being disabled. The pointer guard is now correctly initialized to a random value for static applications. Existing static applications need to be recompiled to take advantage of the fix. The test tst-ptrguard1-static and tst-ptrguard1 add regression coverage to ensure the pointer guards are sufficiently random and initialized to a default value.
* Make __ffs hiddenAndreas Schwab2013-09-201-0/+1
|
* Faster strchr implementation.Ondřej Bílka2013-09-114-200/+160
|
* Fix lgammaf spurious underflow (bug 15427).Joseph Myers2013-09-031-0/+56
|
* Add unaligned strcmp.Ondřej Bílka2013-09-034-2/+222
|
* Fix spurious jnf underflows (bug 14155).Joseph Myers2013-09-021-2/+17
|
* Fix typos.Ondřej Bílka2013-08-302-2/+2
|
* Fix rawmemchr regression on bulldozer.Ondřej Bílka2013-08-302-109/+0
|
* Fix typos.Ondřej Bílka2013-08-212-3/+3
|
* Update x86 and x86_64 ulps on AMD FX-8350 with GCC 4.8.1.Jeroen Albers2013-07-051-14/+133
|
* Update x86_64 ULPs.Markus Trippelsdorf2013-07-021-2/+318
|
* Regenerate x86 and x86_64 ulps.Joseph Myers2013-07-021-833/+43
|
* Skip SSE4.2 versions on Intel SilvermontLiubov Dmitrieva2013-06-285-15/+37
| | | | SSE2/SSSE3 versions are faster than SSE4.2 versions on Intel Silvermont.
* Fix buffers overrun in x86_64 memcmp-ssse3.SLiubov Dmitrieva2013-06-261-4/+2
|
* Set fast unaligned load flag for new Intel microarchitectureLiubov Dmitrieva2013-06-141-0/+7
| | | | | | | | | I have small patch for new Intel Silvermont machines. http://newsroom.intel.com/community/intel_newsroom/blog/2013/05/06/intel-launches-low-power-high-performance-silvermont-microarchitecture I checked this on my machine and see that strcpy, ... unaligned versions are faster than ssse3 versions.
* Add rtld-memset.S for x86_64Siddhesh Poyarekar2013-06-152-1/+37
| | | | | | Resolves: BZ #15627 Add an assembler version of rtld-memset to avoid using SSE registers.
* Remove trailing whitespace.Joseph Myers2013-06-053-3/+3
|
* Avoid crashing in LD_DEBUG when program name is unavailableSiddhesh Poyarekar2013-05-291-3/+1
| | | | | | | | | Resolves: #15465 The program name may be unavailable if the user application tampers with argc and argv[]. Some parts of the dynamic linker caters for this while others don't, so this patch consolidates the check and fallback into a single macro and updates all users.
* Test drem and pow10 in libm-test.inc.Joseph Myers2013-05-241-0/+26
|
* Use same tests for isfinite/finite, lgamma/gamma.Joseph Myers2013-05-241-0/+16
|
* Don't include expected results in libm-test test names.Joseph Myers2013-05-221-2154/+2154
|
* Faster memset on x64Ondrej Bilka2013-05-201-1315/+90
| | | | | | | | | This implementation speed up memset in several ways. First is avoiding expensive computed jump. Second is using fact that arguments of memset are most of time aligned to 8 bytes. Benchmark results on: kam.mff.cuni.cz/~ondra/benchmark_string/memset_profile_result27_04_13.tar.bz2
* Faster memcpy on x64.Ondrej Bilka2013-05-204-8/+185
| | | | | | | | | We add new memcpy version that uses unaligned loads which are fast on modern processors. This allows second improvement which is avoiding computed jump which is relatively expensive operation. Tests available here: http://kam.mff.cuni.cz/~ondra/memcpy_profile_result27_04_13.tar.bz2
* Handle sincos with generic libm-test logic.Joseph Myers2013-05-191-6/+6
|
* Add #include <stdint.h> for uint[32|64]_t usage (except installed headers).Ryan S. Arnold2013-05-162-0/+3
|
* Use movq for 64-bit operationsPeter Collingbourne2013-05-151-2/+4
| | | | | | | | | | | The EXTRACT_WORDS64 and INSERT_WORDS64 macros use movd for a 64-bit operation. Somehow gcc manages to turn this into movq, but LLVM won't. 2013-05-15 Peter Collingbourne <pcc@google.com> * sysdeps/x86_64/fpu/math_private.h (MOVQ): New macro. (EXTRACT_WORDS64) Use where appropriate. (INSERT_WORDS64) Likewise.
* Use x constraints for operands to vfmaddss and vfmaddsdPeter Collingbourne2013-05-152-2/+2
| | | | | | | | | | | | | | | While these instructions accept memory operands, only one operand may be a memory operand. Giving two operands xm constraints gives the compiler the option of using memory for both operands, which would result in invalid assembly code. Using x for all operands is more appropriate, as most x86_64 calling conventions will pass the arguments in registers anyway. 2013-05-15 Peter Collingbourne <pcc@google.com> * sysdeps/x86_64/fpu/multiarch/s_fma.c (__fma_fma4): Replace xm constraints with x constraints. * sysdeps/x86_64/fpu/multiarch/s_fmaf.c (__fmaf_fma4): Likewise.
* Improve tgamma accuracy (bugs 2546, 2560, 5159, 15426).Joseph Myers2013-05-081-6/+670
|
* Fix catan, catanh spurious underflows (bug 15423).Joseph Myers2013-05-011-0/+232
|
* Fix catan, catanh inaccuracy from atan2 denominators near 0 (bug 15416).Joseph Myers2013-04-301-2/+420
|
* Fix catan, catanh spurious overflows (bug 15409).Joseph Myers2013-04-271-0/+82
|
* Update x86_64 ULPsMarkus Trippelsdorf2013-04-261-0/+244
| | | | | | 2013-04-26 Markus Trippelsdorf <markus@trippelsdorf.de> * sysdeps/x86_64/fpu/libm-test-ulps: Update.
* Move x86_64-specific audit tests to sysdeps/x86_64/.Joseph Myers2013-04-2517-0/+1515
|
* Fix catan, catanh inaccuracy through use of log (bug 15394).Joseph Myers2013-04-241-0/+2
|
* libm-test.inc: Fix tests where cos(PI/2) != 0.Carlos O'Donell2013-04-111-14/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The value of PI is never exactly PI in any floating point representation, and the value of PI/2 is never PI/2. It is wrong to expect cos(M_PI_2l) to return 0, instead it will return an answer that is non-zero because M_PI_2l doesn't round to exactly PI/2 in the type used. That is to say that the correct answer is to do the following: * Take PI or PI/2. * Round to the floating point representation. * Take the rounded value and compute an infinite precision cos or sin. * Use the rounded result of the infinite precision cos or sin as the answer to the test. I used printf to do the type rounding, and Wolfram's Alpha to do the infinite precision cos calculations. The following changes bring x86-64 and x86 to 1/2 ulp for two tests. It shows that the x86 cos implementation is quite good, and that our test are flawed. Unfortunately given that the rounding errors are type dependent we need to fix this for each type. No regressions on x86-64 or x86. --- 2013-04-11 Carlos O'Donell <carlos@redhat.com> * math/libm-test.inc (cos_test): Fix PI/2 test. (sincos_test): Likewise. * sysdeps/x86_64/fpu/libm-test-ulps: Regenerate. * sysdeps/i386/fpu/libm-test-ulps: Regenerate.
* Fix cacosh inaccuracy and spurious exceptions (bug 15327).Joseph Myers2013-04-021-27/+942
|
* Fix casinh inaccuracy for imaginary part < 1.0, real part small (bug 10357).Joseph Myers2013-03-301-145/+1235
|
* Fix casinh inaccuracy near i, imaginary part > 1 (bug 15307).Joseph Myers2013-03-271-0/+368
|
* BZ#11120: fix x86_64/strcmp.S NOT_IN_libc safeguardsDmitry V. Levin2013-03-221-3/+3
| | | | | | | | Due to a typo repeated several times, this bug hasn't been fixed yet, despite being marked as resolved in glibc 2.12. * sysdeps/x86_64/strcmp.S: Replace all occurrences of NOT_IN_lib with NOT_IN_libc.
* Fix casinh inaccuracy for argument with imaginary part 1 (bug 15287).Joseph Myers2013-03-211-2/+788
|
* Move system-specific settings out of toplevel configure.in and config.make.in.Joseph Myers2013-03-202-0/+15
|