Commit Graph

487 Commits

Author SHA1 Message Date
Roland McGrath
38435a9aff ARM: Convert string/ assembly to unified syntax. 2013-03-11 16:44:31 -07:00
Roland McGrath
791de44658 ARM: Use r10 instead of r9. 2013-03-11 16:43:29 -07:00
Andreas Jaeger
cb83063b0c AM33: Use <bits/mman.h> 2013-03-11 19:57:48 +01:00
Andreas Jaeger
a0f487b2af Use <bits/mman.h> on ia64 2013-03-11 19:56:44 +01:00
Roland McGrath
3ad6c54707 Clean up ARM preconfigure. 2013-03-11 09:26:43 -07:00
Andreas Schwab
fb6b0fcbf1 Remove extra pthread_atfork compat symbols 2013-03-11 09:47:01 +01:00
Mike Frysinger
3c2ef5414f ia64: makecontext: fix signed warnings
The ia64_rse_is_rnat_slot func expects an unsigned pointer, but we're
passing in a signed pointer.  The signness doesn't matter here, so
convert it to unsigned.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2013-03-10 22:18:28 -04:00
Mike Frysinger
8233957f54 ia64: fix NEED_DL_SYSINFO_DSO conditionals
The recent change to clean up these defines missed the ia64 logic.
Update it accordingly.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2013-03-10 08:11:55 -04:00
Richard Henderson
f5ad94e02a arm: Implement armv6 optimized string routines
The strcpy and strchr (and related) functions are four times faster
than the byte-by-byte default versions.

The strlen function is twice as fast for long strings and 50% faster
for short strings over the armv4 version.
2013-03-07 09:10:33 -08:00
Andreas Jaeger
642e52808d AARCH64: Use <bits/mman-linux.h>
* sysdeps/unix/sysv/linux/aarch64/bits/mman.h: Remove all
	defines provided by bits/mman-linux.h and include <bits/mman-linux.h>.
2013-03-07 15:28:54 +01:00
Andreas Jaeger
664a9ce4ca Use <bits/mman-linux.h> for MIPS
* sysdeps/unix/sysv/linux/bits/mman-linux.h (MAP_ANONYMOUS):
	Allow definition via __MAP_ANONYMOUS.

	* sysdeps/unix/sysv/linux/mips/bits/mman.h: Remove all defines
	provided by bits/mman-linux.h and include <bits/mman-linux.h>.
	(__MAP_ANONYMOUS): Define.
2013-03-06 17:36:37 +01:00
Richard Henderson
a6f2f43538 arm: Add optimized add_n and sub_n
Written from scratch rather than copied from GMP, due to LGPL 2.1 vs
GPL 3, but tested with the GMP testsuite.

This is 250% faster than the generic code as measured on Cortex-A15,
and the same speed as GMP on the same core, and probably everywhere.
2013-03-06 07:47:26 -08:00
Richard Henderson
fe62ba37a3 arm: Add optimized submul_1
Written from scratch rather than copied from GMP, due to LGPL 2.1 vs
GPL 3, but tested with the GMP testsuite.

This is 50% faster than the generic code as measured on Cortex-A15.
It is 25% slower than the current GMP routine on the same core.
2013-03-06 07:47:25 -08:00
Richard Henderson
21e31515a6 arm: Add optimized addmul_1
Written from scratch rather than copied from GMP, due to LGPL 2.1 vs
GPL 3, but tested with the GMP testsuite.

This is 25% faster than the generic code as measured on Cortex-A15,
and the same speed as GMP on the same core.  It's probably slower
than GMP on the A8 and A9 cores though.
2013-03-06 07:47:25 -08:00
Richard Henderson
5695fc848f arm: Add optimized ffs for armv6t2 2013-03-06 07:47:24 -08:00
Richard Henderson
79fd873111 arm: Implement hard-tp for GET_TLS 2013-03-06 07:47:21 -08:00
Richard Henderson
3377126b0a arm: Tidy architecture selection 2013-03-06 07:46:47 -08:00
Richard Henderson
d137b6dc52 arm: Unless arm4t, pop return address directly into pc 2013-03-06 07:46:47 -08:00
Richard Henderson
46dede0c00 arm: Commonize BX conditionals
Add BLX macro in addition and use it where appropriate.
2013-03-06 07:46:46 -08:00
Richard Henderson
92cc8e332b arm: Delete LOADREGS macro
There was only one user.  It's "condition" argument was used
for "ia" rather than an actual condition.  The apcs26 syntax
is almost certainly not needed, given current binutils requirements.
2013-03-06 07:46:46 -08:00
Richard Henderson
55668624cf arm: Use push/pop mnemonics
For arm this makes no difference--the result is bit-for-bit identical;
for thumb this results in smaller encodings.  Perhaps it ought not and
this is in fact an assembler bug, but I also think it's clearer.
2013-03-06 07:46:45 -08:00
Richard Henderson
5ff5dfe748 arm: Enable thumb2 mode in assembly files
The preceeding patches have allowed for the few incompatibilities
between arm and thumb2 mode, or have marked the file as not wanting
to use thumb2 mode.
2013-03-06 07:46:44 -08:00
Richard Henderson
5232b909bf arm: Introduce and use GET_TLS
Factor out the sequence needed to call kuser_get_tls, as we can't
play subtract into pc games in thumb mode.  Prepare for hard-tp,
pulling the save of LR into the macro.
2013-03-06 07:46:38 -08:00
Richard Henderson
3ae44082ab arm: Introduce and use NEGOFF series of macros
There are several places in which we access negative offsets from
the thread-pointer, but thumb2 only supports positive offsets in
memory references.

