about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--nptl/pt-system.c19
2 files changed, 8 insertions, 15 deletions
diff --git a/ChangeLog b/ChangeLog
index 44c1ef2ec8..4adcebd690 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2016-10-07  Stefan Liebler  <stli@linux.vnet.ibm.com>
 
+	* nptl/pt-system.c (system_ifunc): Use libc_ifunc macro.
+
+2016-10-07  Stefan Liebler  <stli@linux.vnet.ibm.com>
+
 	* rt/clock-compat.c (COMPAT_REDIRECT): Use libc_ifunc macro.
 
 2016-10-07  Stefan Liebler  <stli@linux.vnet.ibm.com>
diff --git a/nptl/pt-system.c b/nptl/pt-system.c
index 56f2a8901f..cc415daa3d 100644
--- a/nptl/pt-system.c
+++ b/nptl/pt-system.c
@@ -32,21 +32,10 @@
 
 # if HAVE_IFUNC
 
-static __typeof (system) *
-__attribute__ ((used))
-system_resolve (void)
-{
-  return &__libc_system;
-}
-
-asm (".globl system_ifunc\n"
-     ".type system_ifunc, %gnu_indirect_function");
-
-#  ifdef HAVE_ASM_SET_DIRECTIVE
-asm (".set system_ifunc, system_resolve");
-#  else
-asm ("system_ifunc = system_resolve");
-#  endif
+extern __typeof(system) system_ifunc;
+#  undef INIT_ARCH
+#  define INIT_ARCH()
+libc_ifunc (system_ifunc, &__libc_system)
 
 # else  /* !HAVE_IFUNC */