From e29297b73cbde989847ee66e87cc12d5b035aa35 Mon Sep 17 00:00:00 2001 From: Bob Wilson Date: Wed, 18 Jul 2007 18:23:47 +0000 Subject: [PATCH] * elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Get section vma and size for dynamic tags from the output sections. --- bfd/ChangeLog | 5 +++++ bfd/elf32-xtensa.c | 10 +++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index eb639c4b4f..488344320e 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2007-07-18 Bob Wilson + + * elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Get section + vma and size for dynamic tags from the output sections. + 2007-07-18 Alan Modra * elf-bfd.h (struct sym_sec_cache): Delete "sec". Add "shndx". diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c index 55dcf2e942..1182bd9de6 100644 --- a/bfd/elf32-xtensa.c +++ b/bfd/elf32-xtensa.c @@ -2649,19 +2649,19 @@ elf_xtensa_finish_dynamic_sections (bfd *output_bfd, break; case DT_XTENSA_GOT_LOC_OFF: - dyn.d_un.d_ptr = htab->sgotloc->vma; + dyn.d_un.d_ptr = htab->sgotloc->output_section->vma; break; case DT_PLTGOT: - dyn.d_un.d_ptr = htab->sgot->vma; + dyn.d_un.d_ptr = htab->sgot->output_section->vma; break; case DT_JMPREL: - dyn.d_un.d_ptr = htab->srelplt->vma; + dyn.d_un.d_ptr = htab->srelplt->output_section->vma; break; case DT_PLTRELSZ: - dyn.d_un.d_val = htab->srelplt->size; + dyn.d_un.d_val = htab->srelplt->output_section->size; break; case DT_RELASZ: @@ -2672,7 +2672,7 @@ elf_xtensa_finish_dynamic_sections (bfd *output_bfd, for .rela.plt to follow all other relocation sections, we don't have to worry about changing the DT_RELA entry. */ if (htab->srelplt) - dyn.d_un.d_val -= htab->srelplt->size; + dyn.d_un.d_val -= htab->srelplt->output_section->size; break; }