Commit Graph

350 Commits

Author SHA1 Message Date
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
Carlos O'Donell
236bb0623d hppa: Add cfi direcvtives.
We add cfi directives to the syscall assembly.
2012-10-29 23:36:41 -04:00
Carlos O'Donell
e22f413005 hppa: Fix r19 save and restore.
We must save and restore r19 in both PIC and non-PIC
situations since the kernel paths that clobber r19
are independent of that PIC-ness of userspace.
In addition we choose r4 as the temporary register over
r3 which is being used by recent gcc's as the frame
pointer.
2012-10-29 23:16:44 -04:00
Carlos O'Donell
4ebdb01027 hppa: Optimize syscall sequence.
We remove an extraneous nop from the syscall sequence.
No DO_CALL* may end in an instruction with a delay slot.
2012-10-29 23:11:06 -04:00
Carlos O'Donell
f0b8ce0c73 Fix trailing whitespace. 2012-10-29 22:08:00 -04:00
Steve Ellcey
48b76e2d04 2012-10-29 Steve Ellcey <sellcey@mips.com>
* sysdeps/unix/sysv/linux/mips/mips32/Makefile: Remove.
	* sysdeps/unix/sysv/linux/mips/mips64/n32/Makefile: Remove.
	* sysdeps/unix/sysv/linux/mips/mips64/n64/Makefile: Remove.
	* sysdeps/unix/sysv/linux/mips/configure.in: Create default_abi.make.
	* sysdeps/unix/sysv/linux/mips/configure: Regenerate.
	* sysdeps/unix/sysv/linux/mips/Makefile: Include default_abi.make.
	(abi-variants): Add hard and soft float versions.
	(abi-o32-options): Remove.
	(abi-o32-condition): Remove.
	(abi-n32-options): Remove.
	(abi-n32-condition): Remove.
	(abi-n64-options): Remove.
	(abi-n64-condition): Remove.
	(abi-o32_soft-options): New.
	(abi-o32_soft-condition): New.
	(abi-o32_hard-options): New.
	(abi-o32_hard-condition): New.
	(abi-n32_soft-options): New.
	(abi-n32_soft-condition): New.
	(abi-n32_hard-options): New.
	(abi-n32_hard-condition): New.
	(abi-n64_soft-options): New.
	(abi-n64_soft-condition): New.
	(abi-n64_hard-options): New.
	(abi-n64_hard-condition): New.
2012-10-29 11:42:39 -07:00
Steve Ellcey
55e64efadf 2012-10-29 Steve Ellcey <sellcey@mips.com>
* sysdeps/unix/sysv/linux/mips/mips32/Makefile: Remove.
	* sysdeps/unix/sysv/linux/mips/mips64/n32/Makefile: Remove.
	* sysdeps/unix/sysv/linux/mips/mips64/n64/Makefile: Remove.
	* sysdeps/unix/sysv/linux/mips/configure.in: Create default_abi.make.
	* sysdeps/unix/sysv/linux/mips/configure: Regenerate.
	* sysdeps/unix/sysv/linux/mips/Makefile: Include default_abi.make.
	(abi-variants): Add hard and soft float versions.
	(abi-o32-options): Remove.
	(abi-o32-condition): Remove.
	(abi-n32-options): Remove.
	(abi-n32-condition): Remove.
	(abi-n64-options): Remove.
	(abi-n64-condition): Remove.
	(abi-o32_soft-options): New.
	(abi-o32_soft-condition): New.
	(abi-o32_hard-options): New.
	(abi-o32_hard-condition): New.
	(abi-n32_soft-options): New.
	(abi-n32_soft-condition): New.
	(abi-n32_hard-options): New.
	(abi-n32_hard-condition): New.
	(abi-n64_soft-options): New.
	(abi-n64_soft-condition): New.
	(abi-n64_hard-options): New.
	(abi-n64_hard-condition): New.
