Commit Graph

24918 Commits

Author SHA1 Message Date
Joseph Myers fb1ae1eede Fix sunrpc 64-bit (especially big-endian) issues (bug 14821). 2012-11-09 18:21:59 +00:00
Marcus Shawcroft 554066b83b AArch64 Port 2012-11-09 17:54:04 +00:00
Andreas Jaeger 2c1adbcb76 PowerPC: Use <bits/fcntl-linux.h>
* sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Remove all
	definitions and declarations that are provided by
	<bits/fcntl-linux.h> and include <bits/fcntl-linux.h>.
2012-11-09 16:41:38 +01:00
Andreas Krebbel d0f8457e6b S/390: Add hwcap value for transactional execution. 2012-11-08 09:53:00 +01:00
Marcus Shawcroft 57241e26e5 Adjust comment above AArch64 relocs. 2012-11-08 08:19:30 +00:00
David S. Miller 60e8270d6c Fix NULL ucontext->uc_link handling on sparc64.
* sysdeps/unix/sysv/linux/sparc/sparc64/__start_context.S: New file.
	* sysdeps/unix/sysv/linux/sparc/sparc64/makecontext.c
	(__start_context): Declare.
	(__makecontext_ret): Delete.
	(__makecontext): Hook up __start_context instead of
	__makecontext_ret.
	* sysdeps/unix/sysv/linux/sparc/sparc64/Makefile
	(sysdep_routines): Add __start_context when in stdlib.
2012-11-07 21:01:06 -08:00
Joseph Myers 0fbb0fbc2e Use configured $(NM), $(OBJDUMP), $(READELF) in tst-xmmymm.sh. 2012-11-08 00:01:46 +00:00
H.J. Lu eb48db7e89 Also run tst-xmmymm.sh on i386 ld.so 2012-11-07 13:50:08 -08:00
Joseph Myers c4b6cf53d5 conformtest: Fix pthreads expectations for XPG3 / XPG4 / UNIX98. 2012-11-07 19:42:20 +00:00
Joseph Myers cbe6e12006 conformtest: Fix setenv / unsetenv expectations. 2012-11-07 19:41:38 +00:00
Joseph Myers 1b12644333 conformtest: Fix isnan function return type. 2012-11-07 19:41:03 +00:00
Joseph Myers b961a5737a conformtest: Fix sys/mman.h expectations for UNIX98. 2012-11-07 19:40:18 +00:00
Joseph Myers 9e188909df conformtest: Only expect mknodat for XOPEN2K8. 2012-11-07 19:37:52 +00:00
Joseph Myers 05bcf62afb conformtest: Clean up / correct / expand C99 and C11 expectations. 2012-11-07 19:36:48 +00:00
Jeff Law 01f34a3bd8 2012-11-07 Andreas Jaeger <aj@suse.de>
[BZ #14809]
        * sysdeps/unix/sysv/linux/sys/sysctl.h (_UAPI_LINUX_KERNEL_H)
        (_UAPI_LINUX_TYPES_H): Starting with Linux 3.7, the include header
        guards are changed.  Only define if not yet defined, #undef back
        after including linux/sysctl.h if defined here.
2012-11-07 11:58:37 -07:00
Roland McGrath 03a8df301b NEWS update for closing 14815. 2012-11-07 10:22:28 -08:00
Roland McGrath 7514feb815 BZ#14815: Manual typo fix. 2012-11-07 10:21:59 -08:00
Chris Metcalf 87ae5e366e Update language in ChangeLog.tile. 2012-11-07 13:19:54 -05:00
Dmitry V. Levin 55bdd2866f locales/ru_RU: fix abbreviated month names
[BZ#14807]
* locales/ru_RU (abmon): Change back from genitive to nominative,
apply fixed three-letter abbreviation form, remove trailing dots.
2012-11-07 17:51:15 +00:00
Dmitry V. Levin 996c6ebd9d locales/ru_RU: fix abbreviated day names
[BZ#10873]
* locales/ru_RU (abday): Remove trailing dots.
2012-11-07 15:55:35 +00:00
Marcus Shawcroft 19b2ecfcae Adding AArch64 support to elf/elf.h 2012-11-07 13:32:08 +00:00
Joseph Myers 60e235ee2a Fix spurious underflows from pow with results close to 1 (bug 14811). 2012-11-07 13:03:31 +00:00
Andreas Krebbel 0ab234b7db S/390: Sync AUXV capabilities and archs with kernel 2012-11-07 08:52:30 +01:00
Joseph Myers 45832f7473 conformtest: Fix typo in CLK_TCK condition. 2012-11-07 04:05:12 +00: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
Andreas Jaeger c5f4572124 Update from translation team for Esperanto 2012-11-06 20:11:07 +01:00
Chris Metcalf 91e0d40e89 Bump timeouts on some new nptl tests to support tilepro. 2012-11-06 13:10:19 -05: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 82477c28f4 Fix fma underflows with small x * y (bug 14793). 2012-11-06 14:12:54 +00: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
Siddhesh Poyarekar 8f861542dd [S390,PPC] Implement FUTEX_WAIT_BITSET for timedwait functions
Since the FUTEX_WAIT operation takes a relative timeout, the
pthread_cond_timedwait and other timed function implementations have
to get a relative timeout from the absolute timeout parameter it gets
before it makes the futex syscall.  This value is then converted back
into an absolute timeout within the kernel.  This is a waste and has
hence been improved upon by a FUTEX_WAIT_BITSET operation (OR'd with
FUTEX_CLOCK_REALTIME to make the kernel use the realtime clock instead
of the default monotonic clock).  This was implemented only in the x86
and sh assembly code and not in the C code.  This patch implements
support for FUTEX_WAIT_BITSET whenever available (since linux-2.6.29)
for s390 and powerpc.
2012-11-05 21:12:52 +05:30
Joseph Myers 155ee340b8 Add bug 14805 to list of fixed bugs in NEWS. 2012-11-05 13:42:54 +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
Joseph Myers 99252c8c62 Fix S/390 bits/fenv.h namespace use (bug 14801). 2012-11-05 13:16:07 +00:00
Samuel Thibault d6d98dea2d [BZ #3665] Regenerate sysdeps/mach/hurd/bits/errno.h. 2012-11-04 22:15:29 +01:00
Thomas Schwinge e10bb1072c [BZ #5246] Conditionalize use of PTR_DEMANGLE. 2012-11-04 21:46:30 +01:00
Joseph Myers a0c2940d67 Fix fma overflow results outside round-to-nearest mode (bug 14797). 2012-11-04 19:26:02 +00:00
Thomas Schwinge b830319d49 [BZ #157] Remove include/stub-tag.h for good. 2012-11-04 19:59:40 +01:00
Thomas Schwinge 512a49be20 [BZ #11638] has been fixed.
In commit bea9b19322 already.
2012-11-04 15:36:32 +01:00
Pino Toscano a20492cffc generic paths.h: remove old paths from _PATH_STDPATH
Remove /usr/contrib/bin and /usr/old/bin from _PATH_STDPATH, since they seem
to be part only of old BSDs, Solaris and HP-UX.
2012-11-04 10:11:39 +01:00
Pino Toscano 72e182e38d Fix small indendation issues in paths.h files 2012-11-04 10:10:58 +01:00
David S. Miller d3bd58cf0a Fix coding style in sparc lowlevellock.h
nptl/

	* sysdeps/unix/sysv/linux/sparc/lowlevellock.h (BUSY_WAIT_NOP):
	Add missing spaces.
	(__cpu_relax): Likewise.
2012-11-03 15:25:55 -07: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