1. 23 2月, 2014 2 次提交
  2. 05 9月, 2013 2 次提交
    • S
      math: fix expm1l on x86_64 (avoid underflow for large negative x) · 02343946
      Szabolcs Nagy 提交于
      copy the fix from i386: return -1 instead of exp2l(x)-1 when x <= -65
      02343946
    • S
      math: fix exp2l asm on x86 (raise underflow correctly) · 07039ed8
      Szabolcs Nagy 提交于
      there were two problems:
      * omitted underflow on subnormal results: exp2l(-16383.5) was calculated
      as sqrt(2)*2^-16384, the last bits of sqrt(2) are zero so the down scaling
      does not underflow eventhough the result is in subnormal range
      * spurious underflow for subnormal inputs: exp2l(0x1p-16400) was evaluated
      as f2xm1(x)+1 and f2xm1 raised underflow (because inexact subnormal result)
      
      the first issue is fixed by raising underflow manually if x is in
      (-32768,-16382] and not integer (x-0x1p63+0x1p63 != x)
      
      the second issue is fixed by treating x in (-0x1p64,0x1p64) specially
      
      for these fixes the special case handling was completely rewritten
      07039ed8
  3. 17 12月, 2012 1 次提交
  4. 21 3月, 2012 1 次提交
    • R
      x86_64 math asm, long double functions only · 30df206c
      Rich Felker 提交于
      this has not been tested heavily, but it's known to at least assemble
      and run in basic usage cases. it's nearly identical to the
      corresponding i386 code, and thus expected to be just as correct or
      just as incorrect.
      30df206c