Avoid duplicating the rather large macros in which these references
are embedded by abstracting out the operation.
2013-03-06 07:44:25 -08:00
Richard Henderson
cd24e113c3 arm: Introduce and use LDST_PCREL
Macro-ising the few instances where we need to distinguish between
arm and thumb pc-relative memory operations.
2013-03-06 07:44:24 -08:00
Andreas Jaeger
67525cb832 Sync with Linux 3.8 2013-03-06 16:35:19 +01:00
Andreas Jaeger
5c56e93368 Update date of last entry 2013-03-06 16:29:43 +01:00
Andreas Jaeger
adb729bc11 Use <bits/mman-linux.h> on M68k 2013-03-06 16:29:30 +01:00
Andreas Jaeger
c91a49fe20 Use <bits/mman-linux.h> on ARM 2013-03-06 16:27:24 +01:00
Andreas Jaeger
72a3b700c5 Use bits/mman-linux.h for TILE
* sysdeps/unix/sysv/linux/tile/bits/mman.h: Remove all defines
	provided by bits/mman-linux.h and include <bits/mman-linux.h>.
2013-03-05 21:59:58 +01:00
Chris Metcalf
fd6cdc6da4 tile: Add priority inheritance futex support 2013-02-28 18:07:33 -05:00
Joseph Myers
c7a8ba9404 Remove bounded-pointers relics from am33 code. 2013-02-28 21:28:57 +00:00
Joseph Myers
b551088322 Remove powerpc32 bounded-pointers code. 2013-02-28 21:23:47 +00:00
Richard Henderson
365261c37f arm: Mark assembly files that will not use thumb mode
Some routines are written with complex LDM/STM insns that cannot be
used in thumb mode, or are highly conditional requiring excessive
IT insns.

When a future patch goes in to enable thumb2 by default, this marker
will be used to override that default.
2013-02-28 00:18:30 -08:00
Richard Henderson
6ccd0107f3 arm: Add IT insns for thumb mode
These are ignored by the assembler in ARM mode, so by
default this has no effect on generated code.
2013-02-28 00:17:21 -08:00
Richard Henderson
783a65c253 arm: Introduce and use PC_OFS
Scour the source for raw "-8" adjustments that are related to the
offset created by reading the pc.
2013-02-28 00:16:05 -08:00
Richard Henderson
63cc0e75ea arm: Tidy whitespace in sysdep.h files 2013-02-28 00:12:07 -08:00
Richard Henderson
c98ec0b97f arm: Include libc-do-syscall in sysdep-rtld-routines
When compiling with -mthumb, ld.so itself also needs __libc_do_syscall.
2013-02-28 00:08:59 -08:00
Richard Henderson
8a0018d62f arm: Handle armv6 in preconfigure 2013-02-28 00:07:37 -08:00
Richard Henderson
60812ba09d arm: Update preconfigure fragment for gcc 4.8
New defines from gcc 4.8:
 #define __ARM_ARCH_ISA_ARM 1
 #define __ARM_ARCH_PROFILE 65
 #define __ARM_ARCH_ISA_THUMB 2
 #define __ARM_ARCH 7

all of which got in the way of the one we wanted:
 #define __ARM_ARCH_7A__ 1