2012-10-29 11:40:31 -07:00
Chris Metcalf
d11260f86a tile: add vDSO support for gettimeofday() 2012-10-29 13:47:57 -04:00
Andreas Jaeger
86ebe6b133 Remove redundant defines of __O_LARGEFILE
* sysdeps/unix/sysv/linux/x86/bits/fcntl.h (__O_LARGEFILE)
	[!__x86_64]: Do not define, take value from <bits/fcntl-linux.h>.
	* sysdeps/unix/sysv/linux/s390/bits/fcntl.h (__O_LARGEFILE):
	[__WORDSIZE != 64]: Likewise.

	* sysdeps/unix/sysv/linux/generic/bits/fcntl.h: (__O_LARGEFILE)
	[__WORDSIZE != 64]: Do not define, take value from
	<bits/fcntl-linux.h>.
2012-10-27 13:49:30 +02:00
Andreas Jaeger
76a82e29f8 HPPA: Use <bits/fcntl-linux.h>
* sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: Remove all
	definitions and declarations that are provided by
	<bits/fcntl-linux.h> and include <bits/fcntl-linux.h>.
	(__O_PATH): Define.
2012-10-26 21:17:06 +02:00
Andreas Jaeger
af3a9965e5 Convert ia64, linux-generic, m68k <bits/fcntl.h> to use <bits/fcntl-linux.h>
* sysdeps/unix/sysv/linux/m68k/bits/fcntl.h: Remove all
	definitions and declarations that are provided by
	<bits/fcntl-linux.h> and include <bits/fcntl-linux.h>.

	* sysdeps/unix/sysv/linux/generic/bits/fcntl.h: Remove all
	definitions and declarations that are provided by
	<bits/fcntl-linux.h> and include <bits/fcntl-linux.h>.

	* sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Remove all
	definitions and declarations that are provided by
	<bits/fcntl-linux.h> and include <bits/fcntl-linux.h>.
2012-10-25 20:20:08 +02:00
Roland McGrath
6e6249d0b4 BZ#14743: Move clock_* symbols from librt to libc. 2012-10-24 14:50:46 -07:00
Andreas Jaeger
de2b6422c6 Convert MIPS to use <bits/fcntl-linux.h>
* sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Remove all
	definitions and declarations that are provided by
	<bits/fcntl-linux.h> and include <bits/fcntl-linux.h>.
2012-10-24 22:13:15 +02:00
Joseph Myers
0bf57f872c Don't set resource limits in tst-oddstacklimit-ENV. 2012-10-24 17:13:24 +00:00
Andreas Jaeger
2a0e2669f9 Always define __O_LARGEFILE 2012-10-22 16:23:20 +02:00
Andreas Jaeger
7597ceba89 ARM: Use <bits/fcntl-linux.h>
* sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Remove all
	definitions and declarations that are provided by
	<bits/fcntl-linux.h> and include <bits/fcntl-linux.h>.
2012-10-22 09:34:11 +02:00
Chris Metcalf
b8d7c0968c tilegx: add optimized sched_getcpu() using TILE_COORD SPR
We can discover our x,y coordinate in the core mesh with an
mfspr instruction, multiply y by the core mesh width, and have
the core number without needing to ask the kernel.
2012-10-12 14:26:25 -04:00
Carlos O'Donell
9d9358f2eb hppa: Update pthread.h
Updates the hppa-specific pthread.h from the generic version.
After this update the only difference between the generic
version and the hppa version is the footer protected by the
_PTHREAD_H_HPPA_ guard.
2012-10-10 23:00:00 -04:00
Carlos O'Donell
fd328df065 hppa: Remove pt-initfini.c
Rmoves the unused pt-initfini.c
2012-10-10 22:52:00 -04:00
Carlos O'Donell
0883bc35b4 hppa: Restore nptl/shlib-versions.
On 2012-01-07 the nptl/shlib-versions file removed the hppa entry.
This restores that entry in the hppa ports tree.
2012-10-10 22:42:52 -04:00
Roland McGrath
b8493de0ec Add missing magic to GLIBC_PROVIDES. 2012-10-09 15:41:30 -07:00
Roland McGrath
fb228a2d94 Clean up R_ARM_PC24 handling. 2012-10-05 12:56:00 -07:00
Steve Ellcey
8f565a27ed 2012-10-03 Steve Ellcey <sellcey@mips.com>
* sysdeps/mips/ieee754.h: Move to...
	* sysdeps/mips/ieee754/ieee754.h: Here.
	* sysdeps/mips/mips32/Implies: Add mips/ieee754.
	* sysdeps/mips/mips64/Implies: Ditto.
	* sysdeps/mips/mips64/n32/Implies: Ditto.
	* sysdeps/mips/mips64/n64/Implies: Ditto.
