Commit Graph

41 Commits

Author SHA1 Message Date
Joseph Myers
7b966fcb48 Use const instead of __const for MIPS. 2012-01-08 13:13:21 +00:00
Matt Turner
e349dfdb68 Workaround R10K ll/sc errata. 2011-08-02 15:18:06 +00:00
Mischa Jonker
1eb0725631 Fix bug 11291: add *mem as atomic operation output for MIPS. 2010-03-23 15:03: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
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
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
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
f50c692c20 * sysdeps/mips/bits/mathdef.h (float_t): Change to float. 2007-02-01 15:43:00 +00:00
Roland McGrath
400a25460a 2006-01-31 Roland McGrath <roland@redhat.com>
* sysdeps/alpha/fpu/bits/mathdef.h: Moved to ...
	* sysdeps/alpha/bits/mathdef.h: ... here.
	* sysdeps/i386/fpu/bits/mathdef.h: Moved to ...
	* sysdeps/i386/bits/mathdef.h: ... here.
	* sysdeps/mips/fpu/bits/mathdef.h: Moved to ...
	* sysdeps/mips/bits/mathdef.h: ... here.
	* sysdeps/m68k/fpu/bits/mathdef.h: Moved to ...
	* sysdeps/m68k/bits/mathdef.h: ... here.
	* sysdeps/powerpc/fpu/bits/mathdef.h: Moved to ...
	* sysdeps/powerpc/bits/mathdef.h: ... here.
	* sysdeps/sparc/fpu/bits/mathdef.h: Moved to ...
	* sysdeps/sparc/bits/mathdef.h: ... here.
	* sysdeps/ia64/fpu/bits/mathdef.h: Moved to ...
	* sysdeps/ia64/bits/mathdef.h: ... here.
	* sysdeps/sh/sh4/fpu/bits/mathdef.h: Moved to ...
	* sysdeps/sh/sh4/bits/mathdef.h: ... here.
	* sysdeps/x86_64/fpu/bits/mathdef.h: Moved to ...
	* sysdeps/x86_64/bits/mathdef.h: ... here.
2006-02-01 02:59:59 +00:00
Roland McGrath
ec3d8ea6c1 2006-01-10 Roland McGrath <roland@redhat.com>
* include/bits/setjmp.h: New file.
	* setjmp/jmpbuf-offsets.h: New file.
	* sysdeps/alpha/bits/setjmp.h: Move JB_* macros ...
	* sysdeps/alpha/jmpbuf-offsets.h: ... here, new file.
	* sysdeps/hppa/bits/setjmp.h (JB_SP): Macro moved ...
	* sysdeps/hppa/jmpbuf-offsets.h: ... here, new file.
	* sysdeps/i386/bits/setjmp.h: Move JB_* macros ...
	* sysdeps/i386/jmpbuf-offsets.h: ... here, new file.
	* sysdeps/mips/bits/setjmp.h (JB_PC): Macro removed.
	* sysdeps/powerpc/bits/setjmp.h: Move JB_* macros ...
	* sysdeps/powerpc/jmpbuf-offsets.h: ... here, new file.
	* sysdeps/s390/bits/setjmp.h: Remove __JB_* macros.
	* sysdeps/sh/bits/setjmp.h (JB_SIZE): Macro moved ...
	* sysdeps/sh/jmpbuf-offsets.h: ... here, new file.
	* sysdeps/sparc/sparc32/bits/setjmp.h: Move JB_* macros ...
	* sysdeps/sparc/sparc32/jmpbuf-offsets.h: ... here, new file.
	* sysdeps/unix/sysv/linux/sparc/bits/setjmp.h: Remove JB_* macros.
	* sysdeps/x86_64/bits/setjmp.h: Move JB_* macros ...
	* sysdeps/x86_64/jmpbuf-offsets.h: ... here, new file.
