* config/tc-hppa.c (tc_gen_reloc, ELF variant): Add section->vma

to the relocation's offset.
This commit is contained in:
Jeff Law 1994-11-23 06:34:13 +00:00
parent 43ab4ba582
commit 740e5428b0
2 changed files with 14 additions and 1 deletions

View File

@ -1,3 +1,8 @@
Tue Nov 22 23:31:20 1994 Jeff Law (law@snake.cs.utah.edu)
* config/tc-hppa.c (tc_gen_reloc, ELF variant): Add section->vma
to the relocation's offset.
Tue Nov 22 14:37:58 1994 Steve Chamberlain (sac@jonny.cygnus.com)
* Makefile.in (INSTALL_XFORM): Fix typo.

View File

@ -2568,7 +2568,15 @@ tc_gen_reloc (section, fixp)
reloc->sym_ptr_ptr = &fixp->fx_addsy->bsym;
reloc->howto = bfd_reloc_type_lookup (stdoutput, code);
reloc->address = fixp->fx_frag->fr_address + fixp->fx_where;
/* Ugh. Yet another case where the generic ELF code's
handling of section vmas makes life a living hell.
The generic ELF code will subtract out section->vma from
the relocation offset before the relocs are written. So
we have to add section->vma into the offset here so the
net sum is zero. */
reloc->address = (fixp->fx_frag->fr_address + fixp->fx_where
+ section->vma);
reloc->addend = 0; /* default */
assert (reloc->howto && code == reloc->howto->type);