24 lines
777 B
Diff
24 lines
777 B
Diff
|
#
|
||
|
# Posted upstream:
|
||
|
# http://sourceware.org/ml/libc-ports/2013-08/msg00053.html
|
||
|
#
|
||
|
# 2013-08-28 Kyle McMartin <kyle@redhat.com>
|
||
|
# Carlos O'Donell <carlos@redhat.com>
|
||
|
#
|
||
|
# * sysdeps/arm/dl-machine [!RTLD_BOOTSTRAP] (elf_machine_rel):
|
||
|
# Pass GLRO(dl_hwcap) to the IFUNC resolver.
|
||
|
#
|
||
|
diff --git a/ports/sysdeps/arm/dl-machine.h b/ports/sysdeps/arm/dl-machine.h
|
||
|
index d251527..85dba67 100644
|
||
|
--- a/ports/sysdeps/arm/dl-machine.h
|
||
|
+++ b/ports/sysdeps/arm/dl-machine.h
|
||
|
@@ -503,7 +503,7 @@ elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc,
|
||
|
break;
|
||
|
case R_ARM_IRELATIVE:
|
||
|
value = map->l_addr + *reloc_addr;
|
||
|
- value = ((Elf32_Addr (*) (void)) value) ();
|
||
|
+ value = ((Elf32_Addr (*) (int)) value) (GLRO(dl_hwcap));
|
||
|
*reloc_addr = value;
|
||
|
break;
|
||
|
#endif
|