<feed xmlns='http://www.w3.org/2005/Atom'>
<title>musl/src/math, branch v0.9.4</title>
<subtitle>musl - an implementation of the standard library for Linux-based systems</subtitle>
<link rel='alternate' type='text/html' href='http://git.musl-libc.org/cgit/musl/'/>
<entry>
<title>Merge remote-tracking branch 'nsz/exp'</title>
<updated>2012-08-14T01:55:22+00:00</updated>
<author>
<name>Rich Felker</name>
<email>dalias@aerifal.cx</email>
</author>
<published>2012-08-14T01:55:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.musl-libc.org/cgit/musl/commit/?id=2d93d6446191def352b8913e859d6104f1398c72'/>
<id>2d93d6446191def352b8913e859d6104f1398c72</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>remove significandl</title>
<updated>2012-08-13T20:00:31+00:00</updated>
<author>
<name>Rich Felker</name>
<email>dalias@aerifal.cx</email>
</author>
<published>2012-08-13T20:00:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.musl-libc.org/cgit/musl/commit/?id=ab76321c14e18e70c853f34202a567749292eafc'/>
<id>ab76321c14e18e70c853f34202a567749292eafc</id>
<content type='text'>
this function never existed historically; since the float/double
functions it's based on are nonstandard and deprecated, there's really
no justification for its existence except that glibc has it. it can be
added back if there's ever really a need...
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
this function never existed historically; since the float/double
functions it's based on are nonstandard and deprecated, there's really
no justification for its existence except that glibc has it. it can be
added back if there's ever really a need...
</pre>
</div>
</content>
</entry>
<entry>
<title>add significand[fl] math functions</title>
<updated>2012-08-13T18:51:43+00:00</updated>
<author>
<name>Rich Felker</name>
<email>dalias@aerifal.cx</email>
</author>
<published>2012-08-13T18:51:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.musl-libc.org/cgit/musl/commit/?id=2242bf616b893e85886ed0a2348b96bf1cf7623e'/>
<id>2242bf616b893e85886ed0a2348b96bf1cf7623e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>math: fix exp.s on i386 and x86_64 so the exception flags are correct</title>
<updated>2012-08-08T18:18:16+00:00</updated>
<author>
<name>nsz</name>
<email>nsz@port70.net</email>
</author>
<published>2012-08-08T18:18:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.musl-libc.org/cgit/musl/commit/?id=1fb01691547e85be253a4f1543be3920de651e27'/>
<id>1fb01691547e85be253a4f1543be3920de651e27</id>
<content type='text'>
exp(inf), exp(-inf), exp(nan) used to raise wrong flags
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
exp(inf), exp(-inf), exp(nan) used to raise wrong flags
</pre>
</div>
</content>
</entry>
<entry>
<title>fix missing prototype and simplify sincosl on ld64 archs</title>
<updated>2012-07-03T00:25:28+00:00</updated>
<author>
<name>Rich Felker</name>
<email>dalias@aerifal.cx</email>
</author>
<published>2012-07-03T00:25:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.musl-libc.org/cgit/musl/commit/?id=007c03f84f5c4666d7260a53d67249ce4bccc140'/>
<id>007c03f84f5c4666d7260a53d67249ce4bccc140</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix invalid implicit pointer conversion in ld64 modfl</title>
<updated>2012-07-03T00:22:50+00:00</updated>
<author>
<name>Rich Felker</name>
<email>dalias@aerifal.cx</email>
</author>
<published>2012-07-03T00:22:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.musl-libc.org/cgit/musl/commit/?id=fe2df4ad3ea6080d01dea8d836cd4bbc896160fd'/>
<id>fe2df4ad3ea6080d01dea8d836cd4bbc896160fd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>math: fix fma bug on x86 (found by Bruno Haible with gnulib)</title>
<updated>2012-06-20T21:25:58+00:00</updated>
<author>
<name>nsz</name>
<email>nsz@port70.net</email>
</author>
<published>2012-06-20T21:25:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.musl-libc.org/cgit/musl/commit/?id=e5fb6820a42a1f675ba09c15273953e1ace65777'/>
<id>e5fb6820a42a1f675ba09c15273953e1ace65777</id>
<content type='text'>
The long double adjustment was wrong:
The usual check is
  mant_bits &amp; 0x7ff == 0x400
