From 8111a629b6bb82f8318d7e4a3c010dab260c804a Mon Sep 17 00:00:00 2001 From: Paul Brook Date: Mon, 30 Oct 2006 21:56:42 +0000 Subject: 2006-10-30 Paul Brook bfd/ * elf32-arm.c (elf32_arm_to_thumb_export_stub): Assert that output section is present. (allocate_dynrelocs): Only add export stub for symbols definind in this object. --- ChangeLog.csl | 8 ++++++++ bfd/elf32-arm.c | 4 ++++ 2 files changed, 12 insertions(+) diff --git a/ChangeLog.csl b/ChangeLog.csl index 0a14213f2c6..68f42e78e5a 100644 --- a/ChangeLog.csl +++ b/ChangeLog.csl @@ -1,3 +1,11 @@ +2006-10-30 Paul Brook + + bfd/ + * elf32-arm.c (elf32_arm_to_thumb_export_stub): Assert that output + section is present. + (allocate_dynrelocs): Only add export stub for symbols definind in + this object. + 2006-10-30 Kazu Hirata Merge fido bits: diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c index fa9867ec8ea..f842dca2a1a 100644 --- a/bfd/elf32-arm.c +++ b/bfd/elf32-arm.c @@ -3366,6 +3366,9 @@ elf32_arm_to_thumb_export_stub (struct elf_link_hash_entry *h, void * inf) BFD_ASSERT (s->output_section != NULL); sec = eh->export_glue->root.u.def.section; + + BFD_ASSERT (sec->output_section != NULL); + val = eh->export_glue->root.u.def.value + sec->output_offset + sec->output_section->vma; myh = elf32_arm_create_thumb_stub (info, h->root.root.string, @@ -7724,6 +7727,7 @@ allocate_dynrelocs (struct elf_link_hash_entry *h, void * inf) /* Allocate stubs for exported Thumb functions on v4t. */ if (!htab->use_blx && h->dynindx != -1 + && h->def_regular && ELF_ST_TYPE (h->type) == STT_ARM_TFUNC && ELF_ST_VISIBILITY (h->other) == STV_DEFAULT) { -- cgit v1.2.1