OSDN Git Service

* elf32-score.c (_bfd_score_elf_relocate_section): Move assignment
authoramodra <amodra>
Wed, 27 Sep 2006 04:07:54 +0000 (04:07 +0000)
committeramodra <amodra>
Wed, 27 Sep 2006 04:07:54 +0000 (04:07 +0000)
to "name" so that compiler realizes it is never uninitialized.
Use bfd_elf_sym_name.

bfd/ChangeLog
bfd/elf32-score.c

index a2a6470..e8bf78b 100644 (file)
@@ -1,3 +1,9 @@
+2006-09-27  Alan Modra  <amodra@bigpond.net.au>
+
+       * elf32-score.c (_bfd_score_elf_relocate_section): Move assignment
+       to "name" so that compiler realizes it is never uninitialized.
+       Use bfd_elf_sym_name.
+
 2006-09-26  H.J. Lu  <hongjiu.lu@intel.com>
 
        PR binutils/3262
index c84763a..7793754 100644 (file)
@@ -2308,9 +2308,13 @@ _bfd_score_elf_relocate_section (bfd *output_bfd,
         {
           sym = local_syms + r_symndx;
           sec = local_sections[r_symndx];
-          relocation = (sec->output_section->vma + sec->output_offset + sym->st_value);
+          relocation = (sec->output_section->vma
+                       + sec->output_offset
+                       + sym->st_value);
+          name = bfd_elf_sym_name (input_bfd, symtab_hdr, sym, sec);
 
-          if ((sec->flags & SEC_MERGE) && ELF_ST_TYPE (sym->st_info) == STT_SECTION)
+          if ((sec->flags & SEC_MERGE)
+             && ELF_ST_TYPE (sym->st_info) == STT_SECTION)
             {
               asection *msec;
               bfd_vma addend, value;
@@ -2432,13 +2436,6 @@ _bfd_score_elf_relocate_section (bfd *output_bfd,
            }
         }
 
-      if (h == NULL)
-        {
-          name = (bfd_elf_string_from_elf_section (input_bfd, symtab_hdr->sh_link, sym->st_name));
-          if (name == NULL || *name == '\0')
-            name = bfd_section_name (input_bfd, sec);
-        }
-
       r = score_elf_final_link_relocate (howto, input_bfd, output_bfd,
                                          input_section, contents, rel, relocs,
                                          relocation, info, sec, name,