diff options
Diffstat (limited to 'sysdeps/powerpc/powerpc32/dl-machine.c')
-rw-r--r-- | sysdeps/powerpc/powerpc32/dl-machine.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sysdeps/powerpc/powerpc32/dl-machine.c b/sysdeps/powerpc/powerpc32/dl-machine.c index d3ce2c17a9..a90cbc1ae3 100644 --- a/sysdeps/powerpc/powerpc32/dl-machine.c +++ b/sysdeps/powerpc/powerpc32/dl-machine.c @@ -414,7 +414,7 @@ __process_machine_rela (struct link_map *map, const Elf32_Sym *refsym, Elf32_Addr *const reloc_addr, Elf32_Addr const finaladdr, - int rinfo) + int rinfo, bool skip_ifunc) { union unaligned { @@ -434,7 +434,8 @@ __process_machine_rela (struct link_map *map, return; case R_PPC_IRELATIVE: - *reloc_addr = ((Elf32_Addr (*) (void)) finaladdr) (); + if (__glibc_likely (!skip_ifunc)) + *reloc_addr = ((Elf32_Addr (*) (void)) finaladdr) (); return; case R_PPC_UADDR32: |