2006-01-10 10:18:16 +00:00
Roland McGrath
9a55fb17a5 2006-01-10 Roland McGrath <roland@redhat.com>
* sysdeps/powerpc/bits/setjmp.h (_JMPBUF_UNWINDS): Move macro ...
	* sysdeps/powerpc/jmpbuf-unwind.h: ... here.
	* sysdeps/alpha/bits/setjmp.h (_JMPBUF_UNWINDS): Move macro ...
	* sysdeps/alpha/jmpbuf-unwind.h: ... here.
	* sysdeps/sparc/sparc32/bits/setjmp.h (_JMPBUF_UNWINDS): Move macro ...
	* sysdeps/sparc/sparc32/jmpbuf-unwind.h: ... here.
	* sysdeps/i386/bits/setjmp.h (_JMPBUF_UNWINDS): Move macro ...
	* sysdeps/i386/jmpbuf-unwind.h: ... here.
	* sysdeps/x86_64/bits/setjmp.h (_JMPBUF_UNWINDS): Move macro ...
	* sysdeps/x86_64/jmpbuf-unwind.h: ... here.
	* sysdeps/sh/bits/setjmp.h (_JMPBUF_UNWINDS): Move macro ...
	* sysdeps/sh/jmpbuf-unwind.h: ... here.
	* sysdeps/hppa/bits/setjmp.h (_JMPBUF_UNWINDS): Move macro ...
	* sysdeps/hppa/jmpbuf-unwind.h: ... here, new file.
	* sysdeps/mips/bits/setjmp.h (_JMPBUF_UNWINDS): Move macro ...
	* sysdeps/mips/jmpbuf-unwind.h: ... here.
	* sysdeps/m68k/bits/setjmp.h (_JMPBUF_UNWINDS): Move macro ...
	* sysdeps/m68k/jmpbuf-unwind.h: ... here, new file.
	* sysdeps/s390/bits/setjmp.h (_JMPBUF_UNWINDS): Move macro ...
	* sysdeps/s390/jmpbuf-unwind.h: ... here.
	* sysdeps/unix/sysv/linux/ia64/bits/setjmp.h (_JMPBUF_UNWINDS):
	Move macro ...
	* sysdeps/ia64/jmpbuf-unwind.h: ... here.
	* sysdeps/unix/sysv/linux/sparc/bits/setjmp.h (_JMPBUF_UNWINDS):
	Move macro ...
	* sysdeps/sparc/sparc64/jmpbuf-unwind.h: ... here.
2006-01-10 08:49:29 +00:00
Roland McGrath
bdbd93b5ef 2005-12-27 Roland McGrath <roland@redhat.com>
* sysdeps/alpha/bits/setjmp.h (_JMPBUF_UNWINDS): Take third argument
	DEMANGLE, and pass SP value through it.
	* sysdeps/hppa/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
	* sysdeps/i386/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
	* sysdeps/m68k/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
	* sysdeps/mips/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
	* sysdeps/powerpc/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
	* sysdeps/s390/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
	* sysdeps/sh/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
	* sysdeps/sparc/sparc32/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
	* sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/setjmp.h: Likewise.
	* sysdeps/x86_64/bits/setjmp.h (_JMPBUF_UNWINDS): Likewise.
	* hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Pass inline
	demangler function to _JMPBUF_UNWINDS.
	* sysdeps/mach/hurd/jmp-unwind.c (demangle_ptr): New function.
	(_longjmp_unwind): Pass it to _JMPBUF_UNWINDS.
2005-12-28 05:41:36 +00:00
Roland McGrath
f6023225d0 2005-11-15 Mike Frysinger <vapier@gentoo.org>
* sysdeps/hppa/bits/setjmp.h: Add _BITS_SETJMP_H preprocessor
	protection and allow pthread.h to include bits/setjmp.h as well as
	setjmp.h.
	* sysdeps/m68k/bits/setjmp.h: Likewise.
	* sysdeps/s390/bits/setjmp.h: Make sure only setjmp.h or pthread.h
	are allow to include bits/setjmp.h.
	* sysdeps/mips/bits/setjmp.h (_JMPBUF_UNWINDS): Cast rhs to match lhs
	cast of address.
	* sysdeps/sh/bits/setjmp.h: Likewise.
2005-12-06 01:38:24 +00:00
Andreas Jaeger
e9eb4f5779 Protect against multiple inclusion. 2005-03-28 09:32:27 +00:00
Andreas Jaeger
0af5154802 New files for MIPS TLS support. 2005-03-28 09:14:59 +00:00
Andreas Jaeger
f5e233c54e MIPS specific <bits/link.h> 2005-03-28 07:43:51 +00:00
Roland McGrath
2863de95ab 2004-10-18 Maciej W. Rozycki <macro@mips.com>
* sysdeps/mips/bits/dlfcn.h (RTLD_DEEPBIND): New macro.
2004-12-15 01:00:51 +00:00
Andreas Jaeger
73a227e200 Use _ABIO32, _ABIN32 and _ABI64 for ABI selection throughout. 2004-11-24 04:37:35 +00:00
Andreas Jaeger
24c4c341e3 Use standard names for ABI macros, include sgidefs.h where appropriate. 2004-07-20 16:35:32 +00:00
Richard Henderson
154a5429ac * math/Makefile (headers): Add bits/huge_valf.h, bits/huge_vall.h,
and bits/inf.h.
        * math/math.h: Include them.

        * sysdeps/alpha/fpu/bits/mathdef.h, sysdeps/arm/fpu/bits/mathdef.h,
        sysdeps/generic/bits/mathdef.h, sysdeps/i386/fpu/bits/mathdef.h,
        sysdeps/ia64/fpu/bits/mathdef.h, sysdeps/m68k/fpu/bits/mathdef.h,
        sysdeps/mips/fpu/bits/mathdef.h, sysdeps/powerpc/fpu/bits/mathdef.h,
        sysdeps/sh/sh4/fpu/bits/mathdef.h, sysdeps/sparc/fpu/bits/mathdef.h,
        sysdeps/x86_64/fpu/bits/mathdef.h: Remove INFINITY.

        * sysdeps/arm/bits/huge_val.h (HUGE_VAL): Use __builtin_huge_val.
        (HUGE_VALF, HUGE_VALL): Remove.
        * sysdeps/ieee754/bits/huge_val.h: Likewise.
        * sysdeps/sh/bits/huge_val.h: Likewise.

        * sysdeps/generic/bits/huge_val.h (HUGE_VAL): Use __builtin_huge_val.
        * sysdeps/generic/bits/huge_valf.h: New file.
        * sysdeps/generic/bits/huge_vall.h: New file.
        * sysdeps/generic/bits/inf.h: New file.
        * sysdeps/ieee754/bits/huge_valf.h: New file.
        * sysdeps/ieee754/bits/inf.h: New file.
        * sysdeps/i386/bits/huge_val.h: Remove file.
        * sysdeps/i386/bits/huge_vall.h: New file.
        * sysdeps/ia64/bits/huge_val.h: Remove file.
        * sysdeps/ia64/bits/huge_vall.h: New file.
        * sysdeps/ieee754/ldbl-128/bits/huge_vall.h: New file.
        * sysdeps/m68k/bits/huge_val.h: Remove file.
        * sysdeps/m68k/bits/huge_vall.h: New file.
        * sysdeps/s390/bits/huge_val.h: Remove file.
        * sysdeps/sh/sh4/fpu/bits/huge_val.h: Remove file.
        * sysdeps/sparc/bits/huge_vall.h: New file.
        * sysdeps/sparc/sparc32/fpu/bits/huge_val.h: Remove file.
        * sysdeps/sparc/sparc64/fpu/bits/huge_val.h: Remove file.

        * sysdeps/ieee754/bits/nan.h (NAN): Use __builtin_nanf.
        * sysdeps/mips/bits/nan.h (NAN): Likewise.
2004-03-15 21:44:10 +00:00
Alexandre Oliva
ef055a744e * configure.in: Add mips64* support.
* configure: Rebuilt.
* sysdeps/mips/bits/endian.h: Make it bi-endian.
* sysdeps/mips/mipsel/bits/endian.h: Removed.
* sysdeps/mips/mips64/n32/el/bits/endian.h: Removed.
* sysdeps/mips/mips64/n64/el/bits/endian.h: Removed.
* sysdeps/mips/mips32/Makefile (CC): Add -mabi=32.
* sysdeps/mips/mips64/n32/Makefile (CC): Add -mabi=n32.
* sysdeps/mips/mips64/n64/Makefile (CC): Add -mabi=64.
* sysdeps/mips/Implies: Moved wordsize-32 to...
* sysdeps/mips/mips32/Implies: New file.
* sysdeps/unix/mips/sysdep.h (PSEUDO_NOERRNO, PSEUDO_END_NOERRNO,
ret_NOERRNO): New.
(ret, PSEUDO_END): Moved past END.
(PSEUDO): Moved to...
* sysdeps/unix/mips/mips32/sysdep.h: New file.
* sysdeps/unix/mips/mips64/n32/sysdep.h: Removed #undef PSEUDO.
* sysdeps/unix/mips/mips64/n64/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/mips/sysdep.h: Move to...
* sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: New file.
* sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: New file.
2003-03-29 08:15:29 +00:00
Alexandre Oliva
a5b668cc8a * sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
* sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
* sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
2003-03-20 22:29:44 +00:00
Alexandre Oliva
19ca28fb3f * sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
including pc, gp, sp and fp, as long long.
* sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
* sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
Add gp argument, and set gp in the jmpbuf to it.
* sysdeps/mips/setjmp_aux.c: Revert to o32-only.
2003-03-20 10:27:55 +00:00
Alexandre Oliva
ca2b264c24 * sysdeps/mips/bits/wordsize.h: New file, appropriate for all
3 ABIs.
* sysdeps/mips/mips64/gmp-mparam.h: New file.  Define
BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs.
* sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros.
(__sigsetjmp_aux): Use them.  Adjust for all 3 ABIs.
* sysdeps/mips/elf/start.S: Adjust for all 3 ABIs.
* sysdeps/unix/mips/brk.S: Likewise.
* sysdeps/unix/mips/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
* sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise.
* sysdeps/mips/sys/ucontext.h: Likewise.
* sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise.
* sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
* sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
* sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
* sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
* sysdeps/mips/mips64/setjmp.S: Likewise.
* sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete.
* sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for
64-bit types.
2003-03-17 15:47:13 +00:00
Roland McGrath
c71e9ba7e7 2002-10-23 Roland McGrath <roland@redhat.com>
* sysvipc/Makefile (headers): Add bits/ipctypes.h here.
	* sysdeps/generic/bits/ipctypes.h: New file.
	* sysdeps/mips/bits/ipctypes.h: New file.
	* sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
	* sysdeps/gnu/bits/msq.h: Likewise.
	* sysvipc/sys/ipc.h: Likewise.
2002-10-23 23:49:01 +00:00
Andreas Jaeger
5a484daec0 Copy from generic file with changes for NaNs on MIPS. 2002-03-22 10:10:19 +00:00
Ulrich Drepper
80ad17cac2 (DL_CALL_FCT): Cast to void *.
Use __BEGIN_DECLS/__END_DECLS around prototypes.
2001-10-27 00:03:32 +00:00
Andreas Jaeger
3214b89b32 Update to LGPL v2.1. 2001-07-06 04:56:23 +00:00
Andreas Jaeger
8ebc36ad77 (FE_NOMASK_ENV): Define. 2000-09-15 18:15:57 +00:00
Ulrich Drepper
858db9cbc8 Change type of FE_*_ENV macros to const fenv_t*. 2000-09-01 04:41:12 +00:00
Ulrich Drepper
f8bc20d3fa Define RTLD_NOLOAD and RTLD_NODELETE. 2000-07-20 22:52:53 +00:00
Andreas Jaeger
500d200d09 2000-04-14 Andreas Jaeger <aj@suse.de>
* weaks.c: Fix typo.

2000-04-14  Andreas Jaeger  <aj@suse.de>

	* sysdeps/generic/madvise.c: Fix typos.

	* sysdeps/unix/sysv/linux/mips/clone.S (error): Use __PIC__.

	* sysdeps/mips/bits/setjmp.h: Remove K&R compatibility.

	* sysdeps/mips/setjmp_aux.c (__sigsetjmp_aux): Silence gcc
	warnings.
2000-04-14 17:36:37 +00:00
Ulrich Drepper
e6e840f034 Define DL_CALL_FCT here. 2000-02-28 20:50:34 +00:00
Ulrich Drepper
10b20b58ab Remove SGI specific calls, add RTLD_LOCAL. 1999-08-22 16:05:13 +00:00
Ulrich Drepper
d3cbb9807c (fenv_t): Prepend __ to member names to protect from user's macro namespace. 1999-05-23 09:44:56 +00:00
Ulrich Drepper
1d32500284 Fix typo. 1999-02-16 15:13:16 +00:00
Ulrich Drepper
ea0499d2b8 ISO C 9x FPU exception handling function. 1998-11-28 20:59:45 +00:00
Ulrich Drepper
905714080f Issue error message if the header is used directly. 1997-11-26 04:14:44 +00:00
Ulrich Drepper
8c0c6f59b4 MIPS specific DL interface bits. 1997-07-12 23:25:19 +00:00
Ulrich Drepper
4f389d4c51 MIPS specific setjmp buffer. 1997-06-21 02:02:43 +00:00
Ulrich Drepper
08fe606443 MIPS specific byte order definition. 1997-06-21 02:02:34 +00:00