From 1fa0ddb30b4401475d6a055946cc20909d0a9c21 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Mon, 2 Aug 1999 22:31:18 +0000 Subject: Jakub Jelinek * elflink.h (elf_bfd_final_link): Copy the whole isym, not just some fields. * elf64-sparc.c (sparc64_elf_output_arch_syms): Declare used variables and initialize them. --- bfd/elflink.h | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) (limited to 'bfd/elflink.h') diff --git a/bfd/elflink.h b/bfd/elflink.h index cfb4909..7b3a417 100644 --- a/bfd/elflink.h +++ b/bfd/elflink.h @@ -4250,19 +4250,12 @@ elf_bfd_final_link (abfd, info) { asection *s; - sym.st_size = e->isym.st_size; - sym.st_other = e->isym.st_other; - - /* Note that we saved a word of storage and overwrote + /* Copy the internal symbol as is. + Note that we saved a word of storage and overwrote the original st_name with the dynstr_index. */ - sym.st_name = e->isym.st_name; + sym = e->isym; - if (e->isym.st_shndx == 0 || e->isym.st_shndx >= SHN_LORESERVE) - { - sym.st_shndx = e->isym.st_shndx; - sym.st_value = e->isym.st_value; - } - else + if (e->isym.st_shndx > 0 && e->isym.st_shndx < SHN_LORESERVE) { s = bfd_section_from_elf_index (e->input_bfd, e->isym.st_shndx); -- cgit v1.1