From: Kazu Hirata Date: Thu, 8 Jan 2004 11:01:37 +0000 (+0000) Subject: * elf32-m68k.c (elf_m68k_gc_sweep_hook): Terminate early X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=87893bc1660c86f410b6b8b28f8fd38daaa64b64;p=pf3gnuchains%2Fpf3gnuchains3x.git * elf32-m68k.c (elf_m68k_gc_sweep_hook): Terminate early if no dynamic object is present. Declare r_symndx and h in an inner scope. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index eec219a4ef..3bf3ed2a0b 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2004-01-08 Kazu Hirata + + * elf32-m68k.c (elf_m68k_gc_sweep_hook): Terminate early + if no dynamic object is present. Declare r_symndx and h in an + inner scope. + 2004-01-07 H.J. Lu * elfxx-ia64.c (elfNN_ia64_relax_section): Don't install diff --git a/bfd/elf32-m68k.c b/bfd/elf32-m68k.c index 90609c5c08..1c7fed92ba 100644 --- a/bfd/elf32-m68k.c +++ b/bfd/elf32-m68k.c @@ -817,26 +817,27 @@ elf_m68k_gc_sweep_hook (abfd, info, sec, relocs) struct elf_link_hash_entry **sym_hashes; bfd_signed_vma *local_got_refcounts; const Elf_Internal_Rela *rel, *relend; - unsigned long r_symndx; - struct elf_link_hash_entry *h; bfd *dynobj; asection *sgot; asection *srelgot; - symtab_hdr = &elf_tdata (abfd)->symtab_hdr; - sym_hashes = elf_sym_hashes (abfd); - local_got_refcounts = elf_local_got_refcounts (abfd); - dynobj = elf_hash_table (info)->dynobj; if (dynobj == NULL) return TRUE; + symtab_hdr = &elf_tdata (abfd)->symtab_hdr; + sym_hashes = elf_sym_hashes (abfd); + local_got_refcounts = elf_local_got_refcounts (abfd); + sgot = bfd_get_section_by_name (dynobj, ".got"); srelgot = bfd_get_section_by_name (dynobj, ".rela.got"); relend = relocs + sec->reloc_count; for (rel = relocs; rel < relend; rel++) { + unsigned long r_symndx; + struct elf_link_hash_entry *h; + switch (ELF32_R_TYPE (rel->r_info)) { case R_68K_GOT8: