diff options
author | Andreas Jaeger <aj@suse.de> | 2005-03-28 07:49:19 +0000 |
---|---|---|
committer | Andreas Jaeger <aj@suse.de> | 2005-03-28 07:49:19 +0000 |
commit | abc85e9fea35a8e2eedfc9796c8d81ae5364bcf7 (patch) | |
tree | 72402c0e8ba665627669885b93db713c5d9b969a /sysdeps/generic | |
parent | 12403b32054ad3f46390f7e537f24ccf7b153620 (diff) | |
download | glibc-abc85e9fea35a8e2eedfc9796c8d81ae5364bcf7.zip glibc-abc85e9fea35a8e2eedfc9796c8d81ae5364bcf7.tar.gz glibc-abc85e9fea35a8e2eedfc9796c8d81ae5364bcf7.tar.bz2 |
[BZ #783]
2005-03-28 Daniel Jacobowitz <dan@codesourcery.com>
[BZ #783]
* elf/tst-auditmod1.c: Add MIPS support.
* sysdeps/generic/ldsodefs.h (La_mips_32_regs): New.
(La_mips_32_retval): New.
(La_mips_64_regs): New.
(La_mips_64_retval): New.
(struct audit_ifaces): Add MIPS entries.
* sysdeps/mips/dl-machine.h: Check RESOLVE_MAP instead of RESOLVE.
(elf_machine_runtime_link_map, ELF_DL_FRAME_SIZE,
ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS,
ELF_MACHINE_RUNTIME_TRAMPOLINE): Move to dl-trampoline.c.
(RTLD_START): Align the stack before calling _dl_init_internal.
Use .ent for _dl_start_user.
(ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): Define.
(elf_machine_rel, elf_machine_rel_relative, elf_machine_lazy_rel)
(elf_machine_runtime_setup): Use "auto inline".
(elf_machine_rela, elf_machine_rela_relative): Provide empty versions.
(elf_machine_got_rel): Likewise. Use RESOLVE_MAP.
* sysdeps/mips/dl-trampoline.c: New file.
* sysdeps/mips/bits/link.h: New file.
* sysdeps/unix/sysv/linux/mips/mips32/sysdep.h
(internal_syscall5): Use register operands instead of non-lvalue
memory operands.
(internal_syscall6): Likewise.
(internal_syscall7): Likewise.
2005-03-28 Daniel Jacobowitz <dan@codesourcery.com>
[BZ #783]
* elf/tst-auditmod1.c: Add MIPS support.
* sysdeps/generic/ldsodefs.h (La_mips_32_regs): New.
(La_mips_32_retval): New.
(La_mips_64_regs): New.
(La_mips_64_retval): New.
(struct audit_ifaces): Add MIPS entries.
* sysdeps/mips/dl-machine.h: Check RESOLVE_MAP instead of RESOLVE.
(elf_machine_runtime_link_map, ELF_DL_FRAME_SIZE,
ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS,
ELF_MACHINE_RUNTIME_TRAMPOLINE): Move to dl-trampoline.c.
(RTLD_START): Align the stack before calling _dl_init_internal.
Use .ent for _dl_start_user.
(ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): Define.
(elf_machine_rel, elf_machine_rel_relative, elf_machine_lazy_rel)
(elf_machine_runtime_setup): Use "auto inline".
(elf_machine_rela, elf_machine_rela_relative): Provide empty versions.
(elf_machine_got_rel): Likewise. Use RESOLVE_MAP.
* sysdeps/mips/dl-trampoline.c: New file.
* sysdeps/mips/bits/link.h: New file.
* sysdeps/unix/sysv/linux/mips/mips32/sysdep.h
(internal_syscall5): Use register operands instead of non-lvalue
memory operands.
(internal_syscall6): Likewise.
(internal_syscall7): Likewise.
Diffstat (limited to 'sysdeps/generic')
-rw-r--r-- | sysdeps/generic/ldsodefs.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h index dd1b2c8..e1a934a 100644 --- a/sysdeps/generic/ldsodefs.h +++ b/sysdeps/generic/ldsodefs.h @@ -195,6 +195,10 @@ struct La_s390_64_regs; struct La_s390_64_retval; struct La_ia64_regs; struct La_ia64_retval; +struct La_mips_32_regs; +struct La_mips_32_retval; +struct La_mips_64_regs; +struct La_mips_64_retval; struct audit_ifaces { @@ -251,6 +255,21 @@ struct audit_ifaces uintptr_t *, struct La_ia64_regs *, unsigned int *, const char *name, long int *framesizep); + Elf32_Addr (*mips_o32_gnu_pltenter) (Elf32_Sym *, unsigned int, + uintptr_t *, uintptr_t *, + const struct La_mips_32_regs *, + unsigned int *, const char *name, + long int *framesizep); + Elf32_Addr (*mips_n32_gnu_pltenter) (Elf32_Sym *, unsigned int, + uintptr_t *, uintptr_t *, + const struct La_mips_64_regs *, + unsigned int *, const char *name, + long int *framesizep); + Elf64_Addr (*mips_n64_gnu_pltenter) (Elf64_Sym *, unsigned int, + uintptr_t *, uintptr_t *, + const struct La_mips_64_regs *, + unsigned int *, const char *name, + long int *framesizep); }; union { @@ -294,6 +313,21 @@ struct audit_ifaces uintptr_t *, const struct La_ia64_regs *, struct La_ia64_retval *, const char *); + unsigned int (*mips_o32_gnu_pltexit) (Elf32_Sym *, unsigned int, + uintptr_t *, uintptr_t *, + const struct La_mips_32_regs *, + struct La_mips_32_retval *, + const char *); + unsigned int (*mips_n32_gnu_pltexit) (Elf32_Sym *, unsigned int, + uintptr_t *, uintptr_t *, + const struct La_mips_64_regs *, + struct La_mips_64_retval *, + const char *); + unsigned int (*mips_n64_gnu_pltexit) (Elf64_Sym *, unsigned int, + uintptr_t *, uintptr_t *, + const struct La_mips_64_regs *, + struct La_mips_64_retval *, + const char *); }; unsigned int (*objclose) (uintptr_t *); |