2013-02-28 00:04:34 -08:00
Roland McGrath
f4564ff0b6 ARM: Macroize use of .cfi_sections directive. 2013-02-27 16:36:47 -08:00
Maciej W. Rozycki
43301bd3c2 Add support for building as MIPS16 code. 2013-02-27 23:45:07 +00:00
Richard Henderson
97ccb9d55a Add FUTEX_*_REQUEUE_PI support for Alpha. 2013-02-20 16:57:55 -08:00
Richard Henderson
ccdef322b8 alpha: Include errno.h in sysdep.h
Recent changes in malloc-sysdep.h exposed this error, the
symptom being __set_errno was not defined early enough.
2013-02-20 16:49:25 -08:00
Thomas Schwinge
50022a93fc Respect the user's namespace in installed header files.
Fixup for commit c7b275d6b3.
2013-02-20 18:51:56 +01:00
Thomas Schwinge
f6432d898e Properly sort a libc.abilist file.
Inconsistency introduced in commit 84b3fd8407.
2013-02-20 16:49:59 +01:00
Thomas Schwinge
c7b275d6b3 bits/nan.h: Change __attribute_used__ to __attribute__ ((unused)). 2013-02-20 16:49:58 +01:00
Thomas Schwinge
72f0ffdcbe Add missing __attribute_used__.
Generic IEEE 754 file has been changed in commit
b575c52b86.
2013-02-20 16:48:56 +01:00
Thomas Schwinge
2636ffe654 Align to generic file. 2013-02-20 16:48:56 +01:00
Joseph Myers
92363eb87c Add FUTEX_*_REQUEUE_PI support for MIPS. 2013-02-19 00:49:25 +00:00
Joseph Myers
6c89344ec2 Add FUTEX_*_REQUEUE_PI support for ARM. 2013-02-18 23:49:05 +00:00
Siddhesh Poyarekar
4bf6b9dd8e Add __cxa_thread_atexit_impl to aarch64 abilist 2013-02-18 22:23:19 +05:30
Siddhesh Poyarekar
ba384f6ed9 C++11 thread_local destructors support
This feature is specifically for the C++ compiler to offload calling
thread_local object destructors on thread program exit, to glibc.
This is to overcome the possible complication of destructors of
thread_local objects getting called after the DSO in which they're
defined is unloaded by the dynamic linker.  The DSO is marked as
'unloadable' if it has a constructed thread_local object and marked as
'unloadable' again when all the constructed thread_local objects
defined in it are destroyed.
2013-02-18 19:08:21 +05:30
Joseph Myers
2bdd4ca6b6 Remove miscellaneous bounded-pointers relics in C code. 2013-02-15 00:51:53 +00:00
Carlos O'Donell
dd395cf110 hppa: Remove unused lll_unlock_wake_cb.
There hasn't been a use for lll_unlock_wake_cb since it was
removed globally in 2007-05-29. This patch removes the
function from hppa's lowlevellock.[ch] implementation.
2013-02-14 10:34:48 -05:00
Marcus Shawcroft
1739edf7a5 aarch64: Update libm-test-ulps. 2013-02-14 14:06:12 +00:00
Joseph Myers
e97ed6ddbe Remove bp-sym.h and BP_SYM uses from C code. 2013-02-14 13:12:02 +00:00
Joseph Myers
70d9946a44 Remove __ptrvalue, __bounded and __unbounded. 2013-02-13 23:30:40 +00:00
Joseph Myers
aea7a9b9d2 Add CFI information for MIPS assembly sources. 2013-02-11 18:19:14 +00:00
Andreas Schwab
3392138235 m68k: update kernel-features.h 2013-02-08 23:19:49 +01:00
Joseph Myers
a2da1673fe Remove CHECK_N and bp-checks.h. 2013-02-08 20:06:30 +00:00
Carlos O'Donell
ddacd1db6a BZ #15006: Updates NEWS and ChangeLog. 2013-02-08 12:37:44 -05:00
Carlos O'Donell
b39949d211 ARM: Support loading unmarked objects from cache.
ARM now supports loading unmarked objects from
the dynamic loader cache. Unmarked objects can
be used with the hard-float or soft-float ABI.
We must support loading unmarked objects during
the transition period from a binutils that does
not mark objects to one that does mark them with
the correct ELF flags.

