Commit Graph

4079 Commits

Author SHA1 Message Date
Chandrakala Chavva
5237c94b63 Fix MIPS PSEUDO define for n32 and n64 non-PIC. 2010-08-13 23:25:10 +00:00
Alexander Kanevskiy
fd5fe45924 ARM: Align hwcap names and definitions with kernel, mark VFP and NEON as HWCAP_IMPORTANT.
- Align hwcap names with kernel (arch/arm/kernel/setup.c)
- Align HWCAP_ARM_* definitions with kernel
- Make VFP and NEON as HWCAP_IMPORTANT, this can help in scenarios
where VFP/NEON HW optimizations can be utilized.
2010-08-13 19:43:35 +00:00
Joseph Myers
32b9acf3d9 Define EXTPROC for MIPS. 2010-08-13 16:50:07 +00:00
Joseph Myers
0955180613 Add f_flags to struct statfs for MIPS. 2010-08-12 22:18:00 +00:00
Joseph Myers
9672c67a8c Add IN_EXCL_UNLINK for MIPS. 2010-08-12 22:01:30 +00:00
Joseph Myers
c16fd24675 Add prlimit64 for MIPS. 2010-08-12 15:40:29 +00:00
Joseph Myers
3c11c98eaf Add prlimit64 for ARM. 2010-08-12 15:38:57 +00:00
Andreas Schwab
690d264a40 m68k: fix loading of GOT for Coldfire 2010-08-02 18:48:56 +02:00
Andreas Schwab
2aed4f91fd m68k: cleanup sysdep files
Use sysdep files in subdirectories instead of testing cpu macros.
2010-08-02 18:47:27 +02:00
Joseph Myers
71feaf7206 Define F_SETPIPE_SZ and F_GETPIPE_SZ for M68K. 2010-06-24 16:18:51 +00:00
Carlos O'Donell
3680f14a7d [hppa] Fix incorrect stack frame usage in vfork.
In a multithreaded environment the call to vfork was
incorrectly creating a stack frame. Given that the
child unwinds the stack frame first to call exec, it
will corrupt any values the parent stored in the stack
frame. The solution is to avoid creating a stack frame
unless required to call an error function, in which case
we are assured no child was created.
2010-06-24 12:13:36 -04:00
Carlos O'Donell
131fafa7da [hppa] Fix *context stack usage for varargs
The getcontext, and setcontext functions should
not adjust the stack, and should load the stack
pointer from the machine context. Calling makecontext
should create a frame for spilled incoming arguments,
and sync uc_stack.ss_sp to the machine context.
We do not support calling getcontext, modifying ss_sp,
and calling setcontext directly.
2010-06-23 17:03:11 -04:00
Joseph Myers
fdb3ec206e Define F_SETPIPE_SZ and F_GETPIPE_SZ for MIPS. 2010-06-14 22:09:52 +00:00
Joseph Myers
ce47c03640 Define F_SETPIPE_SZ and F_GETPIPE_SZ for ARM. 2010-06-14 22:09:08 +00:00
Andreas Schwab
9166f36fcc m68k: mark all inline math functions as non-throwing 2010-06-13 22:30:17 +02:00
Andreas Schwab
08b1b36387 m68k: Add required definitions to sys/user.h 2010-06-13 21:09:38 +02:00
Andreas Schwab
0df5659285 m68k: force alignment of futex variables 2010-06-11 21:59:21 +02:00
Andreas Schwab
c14e796ff6 hppa: Update nptl/pthread.h to match generic file 2010-06-07 14:46:19 +02:00
Joseph Myers
d0160bcc19 Fix internal_recvmmsg build attributes for ARM EABI. 2010-05-21 23:18:13 +00:00
Joseph Myers
6531684d50 Fix recvmmsg for MIPS. 2010-05-21 23:16:17 +00:00
Richard Henderson
7ffd2bd725 alpha: Do the 32/64-bit split on statfs routines. 2010-05-05 08:12:11 -07:00
Richard Henderson
200b5faee1 alpha: fix memchr to not cause memory faults.
http://www.mail-archive.com/debian-alpha@lists.debian.org/msg25088.html

Signed-off-by: Matt Turner <mattst88@gmail.com>
2010-05-04 09:06:15 -07:00
Aurelien Jarno
2ec03f509f alpha: add dl-procinfo support.
Fixes glibc bug 6827.

Signed-off-by: Matt Turner <mattst88@gmail.com>
2010-05-04 09:02:22 -07:00
Aurelien Jarno
116ff9ad18 alpha: fix corner cases in ceil, floor, rint.
Partial revert of bebc49030c. Even with the revert, ceil and floor are
still faster than libcpml's equivalent.

Fixes bug 5350.

