remove LFS64 symbol aliases; replace with dynamic linker remapping
[musl.git] / src / math / x86_64 / fabs.c
blob1656247770f778aba56e0620adbc3e8241a3e8ea
1 #include <math.h>
3 double fabs(double x)
5 double t;
6 __asm__ ("pcmpeqd %0, %0" : "=x"(t)); // t = ~0
7 __asm__ ("psrlq $1, %0" : "+x"(t)); // t >>= 1
8 __asm__ ("andps %1, %0" : "+x"(x) : "x"(t)); // x &= t
9 return x;