diff options
author | tmm <tmm@FreeBSD.org> | 2002-11-18 22:08:50 +0000 |
---|---|---|
committer | tmm <tmm@FreeBSD.org> | 2002-11-18 22:08:50 +0000 |
commit | bd3dff9a70f16d5b5e3d0958fdf1aadf3d6b8e74 (patch) | |
tree | 144093917c9f45647cc2dc3355dc9f42d2ed85c3 /libexec/rtld-elf/sparc64/rtld_machdep.h | |
parent | 51e467ab6a998ed87592e244cb39ccfb38d424c0 (diff) | |
download | FreeBSD-src-bd3dff9a70f16d5b5e3d0958fdf1aadf3d6b8e74.zip FreeBSD-src-bd3dff9a70f16d5b5e3d0958fdf1aadf3d6b8e74.tar.gz |
Fix the handling of high PLT entries (> 32764) on sparc64. This requires
additional arguments to reloc_jmpslot(), which is why MI code and MD code
of other platforms had to be changed.
Reviewed by: jake
Approved by: re
Diffstat (limited to 'libexec/rtld-elf/sparc64/rtld_machdep.h')
-rw-r--r-- | libexec/rtld-elf/sparc64/rtld_machdep.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libexec/rtld-elf/sparc64/rtld_machdep.h b/libexec/rtld-elf/sparc64/rtld_machdep.h index f91840f..0d028c8 100644 --- a/libexec/rtld-elf/sparc64/rtld_machdep.h +++ b/libexec/rtld-elf/sparc64/rtld_machdep.h @@ -50,7 +50,9 @@ struct Struct_Obj_Entry; #define rtld_dynamic(obj) ((Elf_Dyn *)(((char *)&_DYNAMIC) + (vm_offset_t)(obj)->relocbase)) Elf_Addr reloc_jmpslot(Elf_Addr *, Elf_Addr, - const struct Struct_Obj_Entry *obj); + const struct Struct_Obj_Entry *, + const struct Struct_Obj_Entry *, + const Elf_Rel *); #define make_function_pointer(def, defobj) \ ((defobj)->relocbase + (def)->st_value) |