2012-10-03 14:32:26 -07:00
Steve Ellcey
05088f14d6 2012-10-03 Steve Ellcey <sellcey@mips.com>
* sysdeps/mips/ieee754.h: Move to...
	* sysdeps/mips/ieee754/ieee754.h: Here.
	* sysdeps/mips/mips32/Implies: Add mips/ieee754.
	* sysdeps/mips/mips64/Implies: Ditto.
	* sysdeps/mips/mips64/n32/Implies: Ditto.
	* sysdeps/mips/mips64/n64/Implies: Ditto.
2012-10-03 14:31:00 -07:00
Siddhesh Poyarekar
40d4a87bb5 Split my last ChangeLog entry into respective arch-specific files 2012-10-02 09:28:18 +05:30
Siddhesh Poyarekar
adcdc775e1 Fix clone flag name in comment to CLONE_CHILD_CLEARTID. 2012-10-02 08:52:55 +05:30
Roland McGrath
51367701af Get rid of unused __swblk_t type. 2012-10-01 14:39:29 -07:00
Roland McGrath
93c65d4384 Clean up init-first.c files. 2012-10-01 12:55:34 -07:00
H.J. Lu
1fa1170b52 Fix the ChangeLog entry 2012-09-28 16:14:32 -07:00
H.J. Lu
4ff2d4c2f6 Remove mips VERSYMIDX macro definition 2012-09-28 11:31:18 -07:00
H.J. Lu
f8419467bb Remove arm ADDRIDX macro definition 2012-09-28 11:31:13 -07:00
Richard Henderson
c18b7473cb alpha: Fix all users of SYSCALL_ERROR_HANDLER
The fix begun in 64e65bc1 was incomplete.  Fixed by adding
a new SYSCALL_ERROR_FALLTHRU macro.
2012-09-28 10:51:01 -07:00
Joseph Myers
f6a2737f08 Add __ppc_get_timebase_freq to powerpc-nofpu ABI baseline. 2012-09-26 00:30:54 +00:00
Mike Frysinger
15055a1cd7 ia64: define new get-rounding-mode.h header
The new strtod function wants rounding information from the C lib, so
move the guts of the ia64 version into a header file for it to use.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-09-24 17:56:18 -04:00
Mike Frysinger
2d48610df2 ia64: override crtbeginT.o
The ia64 gcc port has never shipped a crtbeginT.o, so keep using the
old crtbegin.o object when static linking.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-09-24 17:56:18 -04:00
Chris Metcalf
27ed6484ec tile: fix two comments that said "tile" to properly say "tilepro" 2012-09-24 16:03:33 -04:00
Joseph Myers
eaf6f205ff Correct order of arguments of __arm_assisted_compare_and_exchange_val_32_acq. 2012-09-21 23:42:16 +00:00
Carlos O'Donell
11aaf6ef2d hppa: Use __prlimit64 as the internal name.
Fix a build failure by using __prlimit64 as the internal
function name for the versioned symbol prlimit64. Without
this patch the build system attempts to alias prlimit64
to itself and that is invalid.
2012-09-20 10:39:27 -04:00
Carlos O'Donell
eee7025916 hppa: Add EHWPOISON and bump errlist-compat to 260
Add errno EHWPOISON and bump the errlist-compat table to 260,
providing 2 padding entries for future use before bumping is
again required.
2012-09-20 03:18:47 -04:00
Chris Metcalf
f737a641b6 tile: update libm-test-ulps for new tests 2012-09-17 14:57:49 -04:00
Richard Henderson
01e80428f7 alpha: Streamline __setfpucw
The convert_bit macro allows the compiler to translate the bit
positions more efficiently.  The assumption of only running at
program startup allows eliding the __ieee_get_fp_control call.
2012-09-13 13:13:22 -07:00
Richard Henderson
c899d15cbd alpha: Update localplt.data 2012-09-13 13:13:22 -07:00
Richard Henderson
758610860b alpha: Update ulps 2012-09-13 13:13:22 -07:00
Richard Henderson
361818d502 alpha: Add get-rounding-mode.h 2012-09-13 07:35:26 -07:00
Richard Henderson
b2d36dda9b alpha: Work around gcc 4.8 aliasing difference/bug 2012-09-12 17:18:25 -07:00
Joseph Myers
6c9b0f6826 Make strtod respect the rounding mode (bug 14518). 2012-09-12 23:36:19 +00:00
Chris Metcalf
48bac3debb tile: fix type of prfpregset_t in <sys/procfs.h>
The previous dummy definition (as type int) was fine in general, since
tile doesn't have floating-point registers, but it confused gdb's
configure, leading to later compile errors.  This change also makes
prfpregset_t parallel to prgregset_t, which seems like generally the
right thing regardless of the non-existence of the actual registers :-)
2012-09-06 11:43:56 -04:00
Chris Metcalf
9207320187 tile: Add BZ to Changelog and update NEWS 2012-09-06 11:37:07 -04:00
Chris Metcalf
053406fa70 tile: BZ#14237: fix __tls_get_addr bug initializing new modules
We were missing a check for TLS_DTV_UNALLOCATED; if set, we need
to go to the slow path.
2012-09-06 11:25:04 -04:00
Joseph Myers
ad845c0be9 Remove __ASSUME_STAT64_SYSCALL. 2012-08-27 19:36:04 +00:00
Guido Guenther
89570c6269 mips: clear condition bit 23 in fpu too
We've been carrying this in Gentoo for quite a long time to fix some test
failures that people hit.

