1570af302Sopenharmony_ci#include <math.h> 2570af302Sopenharmony_ci#include <stdint.h> 3570af302Sopenharmony_ci 4570af302Sopenharmony_cidouble fabs(double x) 5570af302Sopenharmony_ci{ 6570af302Sopenharmony_ci union {double f; uint64_t i;} u = {x}; 7570af302Sopenharmony_ci u.i &= -1ULL/2; 8570af302Sopenharmony_ci return u.f; 9570af302Sopenharmony_ci} 10