Commit Graph

89 Commits

Author SHA1 Message Date
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
Joseph Myers
8200e168ef Define PF_IEEE802154 and AF_IEEE802154 for MIPS.
* sysdeps/unix/sysv/linux/mips/bits/socket.h: Define PF_IEEE802154
	and AF_IEEE802154.
2009-06-18 22:04:19 +00:00
Joseph Myers
6a9f82ac93 ____longjmp_chk for MIPS.
* sysdeps/mips/____longjmp_chk.c: New file.
	* sysdeps/mips/__longjmp.c: If CHECK_SP is defined, use it.  Don't
	undefine __longjmp.
	* sysdeps/mips64/__longjmp.c: Likewise.
2009-05-16 22:24:56 +00:00
Joseph Myers
d9056ac655 fallocate fixes for MIPS n32 and n64.
* sysdeps/unix/sysv/linux/mips/mips64/n32/fallocate.c,
	sysdeps/unix/sysv/linux/mips/mips64/n32/fallocate64.c,
	sysdeps/unix/sysv/linux/mips/mips64/n64/fallocate.c,
	sysdeps/unix/sysv/linux/mips/mips64/n64/fallocate64.c: New.
2009-05-16 17:42:10 +00:00
Joseph Myers
c504ff3be9 Add fallocate64 export for MIPS.
* sysdeps/unix/sysv/linux/mips/Versions (libc): Add
	fallocate64@@GLIBC_2.11.
2009-05-16 14:30:47 +00:00
Joseph Myers
19afa98284 Fix MIPS n64 build failure with preadv64/pwritev64 aliases.
* sysdeps/unix/sysv/linux/mips/mips64/n64/preadv64.c,
	sysdeps/unix/sysv/linux/mips/mips64/n64/pwritev64.c: New files.
2009-05-14 22:24:35 +00:00
Joseph Myers
ff3475331e 2009-04-18 Maciej W. Rozycki <macro@codesourcery.com>
* sysdeps/unix/sysv/linux/mips/getcontext.S: New file.
	* sysdeps/unix/sysv/linux/mips/makecontext.S: New file.
	* sysdeps/unix/sysv/linux/mips/setcontext.S: New file.
	* sysdeps/unix/sysv/linux/mips/swapcontext.S: New file.
	* sysdeps/unix/sysv/linux/mips/sys/ucontext.h (mcontext_t):
	Update comment.
	* sysdeps/unix/sysv/linux/mips/kernel_rt_sigframe.h: New file.
	* sysdeps/unix/sysv/linux/mips/ucontext_i.sym: New file.
	* sysdeps/unix/sysv/linux/mips/Makefile (gen-as-const-headers):
	Add ucontext_i.sym.
2009-04-18 17:32:04 +00:00
Joseph Myers
57d0274fe9 * sysdeps/unix/sysv/linux/mips/kernel-features.h (__ASSUME_PREADV,
__ASSUME_PWRITEV): Don't define here.
2009-04-18 14:08:18 +00:00
Joseph Myers
6db53cd548 2009-04-15 Maciej W. Rozycki <macro@codesourcery.com>
* sysdeps/mips/sys/fpregdef.h: Update for new ABIs.
2009-04-15 20:22:41 +00:00
Joseph Myers
70fdbfd956 * sysdeps/unix/sysv/linux/mips/bits/socket.h: Add missing protocol
numbers.
	* sysdeps/unix/sysv/linux/mips/sys/eventfd.h (EFD_SEMAPHORE):
	Define.
	* sysdeps/unix/sysv/linux/mips/kernel-features.h: Add entries for
	preadv and pwritev.
2009-04-09 22:14:47 +00:00
Joseph Myers
d69fd0cbd2 2009-03-18 Maciej W. Rozycki <macro@codesourcery.com>
* sysdeps/unix/sysv/linux/mips/readelflib.c (process_elf_file):
	Use the Elf32_Ehdr type to check for EF_MIPS_ABI2 in the flags.