Original message:
	> make[4]: *** [/glibc/glibc-package-2.3/mips-linux/obj/math/test-fpucw.out] Error 1
	This test fails since the read back fpu control word is 0x80000 instead
	of 0x0. I wonder if this patch is correct:
	...
	which additionally masks out the condition bit 23 - note that the other
	condition bits (25-31) are masked out too?

URL: http://sourceware.org/ml/libc-alpha/2002-10/msg00392.html
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-27 12:41:28 -04:00
Mike Frysinger
563c840564 alpha: add conditional fdatasync support
While most arches have had the fdatasync syscall for a long time, the
alpha port didn't add it until the 2.6.22 release.

This is heavily based on Aurelien Jarno's initial work.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-27 12:16:28 -04:00
Steve McIntyre
d3bafbc98e Check floating-point ABI in ARM VALID_ELF_HEADER. 2012-08-23 20:38:25 +00:00
Joseph Myers
eaeffd07f7 Clean up MIPS stat64 handling. 2012-08-22 21:03:12 +00:00
Joseph Myers
0e1d99119e Remove __ASSUME_FADVISE64_64_SYSCALL. 2012-08-21 21:07:22 +00:00
Joseph Myers
348363b2c3 Remove __ASSUME_MMAP2_SYSCALL. 2012-08-20 14:37:27 +00:00
Carlos O'Donell
30f696374d Fifth argument of la_pltenter() is not constant.
The original runtime linker auditing interface described
by Solaris allows the 5th argument of la_pltenter() to be
modified. This patch cleans up the ldsodefs.h definitions
such that the 5th argument is not constant.

At one point the 5th argument *was* constant but this was
changed with commit 2413fdba7a.
This patch updates alpha, ia64, mips, sh and sparc with similar
changes.
2012-08-16 08:41:05 -07:00
Maxim Kuvyrkov
309becf120 Optimize __libc_lock_lock and __libc_lock_trylock for MIPS. 2012-08-15 16:44:30 -07:00
Maxim Kuvyrkov
ef4009734b Add generic versions of pthread_spin_lock and pthread_spin_trylock. 2012-08-15 16:29:06 -07:00
Roland McGrath
fdd3affb97 Rename ARM bits/atomic.h not to be specific to nptl add-on. 2012-08-15 09:40:28 -07:00
Roland McGrath
f3bdd5f843 Separate ARM bits/atomic.h into generic and Linux-specific files. 2012-08-15 09:40:28 -07:00
Joseph Myers
5544c7e000 Update MIPS dl-lookup.c from generic version. 2012-08-15 09:49:07 +00:00
Mike Frysinger
9770df4f12 arm: fix up style in reloc fix
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-14 21:38:15 -04:00
Mike Frysinger
d427a4f8a4 ia64: drop HAVE_CPP_ASM_DEBUGINFO
Looks like a wart copied from the i386 code base.  The only place I can
find that checks this is the i386 sysdep.h, and even then this looks like
a check that should get thrown away as obsolete ...

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-14 21:37:00 -04:00
Joseph Myers
f2c05b9ecf Remove __ASSUME_CLONE_THREAD_FLAGS. 2012-08-14 22:34:04 +00:00
Maxim Kuvyrkov
8f12da9795 Add explicit acquire/release semantics to MIPS' atomic_exchange_and_add. 2012-08-13 19:55:34 -07:00
Richard Henderson
cc184e11fe alpha: Don't test toolchain support for TLS or GPREL 2012-08-13 18:21:06 -07:00
Richard Henderson
2e33ecdf8c alpha: Fix compat version number for nearbyintl 2012-08-13 18:19:42 -07:00
Mike Frysinger
a107920668 ia64: drop TLS configure check
Since we require a new enough version of binutils that has TLS, we don't
need to bother checking for it anymore.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-12 15:01:40 -04:00
Mike Frysinger
191ce8ce59 hppa: add missing prlimit64 symbol
All other arches have this in their syscall list.  Looks like hppa
is missing it though and breaks one or two apps that try to call it.

URL: https://bugs.gentoo.org/411745
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-12 14:53:07 -04:00
Mike Frysinger
86e1477c1a ia64: drop ASM_TYPE_DIRECTIVE usage
Matches what we've done in the rest of the tree.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-12 14:49:55 -04:00
Mike Frysinger
3447612d3c arm: handle unaligned ABS relocs
When relocating a misaligned R_ARM_ABS32, glibc currently crashes.

URL: https://bugs.gentoo.org/394237
URL: http://gcc.gnu.org/PR51456
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-12 14:49:45 -04:00
Joseph Myers
121dce05fe Move Linux kernel version conditionals to kernel-features.h. 2012-08-10 15:53:27 +00:00
Andreas Schwab
2d83a317e9 m68k: fix type of pltenter member in audit interface 2012-08-10 15:22:44 +02:00
Roland McGrath
2aa5b9c146 Make ARM setjmp/longjmp respect ARM_ASSUME_NO_IWMMXT macro. 2012-08-09 16:37:50 -07:00
Joseph Myers
7f54025287 Define __ASSUME_UTIMES for MIPS. 2012-08-09 23:33:41 +00:00
Roland McGrath
6dcf80c782 Avoid VFP HWCAP check in setjmp/longjmp and getcontext/setcontext when compiled without __SOFTFP__ defined. 2012-08-09 11:51:05 -07:00
Roland McGrath
a4ca519518 Don't check HWCAP_ARM_VFP in OS-generic code.
Presume VFP if compiled without __SOFTFP__ defined.
2012-08-09 10:04:56 -07:00
Roland McGrath
76de109437 Add sotruss-lib support for ARM. 2012-08-08 16:27:51 -07:00
Joseph Myers
b36137f1d6 Remove __ASSUME_TGKILL. 2012-08-08 23:22:53 +00:00
Roland McGrath
44c94c1da0 Add a const in arm_gnu_pltexit signature. 2012-08-08 14:57:07 -07:00
Roland McGrath
92142c0cfd ARM: fix build breakage from sysdeps/unix/sysv/linux/arm/dl-machine.h addition. 2012-08-08 14:19:57 -07:00
Roland McGrath
69a14aa487 Fiddle ARM atomic.h to avoid -Wvolatile-register-var warnings. 2012-08-08 13:57:50 -07:00
Roland McGrath
7f3e1ad05f Add missing #include for sysdeps/arm/dl-irel.h. 2012-08-08 13:16:54 -07:00
Roland McGrath
9b5281b65e Fix __dl_start declaration to avoid warning. 2012-08-08 11:03:47 -07:00
Richard Henderson
5afee2dc60 alpha: Purge __ASSUME_IEEE_RAISE_EXCEPTION 2012-08-08 07:45:21 -07:00
Richard Henderson
6ee732b7cd alpha: Tidy up ieee_get/set_fp_control syscalls 2012-08-08 07:44:19 -07:00
Richard Henderson
6360984bc3 alpha: Purge __ASSUME_STAT64_SYSCALL 2012-08-08 07:43:27 -07:00
Andreas Schwab
3381e4ff2d m68k/cf: define __signbit/__signbitf as inlines 2012-08-08 12:13:57 +02:00
Andreas Schwab
3b7d2b398e m68k/cf: avoid warning in non-shared atomic_compare_and_exchange_val_acq 2012-08-08 12:13:56 +02:00
Joseph Myers
6dad2c0688 Remove pre-2.6.16 Linux kernel support. 2012-08-07 16:40:32 +00:00
Roland McGrath
8e49df1d65 Clean up {alphasort,versionsort,scandir,scandirat}{,64} for struct dirent == struct dirent64. 2012-08-06 16:48:36 -07:00
Roland McGrath
03af952060 Clean up lockf64, fseeko64, ftello64, fgetpos64, fsetpos64 for off64_t == off_t. 2012-08-06 16:48:14 -07:00
Chris Metcalf
5c53355355 tile: fix typo in ASM_TYPE_DIRECTIVE fix 2012-08-04 09:57:37 -04:00
Mike Frysinger
0c41943a4d ia64: fix byteswap conversion warning
Same fix as went in for other architectures.