Signed-off-by: Matt Turner <mattst88@gmail.com>
2010-05-04 09:01:40 -07:00
GOTO Masanori
6a84c77c71 alpha: fix *xstat.c build failure for Linux headers < 2.6.4
Fixes glibc bug 1026.
http://sourceware.org/ml/libc-alpha/2005-02/msg00122.html

Signed-off-by: Matt Turner <mattst88@gmail.com>
2010-05-04 09:00:25 -07:00
Joseph Myers
b1ab8c5fd9 Update MIPS libc-abis configuration for libc changes. 2010-04-14 19:28:10 +00:00
Daniel Jacobowitz
2dcd7ed8fd Fix unwinding through Thumb-2 system calls. 2010-04-08 12:43:55 -04:00
Joseph Myers
1dbb4edc73 Fix abiversion handling for MIPS. 2010-04-06 20:26:22 +00:00
Carlos O'Donell
3af825d53b hppa: Define MSG_WAITFORONE.
Signed-off-by: Carlos O'Donell <carlos@codesourcery.com>
2010-03-31 13:52:39 -04:00
Joseph Myers
848fa4a9c0 Update ARM for ABIVERSION changes. 2010-03-30 16:26:07 +00:00
Richard Henderson
8eb49e8ae8 alpha: Define MSG_WAITFORONE.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2010-03-30 07:50:27 -07:00
Matt Turner
742c00d3d9 alpha: update kernel-features.h for syscalls added in 2.6.33.
Signed-off-by: Matt Turner <mattst88@gmail.com>
2010-03-30 07:35:30 -07:00
Matt Turner
b14e8cb285 alpha: create kernel-features.h.
Signed-off-by: Matt Turner <mattst88@gmail.com>
2010-03-30 07:34:57 -07:00
Joseph Myers
e9823ee1b8 Define MSG_WAITFORONE for MIPS. 2010-03-30 13:16:44 +00:00
Richard Henderson
05479f36bb alpha: Implement ____longjmp_chk.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2010-03-26 13:17:53 -07:00
Richard Henderson
c87187fbb5 alpha: Fix errlist-compat for GLIBC_2.12.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2010-03-26 13:17:53 -07:00
Richard Henderson
3a808c3df7 alpha: Add hidden alias for fegetenv.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2010-03-26 13:17:53 -07:00
Richard Henderson
45e3c40653 alpha: Only define __libc_alpha_cache_shape in dl-sysdep.c.
The static program builds in libc were getting multiple
definition errors between dl-sysdep and dl-support.

Signed-off-by: Richard Henderson <rth@twiddle.net>
2010-03-26 13:17:53 -07:00
Richard Henderson
6546e0c499 alpha: Don't include asm/page.h in sys/user.h.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2010-03-26 13:17:53 -07:00
Richard Henderson
c735022ded alpha: Update bits/fcntl.h for XPG7 and define f_owner_ex et al.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2010-03-26 13:17:52 -07:00
Richard Henderson
ee390edfa9 alpha: Define PTR_MANGLE for !PIC too.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2010-03-26 13:17:52 -07:00
Richard Henderson
cce01cf0a1 alpha: Avoid unused variable warnings with INTERNAL_SYSCALL_ERR*.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2010-03-26 13:17:52 -07:00
Richard Henderson
c7b880234d alpha: Add sysdep/unix/sysv/linux/alpha/creat.c.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2010-03-26 13:17:52 -07:00
Richard Henderson
a9374d8174 alpha: Adjust the libc_cv_alpha_hidden_gprel test for gcc 4.5.
GCC 4.5 was able to tell that BAR was read-only and zero, and
elided the load.  Which caused the pattern match to fail.

