iq2000_elf_relocate_section): Do nothing when perfoming a relocatable link.
[deliverable/binutils-gdb.git] / bfd / elf32-m68k.c
index 4f119035811e6c16808dfef71e2e1c90985b191c..42a3764d9b94dd544ef9856bb2b1369a9ec02173 100644 (file)
@@ -1731,8 +1731,9 @@ elf_m68k_relocate_section (output_bfd, info, input_bfd, input_section,
          if (r == bfd_reloc_overflow)
            {
              if (!(info->callbacks->reloc_overflow
-                   (info, name, howto->name, (bfd_vma) 0,
-                    input_bfd, input_section, rel->r_offset)))
+                   (info, (h ? &h->root : NULL), name, howto->name,
+                    (bfd_vma) 0, input_bfd, input_section,
+                    rel->r_offset)))
                return FALSE;
            }
          else
@@ -2207,6 +2208,18 @@ elf32_m68k_reloc_type_class (rela)
     }
 }
 
+/* Return address for Ith PLT stub in section PLT, for relocation REL
+   or (bfd_vma) -1 if it should not be included.  */
+
+static bfd_vma
+elf_m68k_plt_sym_val (bfd_vma i, const asection *plt,
+                     const arelent *rel ATTRIBUTE_UNUSED)
+{
+  if (CPU32_FLAG (plt->owner))
+    return plt->vma + (i + 1) * PLT_CPU32_ENTRY_SIZE;
+  return plt->vma + (i + 1) * PLT_ENTRY_SIZE;
+}
+
 #define TARGET_BIG_SYM                 bfd_elf32_m68k_vec
 #define TARGET_BIG_NAME                        "elf32-m68k"
 #define ELF_MACHINE_CODE               EM_68K
@@ -2236,6 +2249,7 @@ elf32_m68k_reloc_type_class (rela)
 #define bfd_elf32_bfd_print_private_bfd_data \
                                         elf32_m68k_print_private_bfd_data
 #define elf_backend_reloc_type_class   elf32_m68k_reloc_type_class
+#define elf_backend_plt_sym_val                elf_m68k_plt_sym_val
 
 #define elf_backend_can_gc_sections 1
 #define elf_backend_can_refcount 1
This page took 0.024392 seconds and 4 git commands to generate.