PR23937, powerpc64le local ifunc IRELATIVE relocs are wrong
[deliverable/binutils-gdb.git] / bfd / elf64-ppc.c
index 7c3534ac654c67404c7ba9a2669da89cb27df461..a2d3ea067c37d4e26a2ed623d42440a0a8d48f50 100644 (file)
@@ -12882,7 +12882,8 @@ write_plt_relocs_for_local_syms (struct bfd_link_info *info)
                }
 
              val = sym->st_value + ent->addend;
-             val += PPC64_LOCAL_ENTRY_OFFSET (sym->st_other);
+             if (ELF_ST_TYPE (sym->st_info) != STT_GNU_IFUNC)
+               val += PPC64_LOCAL_ENTRY_OFFSET (sym->st_other);
              if (sym_sec != NULL && sym_sec->output_section != NULL)
                val += sym_sec->output_offset + sym_sec->output_section->vma;
 
This page took 0.027181 seconds and 4 git commands to generate.