Signed-off-by: Richard Henderson <rth@twiddle.net>
2010-03-26 13:17:52 -07:00
Richard Henderson
6796df65e4 alpha: Fix the return type of the atomic.h macros.
Signed-off-by: Richard Henderson <rth@twiddle.net>
2010-03-26 13:17:51 -07:00
Thomas Schwinge
01b32e7361 Add CFI statements to ARM's assembly code. 2010-03-26 18:12:56 +00:00
Joseph Myers
cca1fbbc2f Update MIPS dl-lookup.c from generic version. 2010-03-24 18:05:37 +00:00
Joseph Myers
b6c131119c Really commit intended version of Alpha bits/socket.h. 2010-03-23 15:25:31 +00:00
Matt Turner
0b37400ae4 Create bits/socket.h for alpha, correct SOCK_CLOEXEC and SOCK_NONBLOCK values. 2010-03-23 15:19:04 +00:00
Mischa Jonker
1eb0725631 Fix bug 11291: add *mem as atomic operation output for MIPS. 2010-03-23 15:03:10 +00:00
Andreas Schwab
92dd2ecf16 m68k: use signbit macro 2010-03-13 18:15:31 +01:00
Andreas Schwab
b5e933757c m68k: remove duplicate __signbit definitions 2010-03-13 17:28:12 +01:00
Andreas Schwab
326a03edf9 m68k: define __signbit inlines 2010-03-13 16:59:42 +01:00
Andreas Schwab
dbd0094b3f m68k: TLS reference to errno in syscall stubs 2010-03-13 01:00:03 +01:00
Andreas Schwab
7d6cb729ed m68k: don't include <sysdep.h> in lowlevellock.h 2010-03-12 22:15:23 +01:00
Andreas Schwab
7e261ba3d8 Add m68k-helpers optimized for m680x0 2010-03-12 21:40:09 +01:00
Andreas Schwab
2b3dafb087 Whitespace cleanup 2010-03-12 19:55:40 +01:00
Maxim Kuvyrkov
40111cb9e1 NPTL support for m68k/ColdFire 2010-03-12 19:52:07 +01:00
Maxim Kuvyrkov
75e73e66e4 m68k: update ColdFire sigcontext ABI 2010-03-12 19:52:07 +01:00
Maxim Kuvyrkov
d8e90a15fe m68k: remove bits/siginfo.h in favor of generic one 2010-03-12 19:51:56 +01:00
Maxim Kuvyrkov
42ae1878f3 m68k: update jmpbuf-unwind.h 2010-03-12 19:45:34 +01:00
Matt Turner
f3ed03373a Fix SOCK_CLOEXEC on HPPA to match O_CLOEXEC.
The kernel defines SOCK_CLOEXEC as
include/linux/net.h:#define SOCK_CLOEXEC        O_CLOEXEC
arch/parisc/include/asm/fcntl.h:#define O_CLOEXEC   010000000

But glibc was defining
sysdeps/unix/sysv/linux/hppa/bits/socket.h:  SOCK_CLOEXEC = 01000000,