URL: http://sourceware.org/bugzilla/show_bug.cgi?id=12194
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-03 12:08:51 -04:00
Joseph Myers
7aab07e4e5 Remove pre-2.6.0 Linux kernel support (bug 13717). 2012-08-03 13:42:47 +00:00
Andreas Schwab
fe58a6517d m68k: remove ASM_{TYPE,SIZE}_DIRECTIVE and ALIGNARG 2012-08-03 12:13:29 +02:00
Joseph Myers
606dd3d9f4 Remove ASM_TYPE_DIRECTIVE for ARM. 2012-08-02 20:57:45 +00:00
Chris Metcalf
2fbd74d8c9 tile: Get rid of ASM_TYPE_DIRECTIVE 2012-08-02 15:48:14 -04:00
Joseph Myers
23bddc0668 Remove __ASSUME_FCNTL64. 2012-08-01 21:27:58 +00:00
Joseph Myers
a9f1039f0a Remove __ASSUME_VFORK_SYSCALL (and some __NR_vfork conditionals). 2012-08-01 20:49:45 +00:00
Roland McGrath
5d9eaeecb4 Move Linuxism out of sysdeps/arm/dl-machine.h. 2012-08-01 11:39:08 -07:00
Roland McGrath
09c0ee5f8c BZ#14138: Move getrlimit (ugetrlimit) syscall to syscalls.list. 2012-08-01 10:25:11 -07:00
Steve Ellcey
b290216f09 Fix MIPS PREF/PREFX macro definitions in empty case. 2012-08-01 15:11:43 +00:00
Andreas Schwab
7c24defe1a m68k: update libm test ULPs 2012-08-01 01:21:00 +02:00
Joseph Myers
7e6242f556 Improve MIPS n64 handling of 64-bit fcntl. 2012-07-31 23:17:24 +00:00
Roland McGrath
2618f5993c Missing ChangeLog.arm entry. 2012-07-31 09:33:08 -07:00
Roland McGrath
bea9b19322 Fix lots of bitrot for stub configurations. 2012-07-30 16:34:33 -07:00
Joseph Myers
89d9c04def Make mmap64 an alias of mmap on MIPS. 2012-07-27 13:43:46 +00:00
Andreas Schwab
350c174847 m68k: update libm test ULPs 2012-07-26 15:52:21 +02:00
Joseph Myers
3129cfc6ec Move testsuite audit definitions to sysdeps tst-audit.h files. 2012-07-26 11:29:07 +00:00
Andreas Jaeger
b1b2aaf8eb Merge Linux 3.5 ptrace changes
(__ptrace_eventcodes): Add new value PTRACE_EVENT_SECCOMP from Linux 3.5.
(__ptrace_setoptions): Add new value PTRACE_O_TRACESECCOMP, adjust PTRACE_O_MASK.
2012-07-26 13:13:26 +02:00
Andreas Jaeger
f8d44fdc72 Merge Linux 3.5 epoll changes
Add EPOLLWAKEUP.
2012-07-26 13:11:33 +02:00
Andreas Jaeger
bfc07087bf Merge _sigsys changes from Linux 3.5 2012-07-26 13:11:18 +02:00
Joseph Myers
89b4b02f42 Remove pre-2.4.21 Linux kernel support. 2012-07-25 21:19:13 +00:00
Florian Weimer
0c7936d5e9 Fix up ChangeLog entries 2012-07-25 20:46:19 +02:00
Florian Weimer
84b3fd8407 Rename __secure_getenv to secure_getenv 2012-07-25 19:46:22 +02:00
Joseph Myers
0f48659e36 Move localplt baselines to sysdeps directories. 2012-07-20 19:20:34 +00:00
Joseph Myers
ef1354a5fe Remove TLS configure check for MIPS. 2012-07-17 22:48:57 +00:00
Joseph Myers
dfa359badf Remove TLS configure check for ARM. 2012-07-17 22:46:09 +00:00
Chris Metcalf
f110915184 tile: exit with status zero on makecontext return with NULL uc_link 2012-07-17 14:40:48 -04:00
Chris Metcalf
6df48a9b8b tile: update libm test ULPs 2012-07-17 14:40:48 -04:00
Chris Metcalf
e3e5d6470d Move tile c++-types baselines to sysdeps directories. 2012-07-17 14:40:47 -04:00
Joseph Myers
7d67a5d1dc Add c++-types information for MIPS. 2012-07-17 16:25:02 +00:00
Joseph Myers
bd29910a8a Move c++-types baselines to sysdeps directories. 2012-07-17 14:44:06 +00:00
Andreas Schwab
aaf5420c6d m68k: add support for {get,make,set,swap}context 2012-07-16 19:23:33 +02:00
Joseph Myers
ec332e944f Remove pre-2.4.1 Linux kernel support. 2012-07-12 12:31:32 +00:00
Maxim Kuvyrkov
a766fb45a3 Rewrite MIPS' atomic.h to use __atomic_* builtins. 2012-07-11 16:47:58 -07:00
Chris Metcalf
ba7fefc8e0 tile: correct typo in comment 2012-07-10 10:38:18 -04:00
Chris Metcalf
5f5bcf71f7 tile: Convert ASM_GLOBAL_DIRECTIVE to .globl 2012-07-10 10:38:18 -04:00
Joseph Myers
cea48cfbdd Change ASM_GLOBAL_DIRECTIVE to .globl for ARM. 2012-07-10 14:29:29 +00:00
Andreas Schwab
c1d0079034 m68k: update libm test ULPs 2012-07-09 20:59:14 +02:00
Petar Jovanovic
76b1f93b04 Do not store data below the stack pointer on MIPS. 2012-07-06 19:12:21 +00:00
Joseph Myers
c57a67e033 Add ARM-specific static-stubs.c. 2012-07-05 22:16:03 +00:00
Joseph Myers
95f5a9a866 Avoid use of libgcc_s and libgcc_eh when building glibc. 2012-07-03 19:14:59 +00:00
Joseph Myers
06e3c8a22d Add ppca2 to ports powerpc/dl-procinfo. 2012-07-03 17:03:29 +00:00
Joseph Myers
b8845523ca Remove ports files no longer relevant now included in libc repository. 2012-07-03 16:52:10 +00:00
Joseph Myers
e64ac02c24 Move all files into ports/ subdirectory in preparation for merge with glibc 2012-07-01 13:06:41 +00:00