aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/sparc/sparc-ifunc.h
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/sparc/sparc-ifunc.h')
-rw-r--r--sysdeps/sparc/sparc-ifunc.h10
1 files changed, 2 insertions, 8 deletions
diff --git a/sysdeps/sparc/sparc-ifunc.h b/sysdeps/sparc/sparc-ifunc.h
index 8cc86ff5e1..4b1ea00bde 100644
--- a/sysdeps/sparc/sparc-ifunc.h
+++ b/sysdeps/sparc/sparc-ifunc.h
@@ -162,14 +162,8 @@ END (__##name)
#else /* __ASSEMBLER__ */
-# define sparc_libm_ifunc(name, expr) \
- extern void *name##_ifunc (int) __asm__ (#name); \
- void *name##_ifunc (int hwcap) \
- { \
- __typeof (name) *res = expr; \
- return res; \
- } \
- __asm__ (".type " #name ", %gnu_indirect_function");
+# define sparc_libm_ifunc(name, expr) \
+ __ifunc (name, name, expr, int hwcap, libm_ifunc_init)
# define sparc_libc_ifunc(name, expr) sparc_libm_ifunc (name, expr)