diff options
author | Paul Brook <paul@codesourcery.com> | 2006-10-30 21:56:42 +0000 |
---|---|---|
committer | Paul Brook <paul@codesourcery.com> | 2006-10-30 21:56:42 +0000 |
commit | e2ee1ce49cf68888384dfbd037e128b546682424 (patch) | |
tree | 048d4e339a30a6b3d354bb399abc74110448439c | |
parent | e84507a32393823f071817d84477dcc552f44751 (diff) | |
download | binutils-redhat-binutils-csl-arm-2006q3-26.tar.gz |
2006-10-30 Paul Brook <paul@codesourcery.com>binutils-csl-sourcerygxx-4_1-26binutils-csl-arm-2006q3-26
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.
-rw-r--r-- | ChangeLog.csl | 8 | ||||
-rw-r--r-- | bfd/elf32-arm.c | 4 |
2 files changed, 12 insertions, 0 deletions
diff --git a/ChangeLog.csl b/ChangeLog.csl index 0a14213f2c..68f42e78e5 100644 --- a/ChangeLog.csl +++ b/ChangeLog.csl @@ -1,3 +1,11 @@ +2006-10-30 Paul Brook <paul@codesourcery.com> + + 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 <kazu@codesourcery.com> Merge fido bits: diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c index fa9867ec8e..f842dca2a1 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) { |