• S
    math: fix asin, atan, log1p, tanh to raise underflow on subnormal · c599f4f4
    Szabolcs Nagy 提交于
    for these functions f(x)=x for small inputs, because f(0)=0 and
    f'(0)=1, but for subnormal values they should raise the underflow
    flag (required by annex F), if they are approximated by a polynomial
    around 0 then spurious underflow should be avoided (not required by
    annex F)
    
    all these functions should raise inexact flag for small x if x!=0,
    but it's not required by the standard and it does not seem a worthy
    goal, so support for it is removed in some cases.
    
    raising underflow:
    - x*x may not raise underflow for subnormal x if FLT_EVAL_METHOD!=0
    - x*x may raise spurious underflow for normal x if FLT_EVAL_METHOD==0
    - in case of double subnormal x, store x as float
    - in case of float subnormal x, store x*x as float
    c599f4f4
asinf.c 1.4 KB