mirror of
https://github.com/fluencelabs/musl
synced 2025-07-04 00:51:59 +00:00
initial check-in, version 0.5.0
This commit is contained in:
16
src/math/__fpclassifyl.c
Normal file
16
src/math/__fpclassifyl.c
Normal file
@ -0,0 +1,16 @@
|
||||
#include <stdint.h>
|
||||
#include <math.h>
|
||||
|
||||
/* FIXME: move this to arch-specific file */
|
||||
int __fpclassifyl(long double __x)
|
||||
{
|
||||
union {
|
||||
long double __ld;
|
||||
__uint16_t __hw[5];
|
||||
__uint64_t __m;
|
||||
} __y = { __x };
|
||||
int __ee = __y.__hw[4]&0x7fff;
|
||||
if (!__ee) return __y.__m ? FP_SUBNORMAL : FP_ZERO;
|
||||
if (__ee==0x7fff) return __y.__m ? FP_NAN : FP_INFINITE;
|
||||
return FP_NORMAL;
|
||||
}
|
Reference in New Issue
Block a user