Signed-off-by: Carlos O'Donell <carlos@redhat.com>
2013-02-08 12:26:12 -05:00
Joseph Myers
a6ee178332 Use ENTRY and END in more MIPS .S files. 2013-02-08 02:03:10 +00:00
Joseph Myers
f3aae3f3eb Remove CHECK_1 and CHECK_1_NULL_OK. 2013-02-08 01:12:11 +00:00
Maciej W. Rozycki
f9834ea477 MIPS: Correct formatting of syscall wrapper `asm' specifiers. 2013-02-05 15:31:08 +00:00
Maciej W. Rozycki
b82ba2f011 MIPS: Respect the legacy syscall restart convention.
That convention requires the instruction immediately preceding SYSCALL
to initialize $v0 with the syscall number.  Then if a restart triggers,
$v0 will have been clobbered by the syscall interrupted, and needs to be
reinititalized.  The kernel will decrement the PC by 4 before switching
back to the user mode so that $v0 has been reloaded before SYSCALL is
executed again.  This implies the place $v0 is loaded from must be
preserved across a syscall, e.g. an immediate, static register, stack
slot, etc.

The restriction was lifted with Linux 2.6.36 kernel release and no
special requirements are placed around the SYSCALL instruction anymore,
however we still support older kernel binaries.
2013-02-05 14:55:20 +00:00
Joseph Myers
6277fdabc0 Remove CHECK_STRING, CHECK_STRING_NULL_OK and __ubp_memchr. 2013-02-04 16:29:39 +00:00
Joseph Myers
32a45bea39 Remove CHECK_SIGSET and CHECK_SIGSET_NULL_OK. 2013-01-31 23:00:15 +00:00
Joseph Myers
2e8a5c8c46 Remove bp-semctl.h and CHECK_SEMCTL. 2013-01-31 22:59:04 +00:00
Maciej W. Rozycki
29bfb065e3 MIPS: Correct NewABI syscall wrapper whitespace damage. 2013-01-29 13:30:16 +00:00
Steve Ellcey
c6af74e473 2013-01-25 Steve Ellcey <sellcey@mips.com>
* sysdeps/mips/memmove.c: Remove.
2013-01-25 16:11:40 -08:00
Marcus Shawcroft
a0b1cd8869 AArch64: Adding optimized strncmp implementation. 2013-01-24 14:33:12 +00:00
Marcus Shawcroft
4499bb3e1b AArch64: Adding optimized strnlen implementation. 2013-01-24 14:33:11 +00:00
Andreas Schwab
ba6f5ae50b m68k: update libm test ULPs 2013-01-20 21:00:09 +01:00
Andreas Schwab
7cd24045d6 m68k: add unwind tables to backtrace 2013-01-20 14:29:57 +01:00
Andreas Schwab
32ebef017f Add backtrace for m68k 2013-01-19 23:47:27 +01:00
Andreas Schwab
41597a7c02 Add not-cancel.h for m68k/nptl 2013-01-19 21:23:15 +01:00
Marcus Shawcroft
d542f8ed21 AArch64: Implement optimized strlen. 2013-01-17 10:56:50 +00:00
Marcus Shawcroft
38fecb39a0 AArch64: Implement optimized strcmp 2013-01-17 10:56:49 +00:00
Marcus Shawcroft
7ac4d96239 AArch64: Implement optimized bzero. 2013-01-17 10:56:49 +00:00
Marcus Shawcroft
c2b6221ed3 AArch64: Implement optimized memmove. 2013-01-17 10:56:49 +00:00
Marcus Shawcroft
857c8d2228 AArch64: Implement optimized memcpy. 2013-01-17 10:56:49 +00:00
Marcus Shawcroft
58faa0874b AArch64: Implement optimized memset. 2013-01-17 10:56:48 +00:00
Marcus Shawcroft
14d941e4dc AArch64: Implement optimized memcmp. 2013-01-17 10:56:48 +00:00
Marcus Shawcroft
62216a0a1e AArch64: Tidyup whitespace. 2013-01-17 10:56:48 +00:00
Joseph Myers
828beb132d Use __extension__ with long long in installed headers. 2013-01-10 20:19:45 +00:00
Chris Metcalf
176f2fe0a1 tilegx: fix ldd to work with both tilegx64 and tilegx32
This uses the same ldd-rewrite.sed hook as other platforms, with
the minor tweak that tilegx uses /lib (64-bit) and /lib32 (32-bit).
2013-01-10 10:16:06 -05:00
Steve Ellcey
b13c7b55ed Fix trailing blank. 2013-01-08 14:41:24 -08:00
Steve Ellcey
d9014c080a 2013-01-08 Steve Ellcey <sellcey@mips.com>
* sysdeps/mips/memcpy.S: Change prefetch hint, reorder partial
	loads and stores, set and use MAX_PREFETCH_SIZE.
2013-01-08 14:40:28 -08:00
Andreas Jaeger
c40ea3d9a3 BZ#14985: Remove erroneous EPOLL_NONBLOCK
[BZ# 14985]
	* sysdeps/unix/sysv/linux/sparc/bits/epoll.h (EPOLL_NONBLOCK):
	Remove.
	* sysdeps/unix/sysv/linux/bits/epoll.h (EPOLL_NONBLOCK):
	Likewise.
	* sysdeps/unix/sysv/linux/x86/bits/epoll.h (EPOLL_NONBLOCK):
	Likewise.

ChangeLog.mips:
	[BZ# 14985]
	* sysdeps/unix/sysv/linux/mips/bits/epoll.h (EPOLL_NONBLOCK):
	* Remove.

ChangeLog.hppa:
	[BZ# 14985]
	* sysdeps/unix/sysv/linux/hppa/sys/epoll.h (EPOLL_NONBLOCK):
	Remove.

ChangeLog.alpha:
	[BZ# 14985]
	* sysdeps/unix/sysv/linux/alpha/bits/epoll.h (EPOLL_NONBLOCK):
	Remove.
2013-01-08 19:32:00 +01:00
Andreas Schwab
8729819ba4 Update m68k libm test ULPs 2013-01-04 17:27:59 +01:00
Joseph Myers
e6898b8d92 Update miscellaneous copyright dates. 2013-01-02 19:43:40 +00:00
Joseph Myers
0e2f956295 Fix copyright notice corruption from update-copyright bug. 2013-01-02 19:28:45 +00:00
Joseph Myers
568035b787 Update copyright notices with scripts/update-copyrights. 2013-01-02 19:05:09 +00:00
Richard Henderson
caed4e98ca alpha: Add lll_futex_timed_wait_bitset 2013-01-02 09:00:46 -08: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
Chris Metcalf
fdfc65d21f tile: support lll_futex_timed_wait_bitset 2012-12-28 12:13:01 -05:00
Chris Metcalf
2bc2d8e823 tile: fix DWARF bug in clone() for created thread
Previously, we would see a bad frame in the gdb backtrace output, e.g.:

  (gdb) bt
  #0  foo () at foo.c:5
  #1  0x000000aaaab68ee8 in start_thread () from /lib/libpthread.so.0
  #2  0x000000aaaad01c88 in clone () from /lib/libc.so.6
  #3  0x0000000000000000 in ?? ()

With this change the bogus frame #3 is gone and we have the
same output as x86 does for the same program.
2012-12-21 15:29:55 -05:00
Marcus Shawcroft
99aad51087 aarch64: Fix compiler warning for unused declaration _x0 2012-12-10 10:33:30 +00:00
Richard Henderson
7514f09e1e alpha: Fix redefinition of __isnanl macro warning
In bdd7898a58 we added self-definitions
of __isnan and friends in order to indicate specialized architecture
support, and avoid redefinitions within various generic math_private.h.

There is no generic math_private.h that concerns ldbl-128, and while
we provide __isnanl in the alpha math_private.h there's no need to
protect the function against redefinition.
2012-12-07 13:08:31 -06:00
Richard Henderson
3cb3bb9b40 alpha: Fix redefinition of __isnanl macro warning
In bdd7898a58 we added self-definitions
of __isnan and friends in order to indicate specialized architecture
support, and avoid redefinitions within various generic math_private.h.

There is no generic math_private.h that concerns ldbl-128, and while
we provide __isnanl in the alpha math_private.h there's no need to
protect the function against redefinition.
2012-12-07 13:05:39 -06:00
Richard Henderson
1aec5f74bb alpha: Avoid builtin warning for isnanf 2012-12-07 12:43:06 -06:00
Marcus Shawcroft
ad2d839f37 aarch64: Regenerate libm-test-ulps. 2012-12-07 12:46:04 +00:00
Marcus Shawcroft
82bf34183f aarch64: Resolve sc_err and _x0 defined but not used warnings. 2012-12-07 12:33:53 +00:00
Marcus Shawcroft
bb3c2a5391 aarch64: Resolve implict cast warning. 2012-12-07 12:31:29 +00:00
Marcus Shawcroft
443d9489b1 aarch64: Resolve strtab defined but not used warning. 2012-12-07 12:28:52 +00:00
Adam Conrad
270a72ed73 Fix ChangeLog formatting for arm and aarch64 2012-12-06 16:48:21 -07:00
Joseph Myers
d981452619 Change sources.redhat.com references to sourceware.org. 2012-12-06 15:32:46 +00:00
Joseph Myers
effbd42a77 Ports-related README updates. 2012-12-05 22:15:52 +00:00
Joseph Myers
ea2c5872e2 Specify powerpc-nofpu fegetexceptflag return type. 2012-12-05 18:11:55 +00:00
Joseph Myers
8d65d9d7a7 Fix typo in ChangeLog.mips. 2012-12-04 22:08:24 +00:00
Joseph Myers
0993dd9b0c Fix warnings from MIPS soft-float _FPU_GETCW. 2012-12-04 22:07:03 +00:00
Marcus Shawcroft
a915e17fe7 aarch64: Tag ARM libc6-dependent libraries with FLAG_ELF_LIBC6
* sysdeps/unix/sysv/linux/aarch64/ldconfig.h: Add entries
        for /lib/ld-linux.so.3 and /lib/ld-linux-armhf.so.3.

Signed-off-by: Steve McIntyre <steve.mcintyre@linaro.org>
2012-12-04 13:07:25 +00:00
Marcus Shawcroft
ba835e1074 aarch64: Tag ARM and AArch64 binaries in the ldconfig cache
Add the correct tags for ARM and AArch64 libraries in the ldconfig
cache for AArch64.

Signed-off-by: Steve McIntyre <steve.mcintyre@linaro.org>
2012-12-04 13:07:25 +00:00
Marcus Shawcroft
931ed9559b arm: Check for the FLAG_ARM_LIBHF flag in the ldconfig cache
Signed-off-by: Steve McIntyre <steve.mcintyre@linaro.org>
2012-12-04 13:07:24 +00:00
Marcus Shawcroft
bc7981ac2b arm: Tag ARM libc6-dependent binaries with FLAG_ELF_LIBC6
Signed-off-by: Steve McIntyre <steve.mcintyre@linaro.org>
2012-12-04 11:00:19 +00:00
Marcus Shawcroft
a55bca6542 arm: Tag ARM and AArch64 binaries in the ldconfig cache.
Add the correct tags for ARM and AArch64 libraries in the ldconfig
cache for ARM.

Signed-off-by: Steve McIntyre <steve.mcintyre@linaro.org>
2012-12-04 10:50:34 +00:00
Joseph Myers
ec13345bab Update ARM libm-test-ulps. 2012-11-30 20:41:26 +00:00
Joseph Myers
8018f81bde Update MIPS libm-test-ulps. 2012-11-30 20:35:34 +00:00
Richard Henderson
b062e14ff3 alpha: Add sysdeps/alpha/sotruss-lib.c. 2012-11-30 09:54:34 -08:00
Joseph Myers
2a398e6f5b Remove powerpc-nofpu fma ulps. 2012-11-30 17:38:37 +00:00
Joseph Myers
05f5c45cff Update powerpc-nofpu libm-test-ulps. 2012-11-30 17:33:37 +00:00
Richard Henderson
4bf2253280 alpha: Update libm-test-ulps. 2012-11-30 09:21:12 -08:00
Mike Frysinger
6355e122f5 ia64: clock_getcpuclockid.c: drop unused file
Since we no longer support __ASSUME_POSIX_CPU_TIMERS, the ia64 code
no longer needs to override HAS_CPUCLOCK in the common file.  Drop
the ia64 shim as well.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-11-29 19:32:05 -05:00
Andreas Schwab
38f34d05c3 m68k: update libm-test ULPs 2012-11-30 00:36:34 +01:00
Joseph Myers
1672585fc1 Add 64-bit support to MIPS register-dump.h (bug 14893). 2012-11-29 23:03:48 +00:00
Carlos O'Donell
9e4eee23af hppa: Fix ChangeLog format issues.
Remove trailing whitespace and canonicalize path names.
2012-11-29 14:53:57 -08:00
Carlos O'Donell
506fdf71df hppa: Remove socket.h and implement socket_type.h. 2012-11-29 18:00:01 -05:00
Carlos O'Donell
80ceeaeef9 hppa: Cleanup two build warnings for integer to pointers casts. 2012-11-29 17:59:59 -05:00
Chris Metcalf
ebdcf03979 tile: remove redundant defines of libc_fetestexcept, etc. in s_fmaf.c 2012-11-29 11:17:29 -05:00
Carlos O'Donell
77a13b85e3 hppa: Add BZ#14447 to NEWS and ChangeLog.hppa. 2012-11-29 10:08:31 -05:00
Marcus Shawcroft
8d953369ef aarch64: Use FLAG_AARCH64_LIB64 ldconfig cache tag.
Use the new FLAG_AARCH64_LIB64 ldconfig cache tag for AArch64,
similarly to the way tags are handled for other architectures.

Signed-off-by: Steve McIntyre <steve.mcintyre@linaro.org>
Reviewed-by: Carlos O'Donell  <carlos@systemhalted.org>
Signed-off-by: Marcus Shawcroft <marcus.shawcroft@linaro.org>
2012-11-29 10:38:49 +00:00
Andreas Schwab
3e2e43e250 m68k/cf: fix copying frame in _dl_runtime_profile 2012-11-25 20:59:31 +01:00
Andreas Schwab
9205a99176 m68k: add sotruss-lib.c 2012-11-25 20:59:30 +01:00
Marcus Shawcroft
e061318880 aarch64: Re-generate libm-test-ulps. 2012-11-22 06:38:42 +00:00
Joseph Myers
fc6394c6fc Implement MIPS n64 sendfile64 as alias of sendfile syscall (bug 14822). 2012-11-22 02:37:02 +00:00
Andreas Schwab
5a22385ad1 m68k: fix return value of lll_futex_timed_wait_bitset 2012-11-21 22:59:20 +01:00
Joseph Myers
a451ee33af Avoid $(shell) in determining default ARM ABI. 2012-11-21 21:04:33 +00:00
Joseph Myers
ad35f2dd75 Make ARM fesetenv (FE_NOMASK_ENV) detect failure (bug 14866). 2012-11-21 20:26:56 +00:00
Joseph Myers
c3151ad100 Cast to uintptr_t in MIPS jmpbuf-unwind.h. 2012-11-21 16:41:57 +00:00
Marcus Shawcroft
86fe56bbde aarch64: Fix lll_futex_timed_wait_bitset return value sign.
The implementation of lll_futex_timed_wait_bitset should not be negating
the futex syscall return value on error.
2012-11-21 12:24:11 +00:00
Marcus Shawcroft
3bae7c5d98 aarch64: Remove weak_aliasx macro. 2012-11-21 08:16:06 +00:00
Marcus Shawcroft
ea8867b7fe aarch64: Remove support for NO_LONG_DOUBLE. 2012-11-21 08:16:04 +00:00
Marcus Shawcroft
5c5bd24ec1 aarch64: Indent preprocessor directives. 2012-11-21 08:16:02 +00:00
Marcus Shawcroft
0f28d32059 aarch64: Use range in copyright years. 2012-11-21 08:16:00 +00:00
Marcus Shawcroft
887a4ca5b0 aarch64: Rename .x files to .c 2012-11-21 08:16:00 +00:00
Marcus Shawcroft
5e543752f1 aarch64: Don't use K&R C 2012-11-21 08:16:00 +00:00
Joseph Myers
e0ba0e189a Add sotruss-lib.c for MIPS. 2012-11-21 02:29:29 +00:00
Chris Metcalf
c10f7382a3 tile: update libm-test-ulps for new tests 2012-11-20 15:06:38 -05:00
Chris Metcalf
73deba6d3c tile: Fix __bswap_64 return type in tile bits/byteswap.h 2012-11-20 15:05:59 -05:00
Chris Metcalf
3d45177146 tile: remove redundant defines of libc_fetestexcept, etc. in s_fma.c 2012-11-20 15:05:32 -05:00
Andreas Schwab
615f651b7e m68k: Remove indirection through weak_aliasx 2012-11-20 21:00:09 +01:00
Joseph Myers
f59cba71d8 Use parentheses around MIPS syscall macro arguments. 2012-11-20 02:45:45 +00:00
Joseph Myers
aa099ade81 Fix int-to-pointer-cast warnings for MIPS. 2012-11-20 02:40:12 +00:00
Joseph Myers
bd077d205a Fix warnings from aborting MIPS atomic macros. 2012-11-20 00:56:29 +00:00
Joseph Myers
c9c253d372 Fix unused-variable warnings from MIPS RESOLVE_GOTSYM macro. 2012-11-20 00:00:35 +00:00
Joseph Myers
6eb43a28af Fix unused variable warnings from MIPS syscall macros. 2012-11-19 23:08:27 +00:00
Marcus Shawcroft
a6d9783fe7 AArch64: Adding optimized maths functions. 2012-11-19 15:15:18 +00:00
Carlos O'Donell
6e63f4ff60 hppa: Mark __pthread_once as a hidden def. 2012-11-19 00:55:04 -05:00
Carlos O'Donell
da66ca0fc0 hppa: Fix fesetenv for FE_DFL_ENV.
Switching back to FE_DFL_ENV should reset the FPU to the state
as it was at the start of the program.
2012-11-19 00:44:00 -05:00
Carlos O'Donell
886ce148c0 hppa: Implement get-rounding-mode.h
Implement get_rounding_mode using the new fpu_control.h
support. Use get_rounding_mode from fegetround.
2012-11-19 00:40:05 -05:00
Carlos O'Donell
030c5d66b8 hppa: Implement fpu_control.h.
The HP-PARISC processor has full IEEE-754 support
and we implement all of fpu_control.h.
2012-11-19 00:37:56 -05:00
Carlos O'Donell
0d6bed7150 hppa: Add ____longjmp_check C implementation. 2012-11-19 00:36:08 -05:00
Carlos O'Donell
320194d5b9 hppa: Implement __longjmp_chk.
Implement longjmp and the chk variant in C.
2012-11-19 00:28:30 -05:00
Andreas Schwab
67f2b51c62 m68k: fix cancellable syscall with 5 or 6 arguments 2012-11-18 01:22:38 +01:00
Andreas Schwab
e510ab5eff m68k: define ELF_MACHINE_RUNTIME_FIXUP_PARAMS 2012-11-18 01:22:37 +01:00
Andreas Schwab
43b13a23e0 m68k: update libm test ULPs 2012-11-18 01:22:36 +01:00
Andreas Schwab
05860e4b07 m68k: define lll_futex_timed_wait_bitset 2012-11-18 01:22:35 +01:00
Joseph Myers
018f9a78d3 Fix "set but not used" warnings from MIPS bits/atomic.h. 2012-11-17 03:35:27 +00:00
Marcus Shawcroft
f507f7d598 Fix thumb2 build breakage in libcrypt 2012-11-14 23:06:40 +00:00
Marcus Shawcroft
554066b83b AArch64 Port 2012-11-09 17:54:04 +00:00
Chris Metcalf
87ae5e366e Update language in ChangeLog.tile. 2012-11-07 13:19:54 -05:00
Chris Metcalf
fdf689a977 tile: use memcpy in memmove when possible 2012-11-06 22:19:31 -05:00
Maxim Kuvyrkov
19218757e6 Use memcpy in memmove when possible 2012-11-06 17:47:55 -08:00
Chris Metcalf
351dc60c55 tile: use atomic op to unlock pthread_spinlock_t
Atomic ops are issued directly from the core, rather than
potentially sitting in the write buffer, so can improve the
performance of other waiters.  In addition, if we didn't end
up pulling a copy of the cache line where the lock is into cache,
by using an atomic op we don't have to acquire the cache line
before we can unlock.
2012-11-06 09:50:47 -05:00
Chris Metcalf
a0bce338e8 Make ieee754 fma tolerate architectures without exception support. 2012-11-06 09:48:53 -05:00
Chris Metcalf
fedff58953 tile: support very large shared objects
With gcc 4.8 tilegx has support for -mcmodel=large, to tolerate very
large shared objects.  This option changes the compiler output to
not include direct jump instructions, which have a range of only
2^30, i.e +/- 512MB.  Instead the compiler marshalls the target PCs
into registers and then uses jump- or call-to-register instructions.

For glibc, the upshot is that we need to arrange for a few functions
to tolerate the possibility of a large range between the PC and
the target.  In particular, the crti.S and start.S code needs
to be able to reach from .init to the PLT, as does gmon-start.c.
The elf-init.c code has the reverse problem, needing to call from
libc_nonshared.a (linked at the end of shared objects) back to the
_init section at the beginning.

No other functions in *_nonshared.a need to be built this way, as
they only call the PLT (or potentially each other), but all of that
code is linked at the very end of the shared object.

We don't build the standard -static archives with this option as the
performance cost is high enough and the use case is rare enough that
it doesn't seem worthwhile.  Instead, we would encourage developers
who need the -static model with huge executables to build a private
copy of glibc and configure it with -mcmodel=large.

Note that libc.so et al don't need any changes; the only changes
are for code that is statically linked into user code built with
-mcmodel=large.

For the assembly code, I just rewrote it so that it unconditionally
uses the large model.  To be able to pass -mcmodel=large to
csu/elf-init.c and csu/gmon-start.c, I need to check to see if the
compiler supports that flag, since gcc 4.7 doesn't; I added the
support by creating a small Makefile fragment that just runs the
compiler to check.
2012-11-06 09:48:49 -05:00
Chris Metcalf
e7776fefa7 tile: improve simulator notification for relative paths in dlopen
Normally, the simulator is notified of absolute pathnames by the
_dl_load_hook hook.  However, when a relative pathname is used, the
simulator may not know that the relative path matches a path that
it could figure out in the file system that it has access to.
Instead we provide a simplified version of the realpath function
so we can pass a plausible absolute pathname to the simulator.

Since we're now doing more work at object load time, we also add
a guard so we do no work at all if we're not running on the simulator.
2012-11-06 09:24:44 -05:00
Chris Metcalf
cd84016efe Optimize tile (mostly tilegx) memcpy and memmove performance.
- Override <memcopy.h> so we use full 8-byte word copies on tilegx32
  for memmove, then use op_t in memcpy instead of the previous
  locally-defined word_t just to avoid proliferating identical types.
- Fix bug in memcpy prefetch that caused us to never prefetch past
  the first cache line.
- Optimize misaligned memcpy by inlining _wordcopy_fwd_dest_aligned
  instead of just doing a dumb word-at-a-time copy.
- Make memcpy safe for forward copies by doing all the loads from
  a given cache line prior to doing a wh64 (cache line zero-fill)
  on the destination.  Remove now-redundant src == dst check.
- Copy and optimize the generic wordcopy.c routines to use the tile
  "double align" instruction instead of the MERGE macro; to avoid
  offset addressing mode (which tile doesn't have) by rewriting the
  pointer math to load and store with a zero index; and to use
  post-increment addresses in the inner loops to improve scheduling.
2012-11-06 09:24:19 -05:00
Joseph Myers
d7fcee3a58 Define lll_futex_timed_wait_bitset for MIPS. 2012-11-05 22:30:54 +00:00
Joseph Myers
316a1b67e1 Define lll_futex_timed_wait_bitset for ARM. 2012-11-05 22:30:37 +00:00
Joseph Myers
acfa885ff1 Fix types of FE_DFL_ENV and FE_NOMASK_ENV (bug 14805). 2012-11-05 13:38:40 +00:00
Thomas Schwinge
b830319d49 [BZ #157] Remove include/stub-tag.h for good. 2012-11-04 19:59:40 +01: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
Chris Metcalf
0244426b93 tile: Account for new tests (missed test-double changes) 2012-11-03 08:46:09 -04:00
Thomas Schwinge
46879baebf Regenerate all configure scripts. 2012-11-01 18:04:56 +01:00
Andreas Jaeger
53176cd906 Convert alpha to use <bits/fcntl-linux.h> 2012-11-01 06:07:38 +01:00
Thomas Schwinge
4c68e86547 BZ#14743: Move clock_* symbols from librt to libc.
Change missing from commit 6e6249d0b4.
2012-11-01 01:59:19 +01:00
Andreas Schwab
5a03cb1e85 Fix powerpc abilist sort order 2012-10-31 23:28:48 +01:00
Steve Ellcey
84097ebac3 Remove 'Contributed' line, glibc is not using them anymore. 2012-10-31 13:03:45 -07:00
Steve Ellcey
d002339920 Remove trailing white spaces. 2012-10-31 10:39:48 -07:00
Steve Ellcey
e6ff7f84f7 2012-10-31 Steve Ellcey <sellcey@mips.com>
* sysdeps/mips/memcpy.S: Add prefetching and more unrolling, make
	it work in 32 or 64 bit modes.
	* sysdeps/mips/mips64/memcpy.S: Remove.
2012-10-31 10:38:17 -07:00
Ryan S. Arnold
e89af8ce87 Fix ChangeLog date for commit 09dec6c37e 2012-10-30 19:10:22 -05:00
Ryan S. Arnold
09dec6c37e Correct cacheline size to 32-bytes for ppc405 memset.S (bug 14595).
This patch also creates a version of memset.S for the ppc476 processor
which uses a 128-byte cacheline size for dcbz insns.
2012-10-30 17:07:18 -05:00
Chris Metcalf
47cc1490e0 Invoke DL_AFTER_LOAD if defined
This hook is useful for any arch-specific functionality that
should be done on loaded objects.  For the tile architecture,
the hook is already provided (though we switch to using the new
macro name with this commit) and implements a simulator notifier
so that the simulator can load Elf symbols to match the object
and generate better error messages for PC's.

Also, remove a spurious definition of DL_UNMAP in dl-runtime.c
2012-10-30 14:16:18 -04:00
Chris Metcalf
d44a6f8b99 tile: improve ABI and #include use in gettimeofday vdso support 2012-10-30 14:11:54 -04:00
Chris Metcalf
5ff3789785 tile: update libm-test-ulps for new tests 2012-10-30 14:11:22 -04:00
Joseph Myers
2a27fd6dae Fix strtod handling of underflow (bug 14047). 2012-10-30 13:51:27 +00:00