diff options
author | Dale Rahn <drahn@cvs.openbsd.org> | 2002-04-24 21:58:16 +0000 |
---|---|---|
committer | Dale Rahn <drahn@cvs.openbsd.org> | 2002-04-24 21:58:16 +0000 |
commit | b52b85be70837f3789f679055047a4763e81eefc (patch) | |
tree | b6e03617381c23607b4ca78a3a2b9454bc27331b | |
parent | e006fb482ead935420e7ed2885ad24d39ebb7cbe (diff) |
Perform full relocation for Rela bootstrap relocations, compatible
with newer binutils this way. ok fgs, jason.
-rw-r--r-- | libexec/ld.so/sparc64/archdep.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libexec/ld.so/sparc64/archdep.h b/libexec/ld.so/sparc64/archdep.h index b4ce7694c3c..29477a75c80 100644 --- a/libexec/ld.so/sparc64/archdep.h +++ b/libexec/ld.so/sparc64/archdep.h @@ -1,4 +1,4 @@ -/* $OpenBSD: archdep.h,v 1.6 2002/02/21 23:17:53 drahn Exp $ */ +/* $OpenBSD: archdep.h,v 1.7 2002/04/24 21:58:15 drahn Exp $ */ /* * Copyright (c) 1998 Per Fogelstrom, Opsycon AB @@ -61,10 +61,10 @@ static inline void RELOC_RELA(Elf_RelA *r, const Elf_Sym *s, Elf_Addr *p, unsigned long v) { if (ELF_R_TYPE(r->r_info) == RELOC_RELATIVE) { - *p += (Elf_Addr)v; + *p = v + r->r_addend; } else { /* XXX - printf might not work here, but we give it a shot. */ - _dl_printf("Unkown bootstrap relocation.\n"); + _dl_printf("Unknown bootstrap relocation.\n"); _dl_exit(6); } } |