Commit Graph

475 Commits

Author SHA1 Message Date
Carlos O'Donell
c61b4d41c9 BZ #15754: CVE-2013-4788
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.
2013-09-23 00:52:09 -04:00
Ondřej Bílka
c0c3f78afb Fix typos. 2013-08-21 19:48:48 +02:00
David S. Miller
da2d62df77 Update Sparc ULPs.
* sysdeps/sparc/fpu/libm-test-ulps: Update ULPs to handle minor
	difference between 32-bit and 64-bit.
2013-07-20 16:47:28 -07:00
David S. Miller
c61f8513f7 Full from-scratch rebuild of sparc ULPs.
* sysdeps/sparc/fpu/libm-test-ulps: Regenerate from scratch.
2013-07-07 22:15:36 -07:00
David S. Miller
3aaeeca7a9 Update sparc ULPs.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-07-02 16:41:17 -07:00
Ryan S. Arnold
1ae8bfe07c Add GLRO(dl_hwcap2) for new AT_HWCAP2 auxv_t a_type. 2013-06-28 16:50:48 -05:00
Ondrej Bilka
350635a59a Fix leading whitespaces. 2013-06-06 20:36:07 +02:00
Joseph Myers
9c84384cc1 Remove trailing whitespace. 2013-06-05 20:44:03 +00:00
Siddhesh Poyarekar
b937534868 Avoid crashing in LD_DEBUG when program name is unavailable
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.
2013-05-29 21:34:12 +05:30
Joseph Myers
b50a71810b Don't include expected results in libm-test test names. 2013-05-22 11:49:36 +00:00
Joseph Myers
db62a90753 Handle sincos with generic libm-test logic. 2013-05-19 14:45:41 +00:00
Maciej W. Rozycki
2848b10585 MIPS: soft-fp NaN representation corrections
[BZ #15442] This adds support for the inverse interpretation of the
quiet bit of IEEE 754 floating-point NaN data that some processors
use.  This includes in particular MIPS architecture processors; the
payload used for the canonical qNaN encoding is updated accordingly
so as not to interfere with the quiet bit.
2013-05-16 23:33:55 +01:00
David S. Miller
781fd74820 Update Sparc ULPs.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-05-14 15:44:29 -07:00
David S. Miller
d422395e31 Update Sparc ULPs.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-05-02 12:25:28 -07:00
David S. Miller
eb66fd21bf Update sparc ULPs.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-03-22 13:29:31 -07:00
Joseph Myers
bef0b50749 Move system-specific settings out of toplevel configure.in and config.make.in. 2013-03-20 22:37:06 +00:00
David S. Miller
cd18e90aa6 Update Sparc ULPs.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-03-17 08:38:10 -07:00
Joseph Myers
daaa7713e9 Remove bounded-pointers build system support. 2013-02-15 15:07:54 +00:00
Joseph Myers
70d9946a44 Remove __ptrvalue, __bounded and __unbounded. 2013-02-13 23:30:40 +00:00
David S. Miller
c51ebd9c78 Add long-double sparc ULPs updates missing in previous commit. 2013-02-04 12:06:42 -08:00
David S. Miller
b83bbec4cc Update sparc ULPs after Joseph's casin fixes.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-02-04 10:31:18 -08:00
Joseph Myers
6277fdabc0 Remove CHECK_STRING, CHECK_STRING_NULL_OK and __ubp_memchr. 2013-02-04 16:29:39 +00:00
Joseph Myers
e782a927c2 Remove BOUNDED_N and BOUNDED_1. 2013-02-01 06:35:29 +00:00
David S. Miller
bae8e7f5ed Add a minor 'cas' atomic optimization on sparc.
* sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
	(__arch_compare_and_exchange_val_32_acq): Use %g0 as second
	argument of CAS if possible.
	* sysdeps/sparc/sparc64/bits/atomic.h
	(__arch_compare_and_exchange_val_32_acq): Likewise.
	(__arch_compare_and_exchange_val_64_acq): Likewise.
2013-01-23 11:27:24 -08:00
David S. Miller
7c1e01aabc Use libgcc unwinder for sparc backtraces, if available.
* sysdeps/sparc/backtrace.c: New file.
	* sysdeps/sparc/sparc32/backtrace.h: New file.
	* sysdeps/sparc/sparc32/sparcv9/backtrace.h: New file.
	* sysdeps/sparc/sparc64/backtrace.h: New file.
	* sysdeps/sparc/sparc64/backtrace.c: Delete.
	* sysdeps/sparc/Makefile (CFLAGS-backtrace.c): Add
	-funwind-tables.
2013-01-21 14:15:30 -08:00
David S. Miller
1dbaee3c12 Update sparc ULPs.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-01-17 20:45:04 -08:00
David S. Miller
1aa6176780 Optimize trunc{,f} on sparc.
* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: Add vis3
	trunc{,f} to libm-sysdep_routes.
	* sysdeps/sparc/sparc64/fpu/multiarch/Makefile: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_trunc-vis3.S: New
	file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_trunc.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_truncf-vis3.S: New
	file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_truncf.S: New
	file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_trunc.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_truncf.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_trunc-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_trunc.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_truncf-vis3.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_truncf.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_trunc.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_truncf.S: New file.
2013-01-16 00:00:54 -08:00
David S. Miller
c42d5e9862 Optimize nearbyint{,f} on sparc.
* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: Add vis3
	nearbyint{,f} to libm-sysdep_routes.
	* sysdeps/sparc/sparc64/fpu/multiarch/Makefile: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyint-vis3.S:
	New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyint.S: New
	file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyintf-vis3.S:
	New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyintf.S: New
	file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_nearbyint.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_nearbyintf.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyint-vis3.S: New
	file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyint.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf-vis3.S: New
	file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_nearbyint.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_nearbyintf.S: New file.
2013-01-15 20:59:54 -08:00
David S. Miller
8b954ab9b8 Optimize sparc {ceil,floor}{,f} using vis2 'siam' instruction.
* sysdeps/sparc/sparc-ifunc.h (SPARC_ASM_IFUNC2): New macro.
	(SPARC_ASM_VIS2_IFUNC): Likewise.
	(SPARC_ASM_VIS3_VIS2_IFUNC): Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil-vis3.S: Make
	use of 'siam' instruction.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceilf-vis3.S:
	Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor-vis3.S:
	Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floorf-vis3.S:
	Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceil-vis3.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf-vis3.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floor-vis3.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floorf-vis3.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil-vis2.S: New
	file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceilf-vis2.S: New
	file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor-vis2.S: New
	file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floorf-vis2.S: New
	file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceil-vis2.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf-vis2.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floor-vis2.S: New file.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floorf-vis2.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceil.S: Hook in
	new VIS2 routines.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_ceilf.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floor.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_floorf.S:
	Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceil.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floor.S: Likewise.
	* sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: Add new VIS2
	routines to libm-sysdep_routines.
	* sysdeps/sparc/sparc64/fpu/multiarch/Makefile: Likewise.
2013-01-14 21:47:29 -08:00
David S. Miller
65a82e3dd5 Optimize fdim/fdimf on sparc.
* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/Makefile: Add vis3
	fdim/fdimf to libm-sysdep_routines.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdim-vis3.S: New
	file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdim.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdimf-vis3.S: New
	file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdimf.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_fdim.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/fpu/s_fdimf.S: New file.
	* sysdeps/sparc/sparc32/fpu/s_fdim.S: New file.
	* sysdeps/sparc/sparc32/fpu/s_fdimf.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_fdim.S: New file.
	* sysdeps/sparc/sparc64/fpu/s_fdimf.S: New file.
2013-01-14 18:21:59 -08:00
Roland McGrath
66438c3fe1 Fix up log format, wrap a long line. 2013-01-14 09:57:33 -08:00
David S. Miller
32fcb36dbf Add 64-bit VIS3 optimized GMP routines for sparc.
* math/Makefile: Recognize gmp-sysdep_routines.
	* sysdeps/sparc/sparc64/multiarch/Makefile: Add VIS3 optimized GMP routines
	to sysdeps.
	* sysdeps/sparc/sparc64/multiarch/add_n-vis3.S: New file.
	* sysdeps/sparc/sparc64/multiarch/add_n.S: New file.
	* sysdeps/sparc/sparc64/multiarch/addmul_1-vis3.S: New file.
	* sysdeps/sparc/sparc64/multiarch/addmul_1.S: New file.
	* sysdeps/sparc/sparc64/multiarch/mul_1-vis3.S: New file.
	* sysdeps/sparc/sparc64/multiarch/mul_1.S: New file.
	* sysdeps/sparc/sparc64/multiarch/sub_n-vis3.S: New file.
	* sysdeps/sparc/sparc64/multiarch/sub_n.S: New file.
	* sysdeps/sparc/sparc64/multiarch/submul_1-vis3.S: New file.
	* sysdeps/sparc/sparc64/multiarch/submul_1.S: New file.
2013-01-11 23:39:02 -08:00
David S. Miller
4ae4244d4b Redo sparc 32-bit V9 GMP optimizations with fixed copyrights.
* sysdeps/sparc/sparc32/sparcv9/mul_1.S: Properly optimize for 32-bit
	sparc V9 rather than using V8 code.
	* sysdeps/sparc/sparc32/sparcv9/addmul_1.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/submul_1.S: Likewise.
2013-01-11 20:53:10 -08:00
David S. Miller
8794a96418 Adjust sparc for Roland's multiarch sysdep directory changes.
* sysdeps/sparc/sparc32/sparcv9/fpu/unix/sysv/linux/multiarch/Implies:
	Move to...
	* sysdeps/unix/sysv/linux/sparc/sparc32/sparcv9/fpu/multiarch/Implies:
	Here.
2013-01-11 18:04:10 -08:00
David S. Miller
9e6919c8ae Undo receive sparc 32-bit V9 gmp routine commit.
* sysdeps/sparc/sparc32/sparcv9/mul_1.S: Revert previous changes.
	* sysdeps/sparc/sparc32/sparcv9/addmul_1.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/submul_1.S: Likewise.
2013-01-10 21:28:07 -08:00
David S. Miller
b9de2dde53 Optimize sparc 32-bit V9 GMP multiply routines.
* sysdeps/sparc/sparc32/sparcv9/mul_1.S: Properly optimize for 32-bit
	sparc V9 rather than using V8 code.
	* sysdeps/sparc/sparc32/sparcv9/addmul_1.S: Likewise.
	* sysdeps/sparc/sparc32/sparcv9/submul_1.S: Likewise.
2013-01-10 16:15:32 -08:00
David S. Miller
5a47cc9cef Update sparc ULPs for new casin{,h} tests.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-01-10 14:46:18 -08:00
David S. Miller
0b3986d0dc Update Sparc ULPs.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-01-04 13:20:26 -08:00
Joseph Myers
568035b787 Update copyright notices with scripts/update-copyrights. 2013-01-02 19:05:09 +00:00
Joseph Myers
f4cf5f2d8b Add script to update copyright notices and reformat some to facilitate its use. 2013-01-01 16:29:10 +00:00
David S. Miller
dd694abd5e Update sparc ULPs for recently added pow tests.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-11-28 17:42:09 -08:00
David S. Miller
6d33cc9d9b Fix spurious underflows in ldbl-128 atan implementation.
With help from Joseph Myers.
	* sysdeps/ieee754/ldbl-128/s_atanl.c (__atanl): Handle tiny and
	very large arguments properly.
	* math/libm-test.inc (atan_test): New tests.
	(atan2_test): New tests.
	* sysdeps/sparc/fpu/libm-test-ulps: Update.
	* sysdeps/x86_64/fpu/libm-test-ulps: Update.
2012-11-19 15:31:24 -08:00
David S. Miller
05b227bdae Correct tinyness handling in long-double and float y0/y1.
With help from Joseph Myers.
	* sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Adjust tinyness
	cutoff to 2**-13.
	* sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Adjust tinyness
	cutoff to 2**-25.
	* sysdeps/ieee754/ldbl-128/e_j0l.c (U0): New constant.
	( __ieee754_y0l): Avoid arithmetic underflow when 'x' is very
	small.
	* sysdeps/ieee754/ldbl-128/e_j1l.c (__ieee754_y1l): Likewise.
	* math/libm-test.inc (y0_test): New tests.
	(y1_test): New tests.
	* sysdeps/i386/fpu/libm-test-ulps: Update.
	* sysdeps/x86_64/fpu/libm-test-ulps: Update.
	* sysdeps/sparc/fpu/libm-test-ulps: Update.
2012-11-18 12:33:53 -08:00
David S. Miller
3a0d900a99 Add support for sparc cryptographic hash opcodes.
* crypt/Makefile: Move test targets after toplevel Rules
	inclusion.  Grab any necessary sysdep routines when linking.
	* crypt/md5.c (md5_process_block): Remove define, we will always
	name it __md5_process_block.
	(md5_finish_ctx): Update md5_process_block call.
	(md5_stream): Likewise.
	(md5_process_bytes): Likewise.
	(md5_process_block): Rename to __md5_process_block and move to ...
	* crypt/md5-block.c: ... here.
	* crypt/sha256.c (sha256_process_block): Move to ...
	* crypt/sha256-block.c: ... here.
	* crypt/sha512.c (sha512_process_block): Move to ...
	* crypt/sha512-block.c: ... here.
	* locale/Makefile (CFLAGS-md5.c): Define to add crypt/ to include
	path.
	* sysdeps/sparc/sparc-ifunc.c (sparc_libc_ifunc): Define.
	* sysdeps/sparc/sparc64/multiarch/Makefile
	(libcrypt-sysdep_routines): Add crypto assembler sysdeps when in
	crypt subdir.
	(localedef-aux): Add md5 crypto assembler when in locale subdir.
	* sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile: Mirror sparc64
	multiarch changes.
	* sysdeps/sparc/sparc64/multiarch/md5-block.c: New file.
	* sysdeps/sparc/sparc64/multiarch/md5-crop.S: New file.
	* sysdeps/sparc/sparc64/multiarch/sha256-block.c: New file.
	* sysdeps/sparc/sparc64/multiarch/sha256-crop.S: New file.
	* sysdeps/sparc/sparc64/multiarch/sha512-block.c: New file.
	* sysdeps/sparc/sparc64/multiarch/sha512-crop.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/multiarch/md5-block.c: New file.
	* sysdeps/sparc/sparc32/sparcv9/multiarch/md5-crop.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/multiarch/sha256-block.c: New
	file.
	* sysdeps/sparc/sparc32/sparcv9/multiarch/sha256-crop.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/multiarch/sha512-block.c: New
	file.
	* sysdeps/sparc/sparc32/sparcv9/multiarch/sha512-crop.S: New file.
2012-11-13 17:12:45 -08:00
Joseph Myers
5b5b04d628 Make fma use of Dekker and Knuth algorithms use round-to-nearest (bug 14796). 2012-11-03 19:48:53 +00:00
Joseph Myers
fbeafedeea Make fenv.h FE_* macros usable in #if (bug 3439). 2012-11-03 17:07:56 +00:00
David S. Miller
f303f97c29 Add IFUNC test lists for memcpy/mempcpy/memset on sparc.
* sysdeps/sparc/sparc64/multiarch/memcpy.S: Add comments for
	ifunc-impl-list.c
	* sysdeps/sparc/sparc64/multiarch/memset.S: Likewise.
	* sysdeps/sparc/sparc64/multiarch/ifunc-impl-list.c: New file.
	* sysdeps/sparc/sparc32/sparcv9/multiarch/ifunc-impl-list.c: New
	file.
2012-10-25 16:34:26 -07:00
Roland McGrath
b8493de0ec Add missing magic to GLIBC_PROVIDES. 2012-10-09 15:41:30 -07:00
David S. Miller
f1ecb7ef7f Fix Niagara-4 memcpy bug on 32-bit.
* sysdeps/sparc/sparc64/multiarch/memcpy-niagara4.S: On 32-bit, clear
	upper 32-bits of the length value in %o2 since we use branch-on-register
	tests which consider the entire 64-bit register.
2012-10-06 18:36:40 -07:00
David S. Miller
3baddb72a4 Add Niagara-4 optimized memset/bzero implementation.
* sysdeps/sparc/sparc64/multiarch/memset-niagara4.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/multiarch/memset-niagara4.S: New
	file.
	* sysdeps/sparc/sparc64/multiarch/Makefile: Add to
	sysdep_routines.
	* sysdeps/sparc/sparc32/sparcv9/multiarch/Makefile: Likewise.
	* sysdeps/sparc/sparc64/multiarch/memset.S: Use Niagara-4 memset
	and bzero when HWCAP_SPARC_CRYPTO is present.
2012-10-05 14:46:47 -07:00