Signed-off-by: Matt Turner <mattst88@gmail.com>
Signed-off-by: Kyle McMartin <kyle@redhat.com>
Signed-off-by: Carlos O'Donell <carlos@codesourcery.com>
2010-02-17 09:52:26 -05:00
Carlos O'Donell
317d0e66a0 Define MADV_MERGEABLE and MADV_UNMERGEABLE.
Add MADV_MERGEABLE and MADV_UNMERGEABLE to bits/mman.h,
matching HPPA values used in Linux kernel 2.6.32.
2010-02-17 09:27:42 -05:00
Carlos O'Donell
d143075adc Update __set_cr27() to mark r31 clobbered.
The function __set_cr27() uses the `ble`
instruction without marking the link register
r31 as clobbered. This change adds r31 to the
list of clobbers. The TLS thread register is
cr27 and is set by calling __set_cr27().
2010-02-17 09:27:41 -05:00
Carlos O'Donell
40215fde03 Add unlimited argument support to makecontext()
The initial implementation of makecontext()
supported only 8 arguments. This change adds
support for unlimited argument processing given
a large enough stack.
2010-02-17 09:27:40 -05:00
Joseph Myers
ee0c4dd1cc Add hidden alias for M68K fegetenv. 2010-02-10 15:32:33 +00:00
Joseph Myers
5ed9c2ea8a Add hidden alias for soft-float PowerPC fegetenv. 2010-02-10 15:15:58 +00:00
Joseph Myers
8256e69afd Add hidden alias for MIPS fegetenv. 2010-02-10 15:15:32 +00:00
Joseph Myers
caf557426d Add hidden alias for ARM fegetenv. 2010-02-10 15:14:41 +00:00
Carlos O'Donell
fa1b9bae63 Fix SOCK_CLOEXEC for accept4
Adjust the value of SOCK_CLOEXEC to match the kernel
value used for accept4. This has never worked in the
past, and all old applications are broken, therefore
we change this value to match the kernel value.
2010-02-01 17:55:00 -05:00
Carlos O'Donell
cbbda7adb2 Adjust errlist-compat to 257 for GLIBC_2.12
Added definitions for EOWNERDEAD, ENOTRECOVERABLE
and ERFKILL.
2010-02-01 17:54:59 -05:00
Carlos O'Donell
b8eca7ff8c Update constants and rearrange file.
Update F_SETOWN_EX and F_GETOWN_EX. Rearrange
the file to match other targets, reducing future
diffs against other targets and making maintenance
easier.
2010-02-01 17:54:58 -05:00
Matt Turner
aa576322e0 Fix Alpha bits/stat.h double inclusion problem. 2010-01-30 00:22:01 +00:00
Matt Turner
1480094d1f Update Alpha bits/sigaction.h for XPG7. 2010-01-30 00:21:08 +00:00
Matt Turner
54faff0517 Update Alpha bits/fcntl.h for XPG7 and allow bits/stat.h inclusion from fcntl.h. 2010-01-30 00:19:01 +00:00
Matt Turner
1f4a25ae2b Update Alpha O_SYNC. 2010-01-30 00:17:16 +00:00
Mike Frysinger
77b22d3e99 alpha: fix typo in timer_settime include 2010-01-30 00:11:54 +00:00
Joseph Myers
54b7103af4 Fix microMIPS glibc by avoiding hardcoded instruction length assumptions.
microMIPS is a variable-length encoding of the MIPS32 instruction set
(plus some extra instructions).  As it supports almost all of MIPS32,
assembly sources in glibc do not generally need changes to work with
microMIPS, but dl-trampoline.c contains some code with a hardcoded
assumption that three instructions occupy twelve bytes.  This patch
fixes this code for microMIPS by using the difference between two
labels to let the assembler calculate the relevant length.
2010-01-29 01:54:52 +00:00
Joseph Myers
fdefc0e1f1 Fix M68K bits/stat.h double inclusion problem. 2010-01-11 21:51:34 +00:00
Joseph Myers
cbbf2c84d8 Fix MIPS bits/stat.h double inclusion problem. 2010-01-11 21:00:28 +00:00
Joseph Myers
31afac4713 Update MIPS bits/sigaction.h for XPG7. 2010-01-11 13:28:37 +00:00
Joseph Myers
2f12146a33 Update M68K bits/fcntl.h for XPG7 and allow bits/stat.h inclusion from fcntl.h. 2010-01-10 19:02:51 +00:00
Joseph Myers
60a0880e36 Update MIPS bits/fcntl.h for XPG7 and allow bits/stat.h inclusion from fcntl.h. 2010-01-10 16:56:19 +00:00
Joseph Myers
0549913fb4 Update ARM bits/fcntl.h for XPG7. 2010-01-10 16:55:39 +00:00
Joseph Myers
5d79f83e90 Update M68K bits/poll.h for POSIX 2008. 2009-12-16 19:35:09 +00:00
Thomas Schwinge
2423dc241a Move ARM EABI mcount into a separate .S file. 2009-12-16 18:02:51 +00:00
Joseph Myers
8ef2c3b0f7 Update MIPS bits/poll.h for POSIX 2008. 2009-12-16 17:48:31 +00:00
Joseph Myers
872083bf15 Update MIPS dl-lookup.c. 2009-12-16 17:44:03 +00:00
Joseph Myers
4b8a7d2c3f Update M68K O_SYNC. 2009-12-16 12:37:07 +00:00
Joseph Myers
93a0dfdaf4 Update MIPS O_SYNC. 2009-12-15 18:11:38 +00:00
Joseph Myers
4d0f4f9f26 Update ARM O_SYNC. 2009-12-15 18:11:13 +00:00
Joseph Myers
5d5cb5a2e5 Update MIPS bits/socket.h for mmsghdr and recvmmsg. 2009-12-09 16:51:18 +00:00
Matt Turner
36a3800af8 Use struct timespec for timestamps in struct stat for Alpha also if __USE_XOPEN2K8.
Signed-off-by: Matt Turner <mattst88@gmail.com>
2009-12-06 18:26:07 +00:00
Matt Turner
015a3d0485 Fix sync_file_range parameter names
Signed-off-by: Matt Turner <mattst88@gmail.com>
2009-12-06 18:24:00 +00:00
Matt Turner
4dc21b9db1 Add new MADV_* values
Signed-off-by: Matt Turner <mattst88@gmail.com>
2009-12-06 18:22:30 +00:00
Joseph Myers
2d68f6afef Fix MIPS64 posix_fadvise and posix_fadvise64.
Similar to the problems I fixed for posix_fallocate
<http://sourceware.org/ml/libc-ports/2008-12/msg00007.html> and
fallocate <http://sourceware.org/ml/libc-ports/2009-05/msg00031.html>,
MIPS64 posix_advise also needs fixes to use the correct syscall
interfaces.  Although the existing n32 posix_fadvise64 is OK, getting
posix_fadvise from syscalls.list does not work correctly, as this
function is supposed to return an error code instead of storing it in
errno as the generic syscall implementations from syscalls.list do.
2009-12-01 01:27:19 +00:00
Joseph Myers
84f926688b Update MIPS dl-lookup.c from generic version. 2009-12-01 00:07:32 +00:00
Carlos O'Donell
b80ec53691 Add correct aligment to pthread_*_t structures.
In the switch to NPTL the pthrad_mutex_t, pthread_cond_t,
and pthread_rwlock_t structures were made binary compatible
with the Linuxthread versions. However, their aligment when
embedded in other structures was changed. When rebuilding
libstdc++ this was detected, and the following changes return
the structures to their original Linuxthreads alignments.

2009-11-25  Carlos O'Donell  <carlos@codesourcery.com>

	* sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h:
	Use correct alignment for pthread_mutex_t, pthread_cond_t,
	and pthread_rwlock_t.
2009-11-25 18:18:56 -05:00
Carlos O'Donell
8fe357d5c6 Avoid warnings when including atomic.h.
Cast oldval to the same type as ret to avoid warnings when
including atomic.h.

