summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2002-05-06 08:54:44 +0000
committerAlan Modra <amodra@bigpond.net.au>2002-05-06 08:54:44 +0000
commitfcd7df0307a75cf92b4b0d8a14f663a95a931859 (patch)
tree9e18250f6cfe85640615cfa765417f2d6b3afb55
parentacc4d56406f99d735d39eb3becd9f1e32beef730 (diff)
downloadgdb-fcd7df0307a75cf92b4b0d8a14f663a95a931859.tar.gz
* elflink.h (elf_link_input_bfd <emit_relocs>): Adjust r_offset
when not relocatable. Fix reloc_emitter call for K&R.
-rw-r--r--bfd/elflink.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/bfd/elflink.h b/bfd/elflink.h
index 06035b31bee..37b21509699 100644
--- a/bfd/elflink.h
+++ b/bfd/elflink.h
@@ -6776,7 +6776,7 @@ elf_link_input_bfd (finfo, input_bfd)
irela->r_offset += o->output_offset;
/* Relocs in an executable have to be virtual addresses. */
- if (finfo->info->emitrelocations)
+ if (!finfo->info->relocateable)
irela->r_offset += o->output_section->vma;
r_symndx = ELF_R_SYM (irela->r_info);
@@ -6908,7 +6908,8 @@ elf_link_input_bfd (finfo, input_bfd)
{
internal_relocs += (NUM_SHDR_ENTRIES (input_rel_hdr)
* bed->s->int_rels_per_ext_rel);
- reloc_emitter (output_bfd, o, input_rel_hdr, internal_relocs);
+ (*reloc_emitter) (output_bfd, o, input_rel_hdr,
+ internal_relocs);
}
}