]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
* elf32-m68k.c (elf_m68k_relocate_section): Don't need the
authorAndreas Schwab <schwab@linux-m68k.org>
Tue, 20 Mar 2001 10:10:04 +0000 (10:10 +0000)
committerAndreas Schwab <schwab@linux-m68k.org>
Tue, 20 Mar 2001 10:10:04 +0000 (10:10 +0000)
relocation value when resolving a reference from a debugging
section.

bfd/ChangeLog
bfd/elf32-m68k.c

index cd91cbc9bc1953039618a184970fbbad53755f20..f6e47b862e24eb585611ff2fcbc93b7f263b9247 100644 (file)
@@ -1,3 +1,9 @@
+2001-03-20  Andreas Schwab  <schwab@suse.de>
+
+       * elf32-m68k.c (elf_m68k_relocate_section): Don't need the
+       relocation value when resolving a reference from a debugging
+       section.
+
 2001-03-16  Philip Blundell  <philb@gnu.org>
 
        * configure: Regenerate.
index e7ebc1bf5cc222844413d513d80d5d2168401528..78a0814eddfe70b49191153dfd0afca3412a8b10 100644 (file)
@@ -1462,7 +1462,14 @@ elf_m68k_relocate_section (output_bfd, info, input_bfd, input_section,
                      && ((! info->symbolic && h->dynindx != -1)
                          || (h->elf_link_hash_flags
                              & ELF_LINK_HASH_DEF_REGULAR) == 0)
-                     && (input_section->flags & SEC_ALLOC) != 0
+                     && ((input_section->flags & SEC_ALLOC) != 0
+                         /* DWARF will emit R_68K_32 relocations in its
+                            sections against symbols defined externally
+                            in shared libraries.  We can't do anything
+                            with them here.  */
+                         || ((input_section->flags & SEC_DEBUGGING) != 0
+                             && (h->elf_link_hash_flags
+                                 & ELF_LINK_HASH_DEF_DYNAMIC) != 0))
                      && (r_type == R_68K_8
                          || r_type == R_68K_16
                          || r_type == R_68K_32