Commit Graph

365 Commits

Author SHA1 Message Date
Andreas Jaeger
784c002b10 2003-05-30 Guido Guenther <agx@sigxcpu.org>
* sysdeps/mips/mips64/bsd-_setjmp.S: Include <sys/asm.h> for
	SETUP_GP64 and friends.
	* sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Fix register
	names in internal_syscall{6,7}.
	* sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/pread.c [_MIPS_SIM == _ABI64]: Fix
	number of syscall arguments.
	* sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
	* sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
	* sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
2003-05-30 17:41:46 +00:00
Ulrich Drepper
79b7c8634d Add libc_hidden_builtin_def. 2003-04-29 22:47:20 +00:00
Alexandre Oliva
96c095cf0d * sysdeps/mips/sys/regdef.h (t4,t5,t6,t7): Renamed to t0..t3 on
NewABI.
(ta0, ta1, ta2, ta3): Defined to t4..t7 on o32, and a4..a7 on
NewABI.
* sysdeps/mips/mips64/memcpy.S: Adjust register naming
conventions.
* sysdeps/mips/mips64/memset.S: Likewise.
* sysdeps/unix/mips/sysdep.S (__syscall_error) [_LIBC_REENTRANT]:
Use t0 instead of t4 as temporary.
2003-04-09 02:51:04 +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
f4e9c08c59 * sysdeps/mips/sgidefs.h (_MIPS_ISA_MIPS32, _MIPS_ISA_MIPS64):
Define.
* sysdeps/mips/sys/asm.h: Test _MIPS_ISA against them on all
ISA tests.
(ALSZ, ALMASK, SZREG, REG_S, REG_L): Define based on ABI, not ISA.
(PTR_ADD, etc): Test _MIPS_SZPTR instead of _MIPS_SZLONG.
* sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
to decide whether to add padding.
* sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
to decide whether to add padding.
* sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (struct
old_kernel_sigaction): Likewise.
2003-03-25 21:51:53 +00:00
Roland McGrath
fad367110e 2003-03-23 Jakub Jelinek <jakub@redhat.com>
* sysdeps/alpha/fpu/libm-test-ulps: Update.
	* sysdeps/arm/libm-test-ulps: Update.
	* sysdeps/hppa/fpu/libm-test-ulps: Update.
	* sysdeps/ia64/fpu/libm-test-ulps: Update.
	* sysdeps/mips/fpu/libm-test-ulps: Update.
	* sysdeps/powerpc/nofpu/libm-test-ulps: Update.
	* sysdeps/powerpc/fpu/libm-test-ulps: Update.
	* sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
	* sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
	* sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
	* sysdeps/s390/fpu/libm-test-ulps: Update.
	* sysdeps/x86_64/fpu/libm-test-ulps: Update.