2009-11-22  Carlos O'Donell  <carlos@codesourcery.com>

	* sysdeps/unix/sysv/linux/hppa/bits/atomic.h: Avoid warnings
	by casting oldval to int.
2009-11-25 18:17:27 -05:00
Joseph Myers
b00ec94881 Use struct timespec for timestamps in struct stat for MIPS also if __USE_XOPEN2K8. 2009-11-23 19:06:52 +00:00
Andreas Schwab
127f9dc1f0 Use struct timespec for timestamps in struct stat also if __USE_XOPEN2K8 2009-11-23 16:34:39 +01:00
Joseph Myers
76d306ec98 Define F_OWNER_PGRP for M68K. 2009-11-19 22:34:08 +00:00
Joseph Myers
78698bbbf1 Define F_OWNER_PGRP for MIPS. 2009-11-19 16:46:57 +00:00
Joseph Myers
bc97817ff6 Define F_OWNER_PGRP for ARM. 2009-11-19 16:46:16 +00:00
Joseph Myers
3a2e1f4e6a Assume pselect6 and ppoll on ARM for kernels 2.6.32 and later. 2009-11-19 16:36:58 +00:00
Joseph Myers
6add932d90 Change misleading names of parameters of sync_file_range for M68K. 2009-11-18 17:30:48 +00:00
Joseph Myers
983ee7f269 Change misleading names of parameters of sync_file_range for MIPS. 2009-11-18 17:11:34 +00:00
Joseph Myers
0ecde27222 Change misleading names of parameters of sync_file_range for ARM. 2009-11-18 17:11:07 +00:00
Joseph Myers
862123a316 Add new MADV_* values for M68K. 2009-11-17 23:57:34 +00:00
Joseph Myers
24bcda036c Add new MADV_* values for MIPS. 2009-11-17 20:46:35 +00:00
Joseph Myers
35141d00d4 Add new MADV_* values for ARM. 2009-11-17 20:45:50 +00:00
Joseph Myers
87d2bea064 Define ERFKILL for MIPS. 2009-11-17 20:22:36 +00:00
Carlos O'Donell
b8b2e2b9d1 Move socket.h to bits/socket.h
Place socket.h in the correct location.

