1. 25 3月, 2012 3 次提交
  2. 23 3月, 2012 5 次提交
  3. 22 3月, 2012 3 次提交
    • N
      acos.s fix: use the formula acos(x) = atan2(sqrt(1-x),sqrt(1+x)) · a4a0c912
      nsz 提交于
      the old formula atan2(1,sqrt((1+x)/(1-x))) was faster but
      could give nan result at x=1 when the rounding mode is
      FE_DOWNWARD (so 1-1 == -0 and 2/-0 == -inf), the new formula
      gives -0 at x=+-1 with downward rounding.
      a4a0c912
    • R
      2e0c1fed
    • R
      fix DECIMAL_DIG definitions · 47db8903
      Rich Felker 提交于
      DECIMAL_DIG is not the same as LDBL_DIG
      
      type_DIG is the maximimum number of decimal digits that can survive a
      round trip from decimal to type and back to decimal.
      
      DECIMAL_DIG is the minimum number of decimal digits required in order
      for any floating point type to survive the round trip to decimal and
      back, and it is generally larger than LDBL_DIG. since the exact
      formula is non-trivial, and defining it larger than necessary may be
      legal but wasteful, just define the right value in bits/float.h.
      47db8903
  4. 21 3月, 2012 9 次提交
    • R
      initial, very primitive strfmon · 25501c10
      Rich Felker 提交于
      25501c10
    • 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
    • R
      limits.h: support gcc's -funsigned-char · 80949ccd
      Rich Felker 提交于
      some software apparently uses this and breaks with musl due to
      mismatching definitions...
      80949ccd
    • R
      Merge remote branch 'nsz/master' · 58bf7485
      Rich Felker 提交于
      58bf7485
    • R
      upgrade to latest upstream TRE regex code (0.8.0) · ad47d45e
      Rich Felker 提交于
      the main practical results of this change are
      1. the regex code is no longer subject to LGPL; it's now 2-clause BSD
      2. most (all?) popular nonstandard regex extensions are supported
      
      I hesitate to call this a "sync" since both the old and new code are
      heavily modified. in one sense, the old code was "more severely"
      modified, in that it was actively hostile to non-strictly-conforming
      expressions. on the other hand, the new code has eliminated the
      useless translation of the entire regex string to wchar_t prior to
      compiling, and now only converts multibyte character literals as
      needed.
      
      in the future i may use this modified TRE as a basis for writing the
      long-planned new regex engine that will avoid multibyte-to-wide
      character conversion entirely by compiling multibyte bracket
      expressions specific to UTF-8.
      ad47d45e
    • N
      nearbyint optimization (only clear inexact when necessary) · 91c28f61
      nsz 提交于
      old code saved/restored the fenv (the new code is only as slow
      as that when inexact is not set before the call, but some other
      flag is set and the rounding is inexact, which is rare)
      
      before:
      bench_nearbyint_exact              5000000 N        261 ns/op
      bench_nearbyint_inexact_set        5000000 N        262 ns/op
      bench_nearbyint_inexact_unset      5000000 N        261 ns/op
      
      after:
      bench_nearbyint_exact             10000000 N         94.99 ns/op
      bench_nearbyint_inexact_set       25000000 N         65.81 ns/op
      bench_nearbyint_inexact_unset     10000000 N         94.97 ns/op
      91c28f61
    • N
      remove a fixme comment · 8c6fc860
      nsz 提交于
      8c6fc860
    • N
      clean up pow.c and powf.c · f1347a3a
      nsz 提交于
      fix comments about special cases
      f1347a3a
    • N
      clean up powl.c · 615bbd36
      nsz 提交于
      fix special cases, use multiplication instead of scalbnl
      615bbd36
  5. 20 3月, 2012 20 次提交