From bb38d32c233ff7b2323ac273c09556c0d5884391 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sat, 29 Jan 2005 00:07:16 +0000 Subject: Update. * sysdeps/s390/bits/link.h: New file. * sysdeps/s390/s390-32/dl-trampoline.S: New file. * sysdeps/s390/s390-64/dl-trampoline.S: New file. * sysdeps/s390/s390-32/dl-machine.h: Move PLT trampolines to dl-trampoline.S. Use RESOLVE_MAP instead of RESOLVE to protect relocation code. (elf_machine_runtime_setup): Test for dl_profile non-null. (elf_machine_rela): Remove code using RESOLVE. (ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): New. * sysdeps/s390/s390-64/dl-machine.h: Likewise. * sysdeps/generic/ldsodefs.h (La_s390_32_regs, La_s390_32_retval, La_s390_64_regs, La_s390_64_retval): New. * elf/tst-auditmod1.c: Add s390 entries. --- sysdeps/generic/ldsodefs.h | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'sysdeps/generic') diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h index 29588207d1..14c49d7df2 100644 --- a/sysdeps/generic/ldsodefs.h +++ b/sysdeps/generic/ldsodefs.h @@ -189,6 +189,10 @@ struct La_m68k_regs; struct La_m68k_retval; struct La_alpha_regs; struct La_alpha_retval; +struct La_s390_32_regs; +struct La_s390_32_retval; +struct La_s390_64_regs; +struct La_s390_64_retval; struct audit_ifaces { @@ -233,6 +237,14 @@ struct audit_ifaces uintptr_t *, struct La_alpha_regs *, unsigned int *, const char *name, long int *framesizep); + Elf32_Addr (*s390_32_gnu_pltenter) (Elf32_Sym *, unsigned int, uintptr_t *, + uintptr_t *, struct La_s390_32_regs *, + unsigned int *, const char *name, + long int *framesizep); + Elf64_Addr (*s390_64_gnu_pltenter) (Elf64_Sym *, unsigned int, uintptr_t *, + uintptr_t *, struct La_s390_64_regs *, + unsigned int *, const char *name, + long int *framesizep); }; union { @@ -262,6 +274,16 @@ struct audit_ifaces uintptr_t *, const struct La_alpha_regs *, struct La_alpha_retval *, const char *); + unsigned int (*s390_32_gnu_pltexit) (Elf32_Sym *, unsigned int, + uintptr_t *, uintptr_t *, + const struct La_s390_32_regs *, + struct La_s390_32_retval *, + const char *); + unsigned int (*s390_64_gnu_pltexit) (Elf64_Sym *, unsigned int, + uintptr_t *, uintptr_t *, + const struct La_s390_64_regs *, + struct La_s390_64_retval *, + const char *); }; unsigned int (*objclose) (uintptr_t *); -- cgit v1.2.3