2009-11-15  Carlos O'Donell  <carlos@codesourcery.com>

	[BZ #6676]

	* sysdeps/unix/sysv/linux/hppa/socket.h: Move from here...
	* sysdeps/unix/sysv/linux/hppa/bits/socket.h: ... to here.
2009-11-15 15:53:20 -05:00
Carlos O'Donell
c832a3a9b7 Update bits/fcntl.h for hppa.
Define values for F_GETOWN_EX and F_SETOWN_EX.
Define fallocate64@@GLIBC_2.11 and provide declarations
in fcntl.h with appropriate aliases.

2009-11-15  Carlos O'Donell  <carlos@codesourcery.com>

	* sysdeps/unix/sysv/linux/hppa/Versions (libc): Add
	fallocate64@@GLIBC_2.11.
	* sysdeps/unix/sysv/linux/hppa/bits/fcntl.h
	[__USE_GNU]: Define F_GETOWN_EX, and F_SETOWN_EX.
	[!__USE_FILE_OFFSET64]: Define fallocate.
	[__USE_FILE_OFFSET64 && __REDIRECT]: Define __REDIRECT.
	[__USE_FILE_OFFSET64 && !__REDIRECT]: Define fallocate as
	fallocate64.
	[__USE_LARGEFILE64]: define fallocate64.
2009-11-15 15:46:46 -05:00
Carlos O'Donell
057c783bca Implement ELF_MACHINE_LOAD_ADDRESS using PC relative loads.
The current ELF_MACHINE_LOAD_ADDRESS used by the generic
function pointer code was not safe for use before relocation.
The macro has been rewritten to use only PC relative loads.

2009-11-15  Carlos O'Donell  <carlos@codesourcery.com>

	* sysdeps/hppa/dl-fptr.h: Update copyright year.
	Reduce ELF_MACHINE_BOOT_FPTR_TABLE_LEN to 64.
	Implement ELF_MACHINE_LOAD_ADDRESS using PC relative loads.
2009-11-15 15:11:48 -05:00
Carlos O'Donell
a2ed3d2a8e Remove constants which are now defined in generic file.
Several constants are now defined in a generic file and no longer
need to be defined in the hppa specific file.

2009-11-15  Carlos O'Donell  <carlos@codesourcery.com>

	* sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.h:
	Remove FUTEX_WAITERS, FUTEX_OWNER_DIED, and FUTEX_TID_MASK.
2009-11-15 14:36:46 -05:00
Carlos O'Donell
926d329540 Fix socket constants.
[BZ #10527] Provide corrected socket constants that match the
kernel values.

2009-11-15  Carlos O'Donell  <carlos@codesourcery.com>
	    Aurelian Jarno  <aurelien@aurel32.net>

	[BZ #10527]

	* sysdeps/unix/sysv/linux/hppa/socket.h: New file.
2009-11-15 14:33:51 -05:00
Carlos O'Donell
d086703d6c Enable the use of -fPIE on hppa
[BZ #6676] Use PIC relocations in start.S to support the use of -fPIE
on hppa.

2009-11-15  Carlos O'Donell  <carlos@codesourcery.com>

	[BZ #6676]

	* sysdeps/hppa/elf/start.S: Use R_PARISC_DLTIND* relocations
	to support -fPIE.
2009-11-15 14:30:29 -05:00
Carlos O'Donell
8ef75725ce Use LIBGCC_S_SO to override generic version.
[BZ #10920] Use the new generic override to specify the hppa
specific libgcc_s.so.4 version number. Remove the files which
hppa no longer has to duplicate in order to accomplish
overriding libgcc_s.so version number.

2009-11-08  Carlos O'Donell  <carlos@codesourcery.com>

	[BZ #10920]

	* sysdeps/hppa/libgcc_s.h: New file.
	* sysdeps/unix/sysv/linux/hppa/nptl/unwind-forcedunwind.c: Remove.
	* sysdeps/unix/sysv/linux/hppa/nptl/unwind-resume.c: Remove.
2009-11-15 14:19:25 -05:00
Andreas Schwab
a8e59aa896 Add libgcc_s.h for m68k 2009-11-15 00:28:00 +01:00
Andreas Schwab
722367f5d9 Define F_[GS]ETOWN_EX, F_OWNER_[TPG]ID, f_owner_ex for m68k 2009-11-15 00:27:02 +01:00
Joseph Myers
37a907cc86 Fix F_SETOWN_EX and F_GETOWN_EX definitions for MIPS. 2009-11-14 22:40:19 +00:00
Joseph Myers
06bda6deb5 Fix F_SETOWN_EX and F_GETOWN_EX definitions for ARM. 2009-11-14 22:39:23 +00:00
Matt Turner
52c693bd74 Fix alpha __fxstatat for empty file names.
[BZ #10609]
	* sysdeps/unix/sysv/linux/alpha/fxstatat.c (__fxstatat): Fix handling
	of empty parameters for file names.
2009-11-10 21:12:55 +00:00
Joseph Myers
1789cafb57 Fix M68K fallocate for -D_FILE_OFFSET_BITS=64.
* sysdeps/unix/sysv/linux/m68k/bits/fcntl.h (fallocate): Fix types
	of last two arguments when -D_FILE_OFFSET_BITS=64.
2009-11-07 13:30:54 +00:00
Joseph Myers
86ad0d12e1 Fix MIPS fallocate for -D_FILE_OFFSET_BITS=64.
* sysdeps/unix/sysv/linux/mips/bits/fcntl.h (fallocate): Fix types
	of last two arguments when -D_FILE_OFFSET_BITS=64.
2009-11-06 23:45:30 +00:00
Joseph Myers
b055d3f1f7 Fix ARM fallocate for -D_FILE_OFFSET_BITS=64.
* sysdeps/unix/sysv/linux/arm/bits/fcntl.h (fallocate): Fix types
	of last two arguments when -D_FILE_OFFSET_BITS=64.
2009-11-06 23:44:33 +00:00
Philip Blundell
b2b2415fe0 Fix ARMv4T interworking.
* sysdeps/unix/sysv/linux/arm/clone.S: Support V4T interworking.
        * sysdeps/unix/sysv/linux/arm/sysdep.h (__local_syscall_error): Likewise.
        * sysdeps/arm/memcpy.S: Likewise.
        * sysdeps/arm/memmove.S: Likewise.
2009-11-06 08:07:18 +00:00
Joseph Myers
cb182378d7 Fix m68k fchownat for empty file names.
[BZ #10609]
	* sysdeps/unix/sysv/linux/m68k/fchownat.c (fchownat): Fix handling
	of empty parameters for file names.
2009-10-30 20:52:15 +00:00
Joseph Myers
a896552ef1 Define F_OWNER_* and f_owner_ex for MIPS.
* sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Define F_OWNER_* and
	f_owner_ex.
2009-10-29 16:51:55 +00:00
Joseph Myers
0366e55931 Define F_OWNER_* and f_owner_ex for ARM.
* sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Define F_OWNER_* and
	f_owner_ex.
2009-10-29 16:51:04 +00:00
Daniel Gutson
274895575e Add ARM EABI build attributes.
Ensure that all objects in ARM EABI glibc have the proper EABI build
attributes to indicate that 8-byte stack alignment is required and
preserved.  (GNU ld does not currently give errors for mixing code
requiring 8-byte alignment - such as anything built with GCC - and
code not marked as preserving it, because of the prevalence of
assembly code without proper markers to indicate that alignment is
preserved.  The ARM RealView linker does give such errors.)

The bulk of the markers are accomplished by the change to sysdep.h,
but a few .S files do not include sysdep.h.  In the case of
internal_accept4.S, no code is generated because EABI does not have
socketcall, but for completeness a dummy file with the right
attributes is used to override the default version in libc.

	* sysdeps/arm/sysdep.h: (Tag_ABI_align8_preserved,
	Tag_ABI_align8_needed): Attributes added.
	* sysdeps/arm/elf/start.S: Likewise.
	* sysdeps/arm/eabi/abi-note.S: New file.
	* sysdeps/unix/sysv/linux/arm/eabi/internal_accept4.S: New
	file.
2009-10-22 19:39:47 +00:00
Andrew Stubbs
fbc4c20a80 Fix register conflicts and avoid deprecated instructions in ARM EABI setjmp/longjmp.
* setjmp and longjmp were using the obsolete fstmiax and fldmiax
  instructions.

* Because of a confusion with two different sets of names for the same
  registers (r0...r3 and a1...a4), if VFP was present then the
  subsequent check for iWMMXt support would use a register that had
  been clobbered by saving/restoring the VFP registers.  (The bit
  being checked was clobbered by a reserved bit of FPSCR that it
  always 0 on present hardware, and no present hardware has both VFP
  and iWMMXt, so this did not cause visible problems.)

2009-10-22  Andrew Stubbs  <ams@codesourcery.com>
            Julian Brown  <julian@codesourcery.com>

	* sysdeps/arm/eabi/setjmp.S (__sigsetjmp): Replace deprecated
	instruction fstmiax with vstmia.
	Correct register conflict and comment.
	* sysdeps/arm/eabi/__longjmp.S (__longjmp): Use vldmia not fldmiax.
	Don't clobber r1/a2 register before testing IWMMXT hwcap.
2009-10-22 19:35:53 +00:00
Julian Brown
b5c2620bee Fix locating GOT for Thumb-2 PIE binaries.
* sysdeps/arm/elf/start.S (_start): Avoid dependency on PC pipeline
	offset.
2009-10-22 19:22:35 +00:00
Joseph Myers
afd09ae82a Define F_SETOWN_EX and F_GETOWN_EX for MIPS.
* sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Define F_SETOWN_EX
	and F_GETOWN_EX.
2009-10-03 17:39:53 +00:00
Joseph Myers
4ba089f88e Define F_SETOWN_EX and F_GETOWN_EX for ARM.
* sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Define F_SETOWN_EX and
	F_GETOWN_EX.
2009-10-03 17:39:05 +00:00
Daniel Jacobowitz
f1297d79b2 Prevent GCC reusing "hi" and "lo" across system calls.
* sysdeps/unix/sysv/linux/mips/mips32/sysdep.h
	(__SYSCALL_CLOBBERS): Add "hi" and "lo".
	* sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h
	(__SYSCALL_CLOBBERS): Likewise.
	* sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h
	(__SYSCALL_CLOBBERS): Likewise.
2009-09-25 18:19:03 -04:00
Carlos O'Donell
be0f2008ac Implement new NPTL POSIX Threads ABI for HPPA.
This version of the NPTL POSIX thread ABI for hppa does
not break backwards compatibility with the the old
Linuxthreads ABI, and is therefore suitable for release
by distributions.

	sysdeps/unix/sysv/linux/hppa/
	* internaltypes.h: New file.

	sysdeps/unix/sysv/linux/hppa/nptl/
	* pthreadP.h: New file.
	* pthread.h: New file.
	* pthread_cond_broadcast.c: New file.
	* pthread_cond_destroy.c: New file.
	* pthread_cond_init.c: New file.
	* pthread_cond_signal.c: New file.
	* pthread_cond_timedwait.c: New file.
	* pthread_cond_wait.c: New file.
	* bits/pthreadtypes.h: Make pthread_mutex_t,
	pthread_rwlock_t, and pthread_cond_t backwards
	compatible.
2009-09-08 14:32:53 -04:00
Andreas Schwab
f0e6944906 Add ____longjmp_chk for m68k-linux 2009-09-06 21:24:50 +02:00
Joseph Myers
53df8bcec0 Add alternate signal stack support to ARM ____longjmp_chk.
* sysdeps/arm/____longjmp_chk.S: Remove.  Replaced by....
	* sysdeps/unix/sysv/linux/arm/____longjmp_chk.S,
	sysdeps/unix/sysv/linux/arm/eabi/____longjmp_chk.S: This.  New
	files.
	* sysdeps/arm/__longjmp.S, sysdeps/arm/eabi/__longjmp.S: Use r4
	for saved sp.
2009-08-06 16:53:09 +00:00
Joseph Myers
c67273d5b2 Signal stack support for MIPS ____longjmp_chk.
* sysdeps/mips/____longjmp_chk.c: Remove.  Replaced by....
	* sysdeps/unix/sysv/linux/mips/____longjmp_chk.c: This.  New file.
	* sysdeps/mips/__longjmp.c (__longjmp): Use explicit register
	variable for env.  Use expansion of CHECK_SP macro for check.
	* sysdeps/mips/mips64/__longjmp.c (__Longjmp): Likewise.
2009-08-05 21:02:50 +00:00
Joseph Myers
9d84a81fe9 Make accept4 for MIPS o32 avoid socketcall.
sysdeps/unix/sysv/linux/internal_accept4.S expects socket.S to be
present if __NR_socketcall is defined (which it is on MIPS o32, even
though there are separate syscalls as well) and __NR_accept4 isn't.
MIPS does not have socket.S, since it uses separate syscalls, but
though the accept4 syscall should be added soon present kernel headers
do not have it.  This patch creates a dummy internal_accept4.S for
MIPS o32, and an accept4.c wrapper that undefines __NR_socketcall so
that the main accept4.c falls back to the ENOSYS implementation if
__NR_accept4 isn't defined; it doesn't seem worthwhile to have a
special socketcall-based assembly implementation just for o32 on a few
kernels in the range between accept4 being available via socketcall
and the accept4 syscall being available.
2009-08-03 16:48:38 +00:00
Aurelien Jarno
197aec2596 Define __ASSUME_EVENTFD2 and __ASSUME_SIGNALFD4 for MIPS.
* sysdeps/unix/sysv/linux/mips/kernel-features.h: Define
	__ASSUME_EVENTFD2 and __ASSUME_SIGNALFD4.
2009-07-29 15:27:35 +00:00
Aurelien Jarno
0a6ab2a600 Define __ASSUME_EVENTFD2 and __ASSUME_SIGNALFD4 for ARM.
* sysdeps/unix/sysv/linux/arm/kernel-features.h: Define
	__ASSUME_EVENTFD2 and __ASSUME_SIGNALFD4.
2009-07-29 15:26:39 +00:00
Aurelien Jarno
6b4e363a79 asm/elf.h don't exist anymore since linux kernel 2.6.25
* sysdeps/unix/sysv/linux/alpha/sys/procfs.h (ELF_NGREG,
	ELF_NFPREG, elf_greg_t, elf_gregset_t, elf_fpreg_t,
	elf_fpregset_t): Define. Don't include asm/elf.h.
2009-07-19 16:01:07 +02:00
Aurelien Jarno
97d1e7c8e1 Update include paths following the move of alpha to ports
* sysdeps/unix/sysv/linux/alpha/getdents64.c: Adjust include path.
	* sysdeps/unix/sysv/linux/alpha/nptl/fork.c: Likewise.
	* sysdeps/unix/sysv/linux/alpha/nptl/sem_post.c: Likewise.
	* sysdeps/unix/sysv/linux/alpha/nptl/timer_create.c: Likewise.
	* sysdeps/unix/sysv/linux/alpha/nptl/timer_delete.c: Likewise.
	* sysdeps/unix/sysv/linux/alpha/nptl/timer_getoverr.c: Likewise.
	* sysdeps/unix/sysv/linux/alpha/nptl/timer_gettime.c: Likewise.
	* sysdeps/unix/sysv/linux/alpha/nptl/timer_settime.c: Likewise.
	* sysdeps/unix/sysv/linux/alpha/sysconf.c: Likewise.
2009-07-19 16:00:06 +02:00
Aurelien Jarno
8cb716ea2c * sysdeps/unix/sysv/linux/alpha/nptl/lowlevellock.h: Define
FUTEX_WAIT_BITSET, FUTEX_WAKE_BITSET, FUTEX_CLOCK_REALTIME and
	FUTEX_BITSET_MATCH_ANY.
2009-07-19 15:59:58 +02:00
Aurelien Jarno
c1592c256a Adapt alpha version of getsysstats.c to the changes in the main Linux version
* sysdeps/unix/sysv/linux/alpha/getsysstats.c (GET_NPROCS_PARSER):
        Change parameters and use next_line.
2009-07-19 15:59:49 +02:00
Joseph Myers
cda50f828e Update MIPS dl-lookup.c for changes to generic version.
* sysdeps/mips/do-lookup.h: Remove.
	* sysdeps/mips/dl-lookup.c: Update from generic version, with
	non-PIC handling integrated.
2009-07-17 20:39:04 +00:00
Paul Brook
f40617927c Avoid invalid unwind directives when building crti.o and crtn.o for ARM EABI.
* sysdeps/arm/eabi/Makefile (CFLAGS-initfini.s): Add
	-fno-asynchronous-unwind-tables -fno-unwind-tables.
	(CFLAGS-pt-initfini.s): Ditto.
2009-06-30 20:10:14 +00:00