]> git.ipfire.org Git - thirdparty/glibc.git/blobdiff - sysdeps/sparc/sparc64/fpu/multiarch/s_fmax.S
Allow IFUNC relocation against unrelocated shared library
[thirdparty/glibc.git] / sysdeps / sparc / sparc64 / fpu / multiarch / s_fmax.S
index f604f5b533442c68dae2b6e63f1094d28b65e544..d5e59d8d1ed6e874b3ff456d9cae348ad43e1815 100644 (file)
@@ -1,41 +1,7 @@
-#include <sysdep.h>
+#include <sparc-ifunc.h>
+
+SPARC_ASM_VIS3_IFUNC(fmax)
 
-       .text
-ENTRY(__fmax)
-       .type   __fmax, @gnu_indirect_function
-# ifdef SHARED
-       SETUP_PIC_REG_LEAF(o3, o5)
-# endif
-# ifdef HAVE_AS_VIS3_SUPPORT
-       set     HWCAP_SPARC_VIS3, %o1
-       andcc   %o0, %o1, %g0
-       be      9f
-        nop
-#  ifdef SHARED
-       sethi   %gdop_hix22(__fmax_vis3), %o1
-       xor     %o1, %gdop_lox10(__fmax_vis3), %o1
-#  else
-       set     __fmax_vis3, %o1
-#  endif
-       ba      10f
-        nop
-9:
-# endif
-# ifdef SHARED
-       sethi   %gdop_hix22(__fmax_generic), %o1
-       xor     %o1, %gdop_lox10(__fmax_generic), %o1
-# else
-       set     __fmax_generic, %o1
-# endif
-# ifdef HAVE_AS_VIS3_SUPPORT
-10:
-# endif
-# ifdef SHARED
-       add     %o3, %o1, %o1
-# endif
-       retl
-        mov    %o1, %o0
-END(__fmax)
 weak_alias (__fmax, fmax)
 
 # undef weak_alias