2003-03-23 00:52:10 +00:00
Alexandre Oliva
cfd77e42b8 * sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation
data structures and macros.  Protect from multiple inclusion.
2003-03-22 15:07:05 +00:00
Alexandre Oliva
721e2474d6 * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless
typo in #if test.
2003-03-22 12:50:46 +00:00
Alexandre Oliva
2b15a21180 * sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke
unaligned copying of 8-15 bytes.  From Chris Demetriou
<cgd@broadcom.com>.  Fix label names.
* sysdeps/mips/mips64/memset.S: Fix label names.  Make similar
change as to memcpy.S.
* sysdeps/mips/memcpy.S: Formatting changes.
* sysdeps/mips/memset.S: Likewise.
2003-03-21 21:39:39 +00:00
Alexandre Oliva
500308e11d * sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New.
* sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments.
2003-03-21 19:44:24 +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
1a58876cc7 * sysdeps/mips/ieee754.h: Remove excess #endif. 2003-03-20 17:59:45 +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
3d06657c53 * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
properly for n64.
(elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
type.
(elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
Word before comparing with gotsym.  Take reloc_addr argument as
void*.  Remove the code added for the compiler to drop any
alignment assumptions.
2003-03-20 07:54:21 +00:00
Alexandre Oliva
79bd056457 * sysdeps/mips/ieee754.h: New file, suitable to replace both
../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
mips-specific for now.
2003-03-20 00:39:32 +00:00
Alexandre Oliva
be1222911f * sysdeps/mips/mips64/Implies: Move wordsize-64 to...
* sysdeps/mips/mips64/n64/Implies: New file.
* sysdeps/mips/mips64/n64/Makefile: New file.
* sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
* sysdeps/mips/mips64/n32/Implies: New file.
* sysdeps/mips/mips64/n32/Makefile: New file.
* sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
* sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
* sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
* sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
* sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
* sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
* sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
* sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
* sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
2003-03-17 16:20:44 +00:00
Alexandre Oliva
7b44519fbc * sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as
well.
2003-03-17 15:53:37 +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
Alexandre Oliva
e6631ae1ac * sysdeps/mips/fpu/bits/mathdef.h: New.
(__NO_LONG_DOUBLE_MATH): Define for o32.
2003-03-14 15:30:43 +00:00
Alexandre Oliva
b1a0b02eb4 * sysdeps/mips/sys/asm.h: Formatting changes.
(PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
(CPADD): Define for all of them.
(SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
NARGSAVE): Define per ABI spec.
(END): Don't redefine.
(LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
LONG_SRAV): Remove duplicate definitions.
(PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
(PTR_LA): Define for all 3 ABIs.
2003-03-14 11:06:32 +00:00
Alexandre Oliva
0d5b725772 * sysdeps/mips/dl-machine.h: Include sys/asm.h.
(elf_machine_matches_host): Prevent linking of o32 and n32
together.
(elf_machine_dynamic): Document assumption on $gp.
(STRINGXP, STRINGXV, STRINGV_): New macros.
(elf_machine_load_address): Use them to stringize PTR_LA and
PTR_SUBU.
(ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
(_dl_runtime_resolve): Adjust it for all 3 ABIs.
(__dl_runtime_resolve): Cast the symtab initializer to the
right type.
(RTLD_START): Use it.  Adjust it for all 3 ABIs.
(elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
Handle 64-bit R_MIPS_REL composite relocation and accept
R_MIPS_64 relocations to shift addend size to 64 bits.
Document assumption regarding local GOT entries.  Document
backward-compatibility departing from the ABI behavior in
applying relocations that reference section symbols, no longer
used.  Support relocations to mis-aligned offsets.
* sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
2003-03-14 08:43:13 +00:00
Alexandre Oliva
2b2c3a2a04 * sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
* sysdeps/mips/memset.S: Likewise.
* sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
depending on the ABI.
2003-03-14 05:31:28 +00:00
Alexandre Oliva
04a8368845 * sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
Don't .set mips2 on new abi.
(compare_and_swap): Likewise.  Support 64-bit longs on n64.
2003-03-14 05:30:31 +00:00
Roland McGrath
3e9a97580a 2003-03-13 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/mips/add_n.S: Use L macro for local labels.
	* sysdeps/mips/addmul_1.S: Likewise.
	* sysdeps/mips/lshift.S: Likewise.
	* sysdeps/mips/memcpy.S: Likewise.
	* sysdeps/mips/memset.S: Likewise.
	* sysdeps/mips/mul_1.S: Likewise.
	* sysdeps/mips/rshift.S: Likewise.
	* sysdeps/mips/sub_n.S: Likewise.
	* sysdeps/mips/submul_1.S: Likewise.
	* sysdeps/mips/mips64/add_n.S: Likewise.
	* sysdeps/mips/mips64/addmul_1.S: Likewise.
	* sysdeps/mips/mips64/lshift.S: Likewise.
	* sysdeps/mips/mips64/mul_1.S: Likewise.
	* sysdeps/mips/mips64/rshift.S: Likewise.
	* sysdeps/mips/mips64/sub_n.S: Likewise.
	* sysdeps/mips/mips64/submul_1.S: Likewise.
	* sysdeps/unix/mips/sysdep.h: Define L() according to ABI
	conventions.  Define END as in sys/asm.h.
	* sysdeps/unix/mips/sysdep.S: Likewise.
	* sysdeps/unix/mips/wait.S: Likewise.
	* sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
2003-03-14 03:59:37 +00:00
Ulrich Drepper
c157224cb8 (ELF_MACHINE_RUNTIME_TRAMPOLINE): Fix masking of version index. 2003-02-12 09:42:48 +00:00
Ulrich Drepper
db16023193 Use libc_hidden_def(name) instead of strong_alias (name, __GI_name). 2002-12-31 20:37:32 +00:00
Ulrich Drepper
044758323b Add __GI__setjmp alias. 2002-12-31 09:35:36 +00:00
Roland McGrath
f8a26bed6f 2002-12-08 Roland McGrath <roland@redhat.com>
* elf/Makefile (tests): Uncomment tst-array[123].
	* Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
	* csu/elf-init.c: New file.
	* csu/Makefile (routines, static-only-routines): Add elf-init.
	* sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
	and __libc_csu_fini in place of _fini.
	* sysdeps/arm/elf/start.S: Likewise.
	* sysdeps/cris/elf/start.S: Likewise.
	* sysdeps/hppa/elf/start.S: Likewise.
	* sysdeps/i386/elf/start.S: Likewise.
	* sysdeps/ia64/elf/start.S: Likewise.
	* sysdeps/m68k/elf/start.S: Likewise.
	* sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
	* sysdeps/mips/elf/start.S: Likewise.
	* sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
	* sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
	* sysdeps/s390/s390-32/elf/start.S: Likewise.
	* sysdeps/s390/s390-64/elf/start.S: Likewise.
	* sysdeps/sh/elf/start.S: Likewise.
	* sysdeps/sparc/sparc32/elf/start.S: Likewise.
	* sysdeps/sparc/sparc64/elf/start.S: Likewise.
	* sysdeps/x86_64/elf/start.S: Likewise.
2002-12-09 20:37:24 +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
f51d253191 Regenerated. 2002-10-14 08:59:01 +00:00
Andreas Jaeger
5e2fa76de2 * sysdeps/mips/fpu/fraiseexcpt.c: Add internal definition.
* sysdeps/mips/fpu/fesetenv.c: Likewise.
2002-10-02 11:01:06 +00:00
Roland McGrath
a30e09230b 2002-09-28 Roland McGrath <roland@redhat.com>
* sysdeps/mach/hurd/dl-sysdep.c (_dl_important_hwcaps): Use INTUSE for
	_dl_signal_error.
	* sysdeps/mips/dl-machine.h (elf_machine_runtime_link_map): Likewise.
	* sysdeps/powerpc/powerpc64/dl-machine.c
	(_dl_reloc_overflow): Likewise.
	* sysdeps/arm/dl-machine.h (elf_machine_rel): Likewise.
	(elf_machine_rela): Likewise.
2002-09-28 19:45:29 +00:00
Roland McGrath
93697b95eb 2002-09-20 Roland McGrath <roland@redhat.com>
* sysdeps/generic/gmp-mparam.h: Include <bits/wordsize.h>.
	(BITS_PER_MP_LIMB, BYTES_PER_MP_LIMB, BITS_PER_LONGINT): Define in
	terms of __WORDSIZE.
	* sysdeps/x86_64/gmp-mparam.h: File removed.
	* sysdeps/sparc/gmp-mparam.h: File removed.
	* sysdeps/mips/mips64/gmp-mparam.h: File removed.
	* sysdeps/ia64/gmp-mparam.h: File removed.
	* sysdeps/alpha/gmp-mparam.h: File removed.
2002-09-20 21:49:06 +00:00
Roland McGrath
ce8a8f74e4 2002-09-18 Roland McGrath <roland@redhat.com>
* elf/do-rel.h (elf_dynamic_do_rel): Mask off 0x8000 bit (hidden flag)
	from the value taken from the DT_VERSYM table.
	* elf/dl-runtime.c (fixup, profile_fixup): Likewise.
	* sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Likewise.
	(RESOLVE_GOTSYM): Likewise.
2002-09-18 18:28:43 +00:00
Andreas Jaeger
0752643673 Cleaned up the FPU exception stuff - was
not functional before. Also removed all SHLIB_COMPAT stuff.
2002-09-10 11:24:50 +00:00
Andreas Jaeger
af43a56542 MIPS specific optimizations. 2002-09-10 11:23:00 +00:00
Ulrich Drepper
280ad607c7 Add libm_hidden_ver. 2002-09-10 01:26:37 +00:00
Ulrich Drepper
176b5726d7 Don't include <sgidefs.h>. Always use ll/sc. 2002-07-16 00:58:07 +00:00
Ulrich Drepper
404d6b4b46 Adjust all callers of _dl_lookup_symbol and _dl_lookup_versioned_symbol. 2002-04-13 07:53:04 +00:00
Andreas Jaeger
9db53b0f7f Remove files since arch is not supported anymore. 2002-04-04 08:57:22 +00:00
Andreas Jaeger
a4007d1f0a Remove, the archs are not supported anymore. 2002-04-04 08:53:30 +00:00
Andreas Jaeger
5a484daec0 Copy from generic file with changes for NaNs on MIPS. 2002-03-22 10:10:19 +00:00
Andreas Jaeger
f1cdba97f5 * sysdeps/mips/fpu/fraiseexcpt.c (__feraiseexcept): Set cause bits.
* sysdeps/mips/fpu/fgetexcptflg.c (__fegetexceptflag): Add comment.

	* sysdeps/mips/fpu/fclrexcpt.c (__feclearexcept): Clear also cause
	bits.

	* sysdeps/mips/fpu/fenv_libc.h (CAUSE_MASK): New.
	(CAUSE_SHIFT): New.
2002-03-17 12:07:44 +00:00
Andreas Jaeger
b5f72d715e Added initialization of GP (to _gp) if compiled non-PIC. 2002-03-02 13:14:40 +00:00
Ulrich Drepper
dca9c7304b Add HAVE_VISIBILITY_ATTRIBUTE and HAVE_SDATA_SECTION. 2002-02-28 22:36:33 +00:00
Andreas Jaeger
c8523a3c74 Update MCOUNT for current GCC behavior. 2002-02-11 10:23:36 +00:00
Andreas Jaeger
4bf39226fa * sysdeps/mips/dl-machine.h (elf_machine_matches_host): Use
__attribute_used__.
	(__dl_runtime_resolve): Likewise.

	* sysdeps/mips/machine-gmon.h (_MCOUNT_DECL): Make it a real
	declaration.
2002-02-08 18:56:57 +00:00
Andreas Jaeger
c149ac8f45 * sysdeps/mips/atomicity.h (compare_and_swap): Remove
".set noreorder".
	* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set):
	Likewise.
2002-02-08 16:15:32 +00:00
Andreas Jaeger
6d1e7ba623 Do not use branch likely. 2002-02-07 10:39:06 +00:00
Andreas Jaeger
9ff2687616 Make sure the right <ldsodefs.h> is included. 2002-02-06 22:48:35 +00:00
Ulrich Drepper
f295ff3212 (exchange_and_add): Use branch likely.
(atomic_add): Likewise.
(compare_and_swap): Return 0 only when failed to compare. Use branch likely.
2002-02-03 02:24:53 +00:00
Ulrich Drepper
c577723005 (RTLD_START): Call _dl_init_internal instead of _dl_init. 2002-02-03 00:29:15 +00:00
Ulrich Drepper
f71d7f5726 Move global variables for SHARED code in struct _rtld_global. Export
this struct, remove all exports for the signal variables.
2002-02-01 01:32:06 +00:00
Ulrich Drepper
872cf89f66 (ELF_MACHINE_BEFORE_RTLD_RELOC): Don't use label at end of compound statement. 2002-01-29 02:58:00 +00:00
Ulrich Drepper
046f02be6f (__dl_runtime_resolve): Remove const' from got'. 2002-01-17 23:21:33 +00:00
Ulrich Drepper
532e4e4b65 GCC frame description for MIPS. 2001-11-16 01:12:04 +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
Ulrich Drepper
fe166e9e57 Updated. 2001-09-15 03:01:21 +00:00
Ulrich Drepper
09d4f65308 Fix usage of new _dl_signal_error() format. 2001-09-08 17:16:44 +00:00
Ulrich Drepper
560c476139 (__dl_runtime_resolve): Pass ELF_RTYPE_CLASS_PLT, instead of R_MIPS_REL32, to
_dl_lookup_versioned_symbol () and _dl_lookup_symbol ().
2001-08-29 18:48:49 +00:00
Ulrich Drepper
5c6029e5c0 (elf_machine_lookup_noplt_p, elf_machine_lookup_noexec_p): Remove.
(elf_machine_type_class): Define.
2001-08-26 22:26:38 +00:00
Ulrich Drepper
4b5c9edf2e (elf_machine_rel_relative): New function. 2001-08-24 14:57:45 +00:00
Ulrich Drepper
335e9a00db (elf_machine_rel_relative): Use ElfW(Rel) in argument. 2001-08-24 14:53:23 +00:00
Ulrich Drepper
85bdccdbd2 Define elf_machine_rel_relative. Minor optimizations. 2001-08-24 08:43:21 +00:00
Andreas Jaeger
3b402ca813 (MCOUNT): Don't use delay slot for jal since jal is a macro. 2001-08-13 08:42:44 +00:00
Ulrich Drepper
0b3cda64b8 Not needed anymore. 2001-07-28 05:53:57 +00:00
Ulrich Drepper
d6df8f49fd Remove non-existing files. 2001-07-28 05:53:37 +00:00
Ulrich Drepper
b04f70b77d Not needed anymore. 2001-07-16 22:30:06 +00:00
Ulrich Drepper
760ab2840b (MAP_BASE_ADDR): Removed.
(elf_machine_got_rel): Defined only if RTLD_BOOTSTRAP is not defined.
(RESOLVE_GOTSYM): Rewrite to use RESOLVE.
2001-07-16 22:26:12 +00:00
Andreas Jaeger
f01ec4673b Put under LGPL v2.1. 2001-07-07 10:13:33 +00:00
Andreas Jaeger
3214b89b32 Update to LGPL v2.1. 2001-07-06 04:56:23 +00:00
Andreas Jaeger
13906e12b9 Add .type for the entry point. 2001-06-05 06:20:45 +00:00
Andreas Jaeger
3a97df5aa5 MIPS specific atomicity functions. 2001-05-27 08:41:04 +00:00
Andreas Jaeger
3eca484689 Removed unneeded binary output format directive. 2001-05-11 13:09:04 +00:00
Ulrich Drepper
48d32c2da9 Add atan2f deltas. 2001-04-22 04:55:54 +00:00
Ulrich Drepper
b0b7e44c75 Adjust for increased precision in result of several tests. 2001-04-17 18:59:43 +00:00
Andreas Jaeger
5c8f22b4fb [__ASSEMBLY__]: Define it. 2001-04-11 11:56:35 +00:00
Andreas Jaeger
e33c3af9cb * sysdeps/mips/bsd-_setjmp.S (_setjmp): Reorder instructions to
avoid problems on MIPS I.
	* sysdeps/mips/bsd-setjmp.S (setjmp): Likewise.

	* sysdeps/mips/dl-machine.h (RTLD_START): Remove duplicate ".set
	noreorder".
2001-02-22 08:27:50 +00:00
Andreas Jaeger
a9a575e676 (__longjmp): Restore SP and FP last and
in a single asm as they may be used to access other stored
registers.
2000-11-27 14:40:15 +00:00
Andreas Jaeger
9285ecc8a1 (elf_machine_rel): Add the symbol's
value plus the run-time displacement to the relocation for non-GOT
symbols.  Set the relocation to the GOT entry for GOT symbols.
2000-11-02 09:32:30 +00:00
Ulrich Drepper
ff86bfcd6b Update after libm-test.inc change. 2000-10-26 17:23:46 +00:00
Andreas Jaeger
67d3dc3d79 Partly revert patch from 2000-10-18. 2000-10-24 07:01:37 +00:00
Ulrich Drepper
f1dba30859 (elf_machine_matches_host): Parameter is now pointer to ELF header. 2000-10-20 17:04:28 +00:00
Andreas Jaeger
d9c1416a4a 2000-10-18 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_OK): New.
	(ELF_MACHINE_BEFORE_RTLD_RELOC): Handle newer linkers.
	(elf_machine_runtime_link_map): Likewise.
	(elf_machine_runtime_setup): Likewise.
	Handle dynamic linker's local got entries.
	Patches by Ralf Baechle <ralf@gnu.org>.

2000-10-09  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>

	* sysdeps/mips/dl-machine.h (_dl_runtime_resolve): Define $sp as
	the frame pointer.  Allocate stack space for $a0 for
	__dl_runtime_resolve().  Do not save $sp in $s0 as it's
	callee-saved anyway.
2000-10-18 10:21:16 +00:00
Ulrich Drepper
d89e0413b2 (RTLD_START): Fix computation of envp argument passed to _dl_init. 2000-10-01 22:36:00 +00:00
Ulrich Drepper
f8f2a6fa36 Add fpu/fenv_libc.h. 2000-09-19 00:18:10 +00:00
Andreas Jaeger
921bb2c300 * sysdeps/mips/dl-machine.h (_RTLD_PROLOGUE): Reformat. Declare
as function.
        (_RTLD_EPILOGUE): Reformat.  Declare size of entry function.
        (ELF_MACHINE_BEFORE_RTLD_RELOC): Relocate the dynamic linker itself so
        it will even work when not loaded to the standard address.
        (RTLD_START): Reformat.  Call _dl_start in a way that is safe even
        before the dynamic linker itself is relocated.
2000-09-18 16:40:35 +00:00
Andreas Jaeger
8ebc36ad77 (FE_NOMASK_ENV): Define. 2000-09-15 18:15:57 +00:00
Andreas Jaeger
5898ca31ae (__fesetenv): Handle FE_NOMASK_ENV. 2000-09-15 18:15:31 +00:00
Andreas Jaeger
d9bfc800cc Use fenv_libc.h 2000-09-15 12:57:40 +00:00
Andreas Jaeger
73675ea1ec New file, common definitions for feenableexcept/fedisableexcept/fegetexcept. 2000-09-15 12:57:14 +00:00
Andreas Jaeger
09ab85fedc MIPS specific version s of feenableexcept, fedisableexcept, fegetexcept. 2000-09-15 12:24:49 +00:00
Andreas Jaeger
5e817c4e87 * sysdeps/mips/dl-machine.h (RESOLVE_GOTSYM): Fix calls to
dl_lookup.
	(ELF_MACHINE_RUNTIME_TRAMPOLINE): Likewise.
2000-09-07 14:53:05 +00:00
Andreas Jaeger
610bd8dec7 New file with soft-fp specific files. 2000-09-06 10:52:05 +00:00
Andreas Jaeger
7e54ab950c [$(subdir) = misc]: Use sysdep_headers instead of headers for make dist. 2000-09-06 08:21:55 +00:00
Andreas Jaeger
8025e83427 Moved from soft-fp/sysdeps/mips/sfp-machine.h. 2000-09-05 08:41:37 +00:00
Andreas Jaeger
1db6393c86 Moved from soft-fp/sysdeps/mips/mips64/sfp-machine.h 2000-09-05 08:37:09 +00:00
Ulrich Drepper
858db9cbc8 Change type of FE_*_ENV macros to const fenv_t*. 2000-09-01 04:41:12 +00:00
Andreas Jaeger
c52761c183 * sysdeps/mips/dl-machine.h (_RTLD_PROLOGUE): Stringify using
__STRING(entry) and not #entry.
	(_RTLD_EPILOGUE): Likewise.
	* sysdeps/mips/mips64/dl-machine.h: Likewise.
2000-07-25 10:32:02 +00:00
Ulrich Drepper
f8bc20d3fa Define RTLD_NOLOAD and RTLD_NODELETE. 2000-07-20 22:52:53 +00:00
Andreas Jaeger
74cb5b6093 2000-07-10 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* sysdeps/mips/dl-machine.h (elf_machine_runtime_link_map): Verify
	that gpreg really points to the GOT section of the calling object.
	Scan all PT_LOAD segments of objects for stub_pc, instead of only
	checking a start address of first one.
	Fix typos.
	* sysdeps/mips/mips64/dl-machine.h (elf_machine_runtime_link_map):
	Likewise.

	* sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Fix a typo.
2000-07-10 13:51:45 +00:00
Andreas Jaeger
6964aca34a Fix type of fpu_control_t.
(_FPU_GETCW): Remove extra colon.
	Patch by Ralf Baechle <ralf@uni-koblenz.de>.
2000-07-05 15:37:11 +00:00
Andreas Jaeger
0a725b6114 Deltas for math test suite on MIPS 2000-06-20 14:16:21 +00:00
Andreas Jaeger
d9560fca3d * sysdeps/mips/fpu/fesetenv.c (__fesetenv): Flush fpu pipeline
first.

	* sysdeps/mips/fpu/feholdexcpt.c: New file.

	* sysdeps/mips/fpu/fraiseexcpt.c: New file.
2000-06-20 13:05:21 +00:00
Ulrich Drepper
c92d72a8fe Include <sysdeps/generic/memusage.h>. 2000-06-20 06:33:57 +00:00
Ulrich Drepper
949eb60694 Macro to allow memory usage tracking. 2000-06-20 06:29:45 +00:00
Ulrich Drepper
3f56045a39 Renamed to memusage.h. 2000-06-20 06:29:15 +00:00
Andreas Jaeger
feaff18976 * sysdeps/mips/dl-machine.h: Always use $25 as jump register.
Patch by Ralf Baechle <ralf@uni-koblenz.de>.
2000-06-18 17:20:01 +00:00
Andreas Jaeger
49e1806ccb * sysdeps/mips/dl-machine.h: Pass finalizer correctly to user
entry point.
	Reported by Jim Pick <jim@jimpick.com>.
2000-06-14 13:13:58 +00:00
Andreas Jaeger
66268e64b9 * sysdeps/mips/elf/start.S (ENTRY_POINT): Remove mips64 defines.
Patch by Ralf Baechle <ralf@gnu.org>.
2000-06-13 14:33:22 +00:00
Ulrich Drepper
959c224a4a DT_THISPROCNUM definition for MIPS. 2000-06-08 04:48:05 +00:00
Greg McGary
fa39016a27 * sysdeps/mips/elf/start.S: Trim redundant code. 2000-06-07 00:30:05 +00:00
Andreas Jaeger
4decd16ab5 * sysdeps/mips/elf/start.S (ENTRY_POINT): Align stack for double
words.
2000-05-24 16:16:17 +00:00
Andreas Jaeger
5494bc3a50 2000-04-21 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/elf/start.S: Use __PIC__ instead of PIC.
	* sysdeps/mips/mips64/add_n.S: Likewise.
	* sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
	* sysdeps/mips/mips64/lshift.S: Likewise.
	* sysdeps/mips/mips64/mul_1.S: Likewise.
	* sysdeps/mips/mips64/rshift.S: Likewise.
	* sysdeps/mips/mips64/setjmp.S: Likewise.
	* sysdeps/mips/mips64/sub_n.S: Likewise.
	* sysdeps/mips/mips64/submul_1.S: Likewise.

	* sysdeps/mips/dl-machine.h (elf_machine_got_rel): Remove strtab
	and update comment.  The strtab from _dl_relocate_object can be
	used.
2000-04-21 16:37:58 +00:00
Andreas Jaeger
5166e402b8 2000-04-18 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/dl-machine.h (elf_machine_rel): Fix relocation.
2000-04-18 18:31:00 +00:00
Andreas Jaeger
a4d132bfdf (elf_machine_relplt): Removed, it's not needed.
(_dl_runtime_resolve): Fix \n for a comment, safe gp and not pc.
2000-04-17 23:56:16 +00:00
Andreas Jaeger
4f20384216 2000-04-17 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/dl-machine.h (elf_machine_got_rel): Optimize a bit
	as suggested by Ulrich Drepper.
	(__dl_runtime_resolve): Remove unused variable, initialize sym
	directly.
	(RTLD_START): Document OFFSET_GP_GOT.
	(OFFSET_GP_GOT): New magic value.
	(elf_mips_got_from_gpreg): Use OFFSET_GP_GOT.
	(elf_machine_got_rel): Only declare strtab if needed.
2000-04-17 21:22:59 +00:00
Andreas Jaeger
2cf8794ab9 2000-04-17 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/add_n.S: Add newline at EOF.
	* sysdeps/mips/rshift.S: Likewise.
	* sysdeps/mips/mul_1.S: Likewise.
	* sysdeps/mips/lshift.S: Likewise.
	* sysdeps/mips/addmul_1.S: Likewise.
2000-04-17 20:59:00 +00:00
Andreas Jaeger
245bff9408 2000-04-14 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/dl-machine.h (elf_machine_got_rel): Initialize
	symidx correctly.
	(elf_machine_got_rel): Cast sym correctly.
2000-04-15 04:33:57 +00:00
Andreas Jaeger
b5e0b658d8 sysdeps/mips/add_n.S 2000-04-15 03:54:15 +00:00
Andreas Jaeger
127035bb55 2000-04-14 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/dl-machine.h (elf_machine_got_rel): Initialize
	symidx correctly.

	* sysdeps/mips/add_n.S: Use __PIC__, add .end directive.
2000-04-15 03:45:10 +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
Andreas Jaeger
12c4efc1d0 2000-04-13 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/dl-machine.h
	(elf_machine_got_rel): Handle symbol versioning.
2000-04-14 00:35:39 +00:00
Andreas Jaeger
043351e023 2000-04-13 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/dl-machine.h
	(elf_machine_got_rel): Only add runtime display if needed.
2000-04-14 00:15:38 +00:00
Andreas Jaeger
15d5e7dc14 2000-04-13 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Handle symbol
	versioning.
2000-04-13 23:55:20 +00:00
Andreas Jaeger
5b917f4e43 2000-04-13 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/mips/pipe.S: Reorder instructions since .reorder is
	default.

	* sysdeps/mips/__longjmp.c (__longjmp): Use $25 to fix problems
	with some applications.
	Patches by Ralf Baechle <ralf@uni-koblenz.de>.

	* sysdeps/mips/bsd-setjmp.S: Use __PIC__.
	* sysdeps/mips/bsd-_setjmp.S: Likewise.
	* sysdeps/mips/setjmp.S: Likewise.
2000-04-13 19:46:02 +00:00
Andreas Jaeger
5719e666f7 2000-04-11 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/dl-machine.h: Update some comments.
	(ELF_MACHINE_ALIGN_MASK): Removed, it's not needed.
2000-04-12 17:59:20 +00:00
Andreas Jaeger
3a344e73cc 2000-03-31 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/dl-machine.h (RTLD_START): Rewritten to match new
        init function interface.
        * sysdeps/mips/mips64/dl-machine.h (RTLD_START): Likewise.
2000-03-31 12:35:12 +00:00
Andreas Jaeger
b1212cdb2f 2000-03-31 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/fpu/fgetexcptflg.c: Fix last patch to use #if.
	* sysdeps/mips/fpu/fegetenv.c: Likewise.
	* sysdeps/mips/fpu/feupdateenv.c: Likewise.
	* sysdeps/mips/fpu/fclrexcpt.c: Likewise.
	* sysdeps/mips/fpu/fesetenv.c: Likewise.
2000-03-31 11:11:10 +00:00
Ulrich Drepper
73a35fc451 Use SHARED instead of PIC. 2000-03-31 05:44:27 +00:00
Andreas Jaeger
17e74c26b7 2000-03-29 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/fpu/fclrexcpt.c: Use shlib-compat macros.
	* sysdeps/mips/fpu/fegetenv.c: Likewise.
	* sysdeps/mips/fpu/fesetenv.c: Likewise.
	* sysdeps/mips/fpu/feupdateenv.c: Likewise.
	* sysdeps/mips/fpu/fgetexcptflg.c: Likewise.
2000-03-29 11:18:48 +00:00
Andreas Jaeger
f5a37cdb1b 2000-03-24 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/dl-machine.h (__dl_runtime_resolve): Use D_PTR to
	access relocated entries in l_info.
	(elf_machine_got_rel): Likewise.
	(elf_machine_runtime_setup): Likewise.
	* sysdeps/mips/mips64/dl-machine.h (elf_machine_got_rel): Likewise.
	(elf_machine_runtime_setup): Likewise.
	(__dl_runtime_resolve): Likewise.
2000-03-24 15:27:37 +00:00
Ulrich Drepper
2535a9deff MIPS specific additions to the internal definitions for the dynamic loader. 2000-03-23 20:30:03 +00:00
Ulrich Drepper
e6e840f034 Define DL_CALL_FCT here. 2000-02-28 20:50:34 +00:00
Ulrich Drepper
41841677b4 Change default version to GLIBC_2.2. 2000-02-26 01:09:38 +00:00
Andreas Jaeger
bab23124f0 2000-02-12 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/dl-machine.h (__start): Rewritten for 2.2 startup
	conventions.
	(elf_machine_rel): Use R_MIPS_REL32 for RESOLVE.
	(elf_machine_runtime_setup,elf_machine_got_rel): Move at end of
	file and make dependend on RESOLVE.
	(ELF_MACHINE_RUNTIME_TRAMPOLINE): Fix arguments to _dl_lookup_symbol.
	(RESOLVE_GOTSYM): Fix arguments to _dl_lookup_symbol.
2000-02-12 11:27:47 +00:00
Ulrich Drepper
6753cccf4b MIPS specific definitions of macros to get stack pointer and high
precision timer.
2000-02-11 19:47:48 +00:00
Andreas Jaeger
ae8736b798 2000-02-03 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/abort-instr.h: New file.
2000-02-03 15:03:50 +00:00
Andreas Jaeger
ede084048d 2000-02-03 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: New file.

	* sysdeps/unix/sysv/linux/mips/register-dump.h: New file.

	* sysdeps/mips/stackinfo.h: New file.
2000-02-03 14:10:24 +00:00
Andreas Jaeger
fc16ca3254 2000-02-01 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/elf/start.S: Rewritten for __libc_start_main.
2000-02-01 08:28:15 +00:00
Ulrich Drepper
16e4bf6fec Correct return value according to the standard. 2000-01-31 07:56:49 +00:00
Andreas Jaeger
6959849dcf 2000-01-11 Andreas Schwab <schwab@suse.de>
* sysdeps/mips/__longjmp.c (__longjmp): Change call to abort into
	infinite loop to avoid pulling in stdio in the dynamic linker.
	* sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
2000-01-11 18:08:15 +00:00
Andreas Jaeger
f818255971 2000-01-11 Andreas Schwab <schwab@suse.de>
* sysdeps/mips/__longjmp.c (__longjmp): Change call to abort into
	infinite loop to avoid pulling in stdio in the dynamic linker.
2000-01-11 17:12:43 +00:00
Andreas Jaeger
be57c15a96 2000-01-10 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/dl-machine.h (elf_machine_matches_host): Follow
	change from 1999-10-07 to elf/elf.h and rename EM_MIPS_RS4_BE to
	EM_MIPS_RS3_LE.
	* sysdeps/mips/mips64/dl-machine.h: Likewise.
2000-01-10 17:34:40 +00:00
Andreas Jaeger
7e61a4b7b9 2000-01-10 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/Implies: Add wordsize-32.
2000-01-10 12:33:45 +00:00
Andreas Jaeger
f4b123a3a8 (elf_machine_dynamic): New function.
(elf_machine_got): Removed, not needed anymore.
	(ELF_MACHINE_RELOC_NOPLT): Removed.
	(ELF_MACHINE_JMP_SLOT): Added.
	(_RTLD_PROLOGUE): We use gcc, no need to check for __STDC__.
	(_RTLD_EPILOGUE): Likewise.
	(RESOLVE_GOTSYM): Use R_MIPS_REL32.
	(ELF_MACHINE_RUNTIME_TRAMPOLINE): Likewise.
1999-11-23 16:10:26 +00:00
Andreas Jaeger
119fab9878 Fix typo in applying last patch. 1999-11-23 15:57:26 +00:00
Andreas Jaeger
58f68573b9 * sysdeps/mips/dl-machine.h (elf_machine_dynamic): New function.
(elf_machine_got): Removed, not needed anymore.
	(ELF_MACHINE_RELOC_NOPLT): Removed.
	(ELF_MACHINE_JMP_SLOT): Added.
	(_RTLD_PROLOGUE): We use gcc, no need to check for __STDC__.
	(_RTLD_EPILOGUE): Likewise.
	(RESOLVE_GOTSYM): Use R_MIPS_REL32.
	(ELF_MACHINE_RUNTIME_TRAMPOLINE): Likewise.
	Based on patches from Maciej W. Rozycki <macro@ds2.pg.gda.pl> and
	Ralf Baechle <baechle@uni-koblenz.de>.
1999-11-23 15:49:22 +00:00
Ulrich Drepper
d971640e98 fetestexcept implementation for PowerPC. 1999-11-01 00:16:46 +00:00
Ulrich Drepper
f2425ccdbb fegetexcept implementation for PowerPC. 1999-11-01 00:16:36 +00:00