summary refs log tree commit diff
path: root/elf
diff options
context:
space:
mode:
authorAndreas Jaeger <aj@suse.de>2005-03-28 07:49:19 +0000
committerAndreas Jaeger <aj@suse.de>2005-03-28 07:49:19 +0000
commitabc85e9fea35a8e2eedfc9796c8d81ae5364bcf7 (patch)
tree72402c0e8ba665627669885b93db713c5d9b969a /elf
parent12403b32054ad3f46390f7e537f24ccf7b153620 (diff)
downloadglibc-abc85e9fea35a8e2eedfc9796c8d81ae5364bcf7.tar.gz
glibc-abc85e9fea35a8e2eedfc9796c8d81ae5364bcf7.tar.xz
glibc-abc85e9fea35a8e2eedfc9796c8d81ae5364bcf7.zip
[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 'elf')
-rw-r--r--elf/tst-auditmod1.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/elf/tst-auditmod1.c b/elf/tst-auditmod1.c
index 9b07588288..3876822429 100644
--- a/elf/tst-auditmod1.c
+++ b/elf/tst-auditmod1.c
@@ -162,6 +162,24 @@ la_symbind64 (Elf64_Sym *sym, unsigned int ndx, uintptr_t *refcook,
 # define La_regs La_ia64_regs
 # define La_retval La_ia64_retval
 # define int_retval lrv_r8
+#elif defined __mips__ && _MIPS_SIM == _ABIO32
+# define pltenter la_mips_o32_gnu_pltenter
+# define pltexit la_mips_o32_gnu_pltexit
+# define La_regs La_mips_32_regs
+# define La_retval La_mips_32_retval
+# define int_retval lrv_v0
+#elif defined __mips__ && _MIPS_SIM == _ABIN32
+# define pltenter la_mips_n32_gnu_pltenter
+# define pltexit la_mips_n32_gnu_pltexit
+# define La_regs La_mips_64_regs
+# define La_retval La_mips_64_retval
+# define int_retval lrv_v0
+#elif defined __mips__ && _MIPS_SIM == _ABI64
+# define pltenter la_mips_n64_gnu_pltenter
+# define pltexit la_mips_n64_gnu_pltexit
+# define La_regs La_mips_64_regs
+# define La_retval La_mips_64_retval
+# define int_retval lrv_v0
 #else
 # error "architecture specific code needed"
 #endif