2009-03-18 14:38:51 +00:00
Joseph Myers
0262d0c47c 2009-03-18 Zhang Le <r0bertz@gentoo.org>
[BZ #7074]
	* sysdeps/unix/sysv/linux/mips/readelflib.c (process_elf_file):
	Fix the condition used to annotate n32 objects.
2009-03-18 14:31:30 +00:00
Joseph Myers
4c8c18106e * sysdeps/unix/sysv/linux/mips/getsysstats.c (GET_NPROCS_PARSER):
Change parameters and use next_line.
2009-03-17 15:52:15 +00:00
Joseph Myers
340f797628 * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: Include errno.h.
* sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
2009-03-17 15:49:10 +00:00
Joseph Myers
ad32d65a9f * sysdeps/mips/bits/link.h: Uglify function parameter names.
* sysdeps/unix/sysv/linux/mips/sys/cachectl.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/sys/eventfd.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/sys/sysmips.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
2009-03-15 16:54:26 +00:00
Joseph Myers
93311332ba * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Declare
fallocate{,64}.
2009-03-03 23:19:19 +00:00
Joseph Myers
2e3804efbf * sysdeps/unix/sysv/linux/mips/bits/stat.h: Protect UTIME_NOW and
UTIME_OMIT only with __USE_ATFILE.
2009-02-26 23:25:24 +00:00
Joseph Myers
1090d6bf10 [BZ #7040]
* sysdeps/unix/sysv/linux/mips/sys/inotify.h: Second parameter of
	inotify_rm_watch should have type int.
2009-02-13 17:38:50 +00:00
Joseph Myers
8085bd60e2 * sysdeps/unix/sysv/linux/mips/bits/shm.h (SHM_EXEC): Define. 2009-02-02 15:36:15 +00:00
Daniel Jacobowitz
9290e55376 PR glibc/1048
* sysdeps/unix/sysv/linux/mips/dl-static.c: New file to support
	variable page size for MIPS.
	* sysdeps/unix/sysv/linux/mips/ldsodefs.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/Makefile: Build dl-static in elf.
	* sysdeps/unix/sysv/linux/mips/Versions: Add _dl_var_init.
2009-01-27 15:32:55 +00:00
Joseph Myers
e27433a869 * sysdeps/unix/sysv/linux/mips/bits/resource.h (enum
__rusage_who): Avoid comma after RUSAGE_CHILDREN if not
	-D_GNU_SOURCE.
2009-01-12 16:45:43 +00:00
Joseph Myers
bb3b3056df * sysdeps/unix/sysv/linux/mips/nptl/lowlevellock.h: Define
FUTEX_CLOCK_REALTIME and FUTEX_BITSET_MATCH_ANY.
2009-01-12 16:38:17 +00:00
Joseph Myers
01aa93bd54 * sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fallocate64.c,
sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fallocate.c,
	sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fallocate64.c,
	sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fallocate.c: New.
2008-12-19 21:35:57 +00:00
Joseph Myers
64762db413 * sysdeps/unix/sysv/linux/mips/bits/socket.h (SCM_CREDENTIALS):
Make available only for __USE_GNU.
2008-12-09 23:53:33 +00:00
Joseph Myers
9a9863b435 * sysdeps/unix/sysv/linux/mips/nptl/lowlevellock.h: Define
FUTEX_WAIT_BITSET and FUTEX_WAKE_BITSET.
2008-12-03 23:37:48 +00:00
Joseph Myers
10d461b558 * sysdeps/unix/sysv/linux/mips/sys/signalfd.h (signalfd): Fix
__THROW vs. __nonnull order for C++.
2008-11-25 16:45:39 +00:00
Daniel Jacobowitz
f6e40d3894 * sysdeps/mips/dl-dtprocnum.h (DT_MIPS_NUM): Do not redefine.
* sysdeps/mips/dl-machine.h (STO_MIPS_PLT, R_MIPS_COPY,
	R_MIPS_JUMP_SLOT, DT_MIPS_PLTGOT): Do not redefine.
2008-10-15 19:37:36 +00:00
Daniel Jacobowitz
63fb881a04 2008-10-01 Mark Shinwell <shinwell@codesourcery.com>
Daniel Jacobowitz  <dan@codesourcery.com>
	    Richard Sandiford  <rdsandiford@googlemail.com>

	* sysdeps/mips/dl-dtprocnum.h (DT_MIPS_NUM): Redefine.
	* sysdeps/mips/dl-lookup.c: New.
	* sysdeps/mips/do-lookup.h: New.
	* sysdeps/mips/dl-machine.h (ELF_MACHINE_NO_PLT): Remove
	definition.
	(STO_MIPS_PLT, R_MIPS_COPY, R_MIPS_JUMP_SLOT, DT_MIPS_PLTGOT): Define
	if needed.
	(ELF_MACHINE_JMP_SLOT): Alter definition and update comment.
	(elf_machine_type_class): Likewise.
	(ELF_MACHINE_PLT_REL): Define.
	(elf_machine_fixup_plt): New.
	(elf_machine_plt_value): New.
	(elf_machine_reloc): Handle jump slot and copy relocations.
	(elf_machine_lazy_rel): Point relocation place at PLT if
	required.
	(RESOLVE_GOTSYM): Take a relocation type argument.
	(elf_machine_got_rel): Bind lazy stubs directly to their target if
	!lazy.  Skip lazy binding for PLT symbols.
	(elf_machine_runtime_setup): Fill in .got.plt header.
	* sysdeps/mips/dl-trampoline.c (IFNEWABI): New macro.
	(ELF_DL_PLT_FRAME_SIZE, ELF_DL_PLT_SAVE_ARG_REGS,
	ELF_DL_PLT_RESTORE_ARG_REGS): Define.
	(_dl_runtime_pltresolve): New.
	* sysdeps/mips/bits/linkmap.h: New file.
	* sysdeps/mips/tls-macros.h: Load $gp as required.  Merge 32-bit and
	64-bit versions.

	* sysdeps/unix/sysv/linux/mips/mips32/sysdep.h (SYSCALL_ERROR_LABEL):
	Delete definition.
	* sysdeps/unix/sysv/linux/mips/nptl/sysdep-cancel.h (PSEUDO_CPLOAD,
	PSEUDO_ERRJMP, PSEUDO_SAVEGP, PSEUDO_LOADGP): Define.
	(PSEUDO): Use them.  Move outside __PIC__.
	(PSEUDO_JMP): New.
	(CENABLE, CDISABLE): Use it.
2008-10-01 13:28:14 +00:00
Joseph Myers
a961a11ea2 * sysdeps/unix/sysv/linux/mips/sys/epoll.h: Change epoll_create2
to epoll_create1.
2008-08-19 16:53:11 +00:00
Joseph Myers
72e2fdef91 * sysdeps/unix/sysv/linux/mips/bits/socket.h: Define SOCK_CLOEXEC,
SOCK_NONBLOCK, PF_ISDN and AF_ISDN.
	* sysdeps/unix/sysv/linux/mips/sys/epoll.h: New file.
	* sysdeps/unix/sysv/linux/mips/sys/eventfd.h: New file.
	* sysdeps/unix/sysv/linux/mips/sys/inotify.h: New file.
	* sysdeps/unix/sysv/linux/mips/sys/signalfd.h: New file.
	* sysdeps/unix/sysv/linux/mips/sys/timerfd.h: New file.
2008-08-19 16:12:35 +00:00
Joseph Myers
606c1b1771 * sysdeps/mips/fpu_control.h (_FPU_GETCW, _FPU_SETCW): Make asms
volatile.
2008-08-19 15:54:50 +00:00
Daniel Jacobowitz
e2570f301f * sysdeps/mips/bits/setjmp.h (__jmp_buf): Give name to structure
type.
2008-07-18 13:24:21 +00:00
Daniel Jacobowitz
83d53ff1aa 2008-05-21 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/mips/bits/socket.h: Cleanup namespace.
	(SOCK_DCCP): Define.
2008-05-21 17:50:58 +00:00
Daniel Jacobowitz
098cab74db 2008-05-01 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/mips/bits/resource.h: Define
	RUSAGE_THREAD and RUSAGE_LWP.
2008-05-01 12:34:13 +00:00
Daniel Jacobowitz
89e412f535 * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Fix comment describing
shmid_ds.

	* sysdeps/unix/sysv/linux/mips/bits/shm.h: Fix comment describing
	shmid_ds.
2008-04-21 15:45:00 +00:00
Daniel Jacobowitz
93ae511928 2008-04-21 Khem Raj <kraj@mvista.com>
* sysdeps/unix/sysv/linux/mips/xmknod.c: Delete file.
2008-04-21 15:41:06 +00:00
Daniel Jacobowitz
7221ac034c 2008-04-02 Aurelien Jarno <aurelien@aurel32.net>
* sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list: Add
	truncate and ftruncate systems calls.
	* sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: Make an
	empty file.
	* sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: Ditto.
2008-04-02 12:58:39 +00:00
Daniel Jacobowitz
560bab7691 * sysdeps/unix/sysv/linux/mips/nptl/bits/local_lim.h: Undefine
ARG_MAX if <linux/limits.h> has defined it.
2008-03-28 17:43:50 +00:00
Daniel Jacobowitz
625680f978 * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Added memory
barriers to enforce strict ordering on weakly ordered systems.
2008-03-28 17:41:20 +00:00
Daniel Jacobowitz
af7eda0ff6 * sysdeps/mips/fpu/fesetround.c (fesetround): Use fpu_control_t.
* sysdeps/mips/fpu/fgetexcptflg.c (fegetexceptflag): Likewise.
	* sysdeps/mips/fpu/fsetexcptflg.c (fesetexceptflag): Likewise.
2008-03-26 13:21:26 +00:00
Andreas Jaeger
2af06d0d3e [BZ #5753]
* sysdeps/mips/ieee754.h: Use protected namespace
	__BIG_ENDIAN/__LITTLE_ENDIAN.
	Patch by Aurelien Jarno <aurelien@aurel32.net>.
2008-03-10 06:20:30 +00:00
Daniel Jacobowitz
7812cbad41 * sysdeps/unix/sysv/linux/mips/bits/siginfo.h (struct siginfo):
Reorganize to match other architectures.  Replace _timer._timer1
	and _timer._timer2 with _timer.si_tid, _timer.si_overrun, and
	_timer.si_sigval.  Correct the type of _sigpoll.si_band.
	(si_timerid, si_overrun): Define.
	(__SIGEV_PAD_SIZE): Correct for __WORDSIZE == 64.
	(__pthread_attr_s): Remove declaration.
	(struct sigevent): Remove XXX.  Add _tid.
2008-03-04 19:39:30 +00:00
Daniel Jacobowitz
7e0bd9eb99 Define F_DUPFD_CLOEXEC. 2007-10-22 13:11:49 +00:00
Daniel Jacobowitz
017cc6330d * sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Correct return value
type and __THROW marker of splice, vmsplice, and tee.

	* sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Correct return value
	type and __THROW marker of splice, vmsplice, and tee.
2007-09-25 12:04:54 +00:00
Daniel Jacobowitz
8c2766740d * sysdeps/mips/nptl/tls.h (THREAD_GSCOPE_RESET_FLAG): Pass
LLL_PRIVATE argument to lll_futex_wake.
	* sysdeps/unix/sysv/linux/mips/bits/fcntl.h (O_CLOEXEC): Define.
	* sysdeps/unix/sysv/linux/mips/bits/socket.h (PF_UNIX): Update
	comment.
	(PF_IUCV, PF_RXRPC): Define.
	(PF_MAX): Update.
	(AF_IUCV, AF_RXRPC): Define.
	(MSG_CMSG_CLOEXEC): Define.
	(_EXTERN_INLINE): Define to __extern_inline.
	* sysdeps/unix/sysv/linux/mips/bits/stat.h (UTIME_NOW,
	UTIME_OMIT): Define.
	* sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: Include <tls.h>.
	* sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/nptl/lowlevellock.h: Renamed all
	lll_mutex_* resp. lll_robust_mutex_* macros to lll_*
	resp. lll_robust_*.  Renamed all LLL_MUTEX_LOCK_* macros to
	LLL_LOCK_*.  Include <kernel-features.h>.
	(LLL_LOCK_INITIALIZER): Remove duplicate definition.
	(LLL_PRIVATE, LLL_SHARED, __lll_private_flag): Define.
	* sysdeps/unix/sysv/linux/mips/nptl/pthread_once.c
	(clear_once_control, __pthread_once): Pass LLL_PRIVATE argument to
	lll_futex_wait.
	(lll_futex_wait, lll_futex_timed_wait, lll_futex_wake,
	lll_robust_dead, lll_futex_requeue, lll_futex_wake_unlock): Take
	private arguments.
	(__lll_robust_trylock): Convert to macro.
	(__lll_robust_lock_wait): Add private argument.
	(__lll_lock_wait_private, __lll_lock_wait): Declare.
	(__lll_lock): Convert to macro.  Take private argument.
	(__lll_cond_lock): Likewise.
	(lll_lock, lll_cond_lock): Take private arguments.
	(__lll_robust_lock): Take private argument.  Convert to macro.
	(lll_robust_lock, __lll_cond_lock, lll_cond_lock,
	lll_robust_cond_lock): Take private arguments.
	(__lll_timedlock_wait, __lll_robust_timedlock_wait): Take private
	arguments.
	(__lll_timedlock, __lll_robust_timedlock): Take private arguments.
	(lll_timedlock, lll_robust_timedlock): Take private arguments.
	(__lll_unlock, __lll_robust_unlock): Convert to macros.  Take
	private arguments.
	(lll_unlock, lll_robust_unlock): Take private arguments.
	(__lll_mutex_unlock_force, lll_mutex_unlock_force, lll_lock_t,
	lll_trylock, lll_lock, lll_unlock, lll_islocked): Remove.
	(lll_wait_tid): Pass LLL_SHARED to lll_futex_wait.
	(__lll_cond_wait, __lll_cond_timedwait, __lll_cond_wake,
	__lll_cond_broadcast, lll_cond_wait, lll_cond_timedwait,
	lll_cond_wake, lll_cond_broadcast): Remove.
	* sysdeps/unix/sysv/linux/mips/sys/tas.h (_EXTERN_INLINE): Define
	to __extern_inline.
2007-09-12 12:57:41 +00:00
Daniel Jacobowitz
d45a636877 * sysdeps/unix/sysv/linux/mips/dl-cache.h (_DL_CACHE_DEFAULT_ID):
New macros for the (n)64 and n32 ABIs.
	(_dl_cache_check_flags): Define if _DL_CACHE_DEFAULT_ID has been.
2007-08-06 17:45:09 +00:00
Daniel Jacobowitz
391da2016b 2007-07-13 Carlos O'Donell <carlos@codesourcery.com>
* sysdeps/mips/bits/wordsize.h [_MIPS_SIM == _ABI64]:
	Define __WORDSIZE_COMPAT32 as 1.
2007-07-13 12:48:34 +00:00
Daniel Jacobowitz
2b4095f394 2007-07-13 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/mips/nptl/bits/local_lim.h: Copy from
	libc/nptl/sysdeps/unix/sysv/linux/bits/local_lim.h.  Increase
	PTHREAD_STACK_MIN.
2007-07-13 12:46:12 +00:00
Daniel Jacobowitz
8323b1abc6 * sysdeps/arm/nptl/tls.h (THREAD_GSCOPE_RESET_FLAG): Use
lll_private_futex_wake.
	* sysdeps/unix/sysv/linux/arm/check_pf.c: Update from generic version.
	* sysdeps/unix/sysv/linux/arm/eabi/nptl/unwind-forcedunwind.c
	(pthread_cancel_init): Add noinline and barriers.
	* sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.c
	(__lll_timedlock_wait): Update call to lll_futex_timed_wait.
	(__lll_timedwait_tid): Likewise.
	* sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h (LLL_PRIVATE,
	LLL_SHARED): Define.
	(lll_futex_wait): Use lll_futex_timed_wait.
	(lll_futex_timed_wait, lll_futex_wake, lll_futex_wake_unlock): Take a
	PRIVATE argument.
	(lll_private_futex_wait, lll_private_futex_timed_wait,
	lll_private_futex_wake): New.
	(lll_robust_mutex_dead,  __lll_mutex_lock, __lll_mutex_cond_lock,
	__lll_mutex_unlock, __lll_robust_mutex_unlock,
	__lll_mutex_unlock_force, lll_wait_tid): Update calls.
	* sysdeps/unix/sysv/linux/arm/nptl/pthread_once.c (clear_once_control,
	__pthread_once): Use private futexes.
	* sysdeps/unix/sysv/linux/arm/nptl/unwind-forcedunwind.c
	(pthread_cancel_init): Add noinline and barriers.

	* sysdeps/unix/sysv/aix/bits/fcntl.h,
	sysdeps/unix/sysv/linux/am33/bits/fcntl.h,
	sysdeps/unix/sysv/linux/arm/bits/fcntl.h,
	sysdeps/unix/sysv/linux/cris/bits/fcntl.h,
	sysdeps/unix/sysv/linux/m68k/bits/fcntl.h,
	sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Comment fix.

	* sysdeps/unix/sysv/linux/arm/nptl/bits/semaphore.h (SEM_VALUE_MAX):
	Delete.
	* sysdeps/unix/sysv/linux/mips/nptl/bits/semaphore.h (SEM_VALUE_MAX):
	Delete.
2007-07-10 13:35:30 +00:00
Daniel Jacobowitz
ffd3982334 * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h (ARGIFY): New.
(internal_syscall1, internal_syscall2, internal_syscall3,
	internal_syscall4, internal_syscall5, internal_syscall6): Use it.
2007-06-07 14:40:24 +00:00