before doing a mant_bits++ or mant_bits-- adjustment since
this is the only case when rounding an inexact ld80 into
double can go wrong. (only in nearest rounding mode)

After such a check the ++ and -- is ok (the mantissa will end
in 0x401 or 0x3ff).

fma is a bit different (we need to add 3 numbers with correct
rounding: hi_xy + lo_xy + z so we should survive two roundings
at different places without precision loss)

The adjustment in fma only checks for zero low bits
  mant_bits &amp; 0x3ff == 0
this way the adjusted value is correct when rounded to
double or *less* precision.
(this is an important piece in the fma puzzle)

Unfortunately in this case the -- is not a correct adjustment
because mant_bits might underflow so further checks are needed
and this was the source of the bug.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The long double adjustment was wrong:
The usual check is
  mant_bits &amp; 0x7ff == 0x400
before doing a mant_bits++ or mant_bits-- adjustment since
this is the only case when rounding an inexact ld80 into
double can go wrong. (only in nearest rounding mode)

After such a check the ++ and -- is ok (the mantissa will end
in 0x401 or 0x3ff).

fma is a bit different (we need to add 3 numbers with correct
rounding: hi_xy + lo_xy + z so we should survive two roundings
at different places without precision loss)

The adjustment in fma only checks for zero low bits
  mant_bits &amp; 0x3ff == 0
this way the adjusted value is correct when rounded to
double or *less* precision.
(this is an important piece in the fma puzzle)

Unfortunately in this case the -- is not a correct adjustment
because mant_bits might underflow so further checks are needed
and this was the source of the bug.
</pre>
</div>
</content>
</entry>
<entry>
<title>support ld80 pseudo-denormal invalid bit patterns; treat them as nan</title>
<updated>2012-06-20T19:15:10+00:00</updated>
<author>
<name>Rich Felker</name>
<email>dalias@aerifal.cx</email>
</author>
<published>2012-06-20T19:15:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.musl-libc.org/cgit/musl/commit/?id=fad231b9609470e4c51b29b6bcb9abd23b7e9346'/>
<id>fad231b9609470e4c51b29b6bcb9abd23b7e9346</id>
<content type='text'>
this is silly, but it makes apps that read binary junk and interpret
it as ld80 "safer", and it gets gnulib to stop replacing printf...
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
this is silly, but it makes apps that read binary junk and interpret
it as ld80 "safer", and it gets gnulib to stop replacing printf...
</pre>
</div>
</content>
</entry>
<entry>
<title>use fistpll mnemonic instead of fistpq (more widely supported) on x86_64 too</title>
<updated>2012-06-02T20:48:22+00:00</updated>
<author>
<name>Rich Felker</name>
<email>dalias@aerifal.cx</email>
</author>
<published>2012-06-02T20:48:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.musl-libc.org/cgit/musl/commit/?id=19e48c5531fda9c4767b99b754cb9345902dd100'/>
<id>19e48c5531fda9c4767b99b754cb9345902dd100</id>
<content type='text'>
this was fixed previously on i386 but the corresponding code on x86_64
was missed.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
this was fixed previously on i386 but the corresponding code on x86_64
was missed.
</pre>
</div>
</content>
</entry>
<entry>
<title>math: fix remquo.c when x==-y and a subnormal remainder bug as well</title>
<updated>2012-05-07T22:22:56+00:00</updated>
<author>
<name>nsz</name>
<email>nsz@port70.net</email>
</author>
<published>2012-05-07T22:22:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.musl-libc.org/cgit/musl/commit/?id=3738a96e052603403e085e9a1024289ba3e09188'/>
<id>3738a96e052603403e085e9a1024289ba3e09188</id>
<content type='text'>
backported fix from freebsd:
http://svnweb.FreeBSD.org/base?view=revision&amp;revision=233973
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
backported fix from freebsd:
http://svnweb.FreeBSD.org/base?view=revision&amp;revision=233973
</pre>
</div>
</content>
</entry>
</feed>
