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
d2e29db722
* sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
2003-03-14 07:52:05 +00:00
Alexandre Oliva
ab35974e21
* sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
...
(_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
* sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
restore_rt functions. Use them.
2003-03-14 07:49:05 +00:00
Alexandre Oliva
1dd24665be
* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
...
.set mips2 on new abis.
2003-03-14 07:03:36 +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
Andreas Jaeger
28a8f69901
Introduce and use local
...
label .Lthread_start since current binutils don't allow branches
to globally visible symbols.
2003-03-13 15:07:13 +00:00
Ulrich Drepper
ced89ec318
(__thread_start): Use jal instead of jalr to invoke subroutine so
...
restoring the $gp register will work properly.
2003-03-12 01:04:51 +00:00
Andreas Jaeger
3347c3ad39
2003-03-04 Guido Guenther <agx@sigxcpu.org>
...
* sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded
stubs, we have INLINE_SYSCALL.
* sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE,
MAP_NONBLOCK.
2003-03-07 09:46:33 +00:00
Ulrich Drepper
aca56a7fa5
Define MAP_POPULATE and MAP_NONBLOCK.
2003-03-03 09:58:55 +00:00
Andreas Schwab
a25ef3f286
(_dl_start_user): Access
...
__libc_stack_end through GOT since it is a global symbol.
2003-03-01 15:33:11 +00:00
Roland McGrath
6fa6c0ca31
Revert unintentional commits.
2003-02-26 00:01:15 +00:00
Roland McGrath
b6562e8149
linuxthreads/ChangeLog
2003-02-25 23:45:16 +00:00
Ulrich Drepper
cc6a3664ff
Add soft-supp.h.
2003-02-21 06:59:04 +00:00
Ulrich Drepper
2b6aa9b399
(init_iosys): Yield ENODEV on unknown systems.
2003-02-20 22:22:35 +00:00
Ulrich Drepper
2299417ee1
Extra files to distribute for powerpc/nofpu.
2003-02-20 22:19:28 +00:00
Ulrich Drepper
114e7d5005
(INLINE_SYSCALL): Add missing arguments to INTERNAL_SYSCALL_ERROR_P and
...
INTERNAL_SYSCALL_ERRNO.
2003-02-20 20:22:20 +00:00
Andreas Schwab
e96c2b656b
Add MADV_* and POSIX_MADV_* constants.
2003-02-20 13:23:24 +00:00
Ulrich Drepper
6e5bb2d534
(elf_machine_rela): Add instead of subtracting map->l_tls_offset.
2003-02-14 06:02:01 +00:00
Ulrich Drepper
c157224cb8
(ELF_MACHINE_RUNTIME_TRAMPOLINE): Fix masking of version index.
2003-02-12 09:42:48 +00:00
Ulrich Drepper
28445fd3b2
Add posix_fadvise64 syscall.
2003-02-05 23:29:25 +00:00
Ulrich Drepper
94b1e5e52f
Remove __GI_* aliases, already added by make-syscalls.sh.
2003-01-31 03:40:10 +00:00
Andreas Schwab
7495bfa600
(sysdep-CFLAGS): Don't define, not needed any more.
2003-01-30 23:52:52 +00:00
Ulrich Drepper
c25d936b99
(SYSCALL_ERROR_LABEL): Define.
2003-01-27 20:15:03 +00:00
Ulrich Drepper
4f211d1748
Don't set errno in the _LIBC_REENTRANT case, use register names consistently.
2003-01-27 19:01:25 +00:00
Ulrich Drepper
ca0eea4226
Add support for cancellation handling and handle both __NR_pwrite64 and
...
__NR_pwrite.
2003-01-27 19:01:03 +00:00
Ulrich Drepper
8c5a1c7889
Add support for cancellation handling and handle both __NR_pread64 and
...
__NR_pread.
2003-01-27 19:00:40 +00:00
Andreas Schwab
fab80146ed
(_dl_start_user): Use pc-relative addressing to save GOT entries.
2003-01-25 23:07:04 +00:00
Roland McGrath
3de1f4af04
2003-01-21 Jakub Jelinek <jakub@redhat.com>
...
* sysdeps/unix/alpha/sysdep.h (inline_syscall0,
inline_syscall1, inline_syscall2, inline_syscall3,
inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
* sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
__attribute__((unused)) to ChEcK.
2003-01-22 02:07:54 +00:00
Ulrich Drepper
af215add0a
(EPILOGUE, GPSAVEREG): New.
...
(LOADGP) [!PIC]: Rewrite to preserve caller's gp.
2003-01-17 19:19:55 +00:00
Ulrich Drepper
2c7ba672ef
Helper code for TLS setup in static libc.
2003-01-17 19:19:37 +00:00
Ulrich Drepper
6edfd8f2f6
(elf_machine_type_class): Add TLS relocs for class PLT.
2003-01-17 19:18:51 +00:00
Ulrich Drepper
0aced2c569
(__vfork): Conditionally branch to __fork even if __NR_vfork is not defined.
2003-01-15 01:06:06 +00:00
Ulrich Drepper
9da3df1021
(INTERNAL_SYSCALL, INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
...
INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
2003-01-15 01:02:03 +00:00
Ulrich Drepper
259eb5cdb8
(INLINE_SYSCALL): Undefined before defining.
2003-01-14 01:23:59 +00:00
Ulrich Drepper
aaadd842d8
Add inline syscall definitions.
...
(PSEUDO_LOADGP): Remove.
(PSEUDO_PROLOGUE): Load GP in non-pic case.
(SYSCALL_ERROR_LABEL): New.
(PSEUDO): Use it in error branch.
(PSEUDO_END): Add $syscall_error label.
2003-01-12 19:25:52 +00:00
Ulrich Drepper
411c121bce
Move inline syscall bits to sysdeps/unix/alpha/sysdep.h.
2003-01-12 19:23:41 +00:00
Ulrich Drepper
df162e7602
Use correct definition of errno for NOT_IN_libc.
2003-01-12 19:23:03 +00:00
Ulrich Drepper
a48dbdf044
(elf_machine_rela): Compute DTPREL64 and TPREL64 without loadbase applied.
2003-01-12 19:22:32 +00:00
Ulrich Drepper
f5e2ab0edb
vfork implementation for LinuxThreads/Arm.
2003-01-12 09:16:06 +00:00
Ulrich Drepper
e62ed29b3b
(PSEUDO_RET): Correctly unstack lr.
...
(UNDOARGS_5): Fix ordering of pushes and pops.
(SINGLE_THREAD_P_PIC): New.
(SINGLE_THREAD_P_INT): Likewise.
(SINGLE_THREAD_P): Implement in terms of above. Restore lr if it was stacked.
(PSEUDO): Use SINGLE_THREAD_P_INT.
2003-01-12 09:14:25 +00:00
Ulrich Drepper
191cbebf58
Add cancellation support.
2003-01-12 09:06:28 +00:00
Ulrich Drepper
6ad3dd03b3
(elf_machine_rela): Move CHECK_STATIC_TLS before l_tls_offset use.
2003-01-12 08:47:37 +00:00
Andreas Jaeger
9cc157d474
* sysdeps/unix/mips/fork.S: add PSEUDO_END.
...
* sysdeps/unix/mips/brk.S: Likewise.
* sysdeps/unix/mips/pipe.S: Likewise.
2003-01-11 15:26:35 +00:00
Andreas Schwab
c7aa3cacfc
GET_NPROCS_PARSER for m68k.
2003-01-10 15:36:20 +00:00
Andreas Schwab
defd0faa3f
(JUMPTARGET): Undefine before defining it.
2003-01-10 14:08:16 +00:00