<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/glibc.git/math/s_fma.c, branch azanella/aarch64-split-stack</title>
<subtitle>sourceware.org: git/glibc.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/glibc.git/'/>
<entry>
<title>Update copyright dates with scripts/update-copyrights.</title>
<updated>2018-01-01T00:32:25+00:00</updated>
<author>
<name>Joseph Myers</name>
<email>joseph@codesourcery.com</email>
</author>
<published>2018-01-01T00:32:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/glibc.git/commit/?id=688903eb3ef01301d239ab753d309d45720610a7'/>
<id>688903eb3ef01301d239ab753d309d45720610a7</id>
<content type='text'>
	* All files with FSF copyright notices: Update copyright dates
	using scripts/update-copyrights.
	* locale/programs/charmap-kw.h: Regenerated.
	* locale/programs/locfile-kw.h: Likewise.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* All files with FSF copyright notices: Update copyright dates
	using scripts/update-copyrights.
	* locale/programs/charmap-kw.h: Regenerated.
	* locale/programs/locfile-kw.h: Likewise.
</pre>
</div>
</content>
</entry>
<entry>
<title>Use libm_alias_double in math/.</title>
<updated>2017-09-15T23:10:02+00:00</updated>
<author>
<name>Joseph Myers</name>
<email>joseph@codesourcery.com</email>
</author>
<published>2017-09-15T23:10:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/glibc.git/commit/?id=9ac44708881c086f27f86b36c20749052d079c8f'/>
<id>9ac44708881c086f27f86b36c20749052d079c8f</id>
<content type='text'>
This patch converts libm function implementations in math/ from using
weak_alias to using libm_alias_double to define public function names,
in cases where it would be appropriate to define _Float64 / _Float32x
aliases for those functions as well.  This eliminates many
NO_LONG_DOUBLE conditionals and ldbl-opt wrappers round these function
implementations.

Tested for x86_64.  Also tested with build-many-glibcs.py.  Binary
differences seen are that the different order in which remainder and
drem symbols get defined as a result of this patch (the same source
file defines the same aliases, but in a different order of definition)
changes the order of symbols in the final libm.so when long double =
double, and for ldbl-opt configurations, the compat symbols for Bessel
functions were previously defined by e.g. "compat_symbol (libm, j0,
j0l, GLIBC_2_0)", which declares j0l as a compat symbol based on j0
and so makes j0l weak because j0 is weak, and are now defined
(indirectly via the relevant macros) based on e.g. __j0, so are no
longer weak because __j0 isn't weak.

	* math/s_fma.c: Include &lt;libm-alias-double.h&gt;.
	(fma): Define using libm_alias_double.
	* math/s_nextafter.c: Include &lt;libm-alias-double.h&gt;.
	(nextafter): Define using libm_alias_double.
	* math/w_acos_compat.c: Include &lt;libm-alias-double.h&gt;.
	(acos): Define using libm_alias_double.
	* math/w_acosh_compat.c: Include &lt;libm-alias-double.h&gt;.
	(aocsh): Define using libm_alias_double.
	* math/w_asin_compat.c: Include &lt;libm-alias-double.h&gt;.
	(asin): Define using libm_alias_double.
	* math/w_atan2_compat.c: Include &lt;libm-alias-double.h&gt;.
	(atan2): Define using libm_alias_double.
	* math/w_atanh_compat.c: Include &lt;libm-alias-double.h&gt;.
	(atanh): Define using libm_alias_double.
	* math/w_cosh_compat.c: Include &lt;libm-alias-double.h&gt;.
	(cosh): Define using libm_alias_double.
	* math/w_exp10_compat.c: Include &lt;libm-alias-double.h&gt;.
	(exp10): Define using libm_alias_double.
	* math/w_exp2_compat.c: Include &lt;libm-alias-double.h&gt;.
	(exp2): Define using libm_alias_double.
	* math/w_exp_compat.c: Include &lt;libm-alias-double.h&gt;.
	(exp): Define using libm_alias_double.
	* math/w_fmod_compat.c: Include &lt;libm-alias-double.h&gt;.
	(fmod): Define using libm_alias_double.
	* math/w_hypot_compat.c: Include &lt;libm-alias-double.h&gt;.
	(hypot): Define using libm_alias_double.
	* math/w_j0_compat.c: Include &lt;libm-alias-double.h&gt;.
	(j0): Define using libm_alias_double.
	(y0): Likewise.
	* math/w_j1_compat.c: Include &lt;libm-alias-double.h&gt;.
	(j1): Define using libm_alias_double.
	(y1): Likewise.
	* math/w_jn_compat.c: Include &lt;libm-alias-double.h&gt;.
	(jn): Define using libm_alias_double.
	(yn): Likewise.
	* math/w_log10_compat.c: Include &lt;libm-alias-double.h&gt;.
	(log10): Define using libm_alias_double.
	* math/w_log2_compat.c: Include &lt;libm-alias-double.h&gt;.
	(log2): Define using libm_alias_double.
	* math/w_log_compat.c: Include &lt;libm-alias-double.h&gt;.
	(log): Define using libm_alias_double.
	* math/w_pow_compat.c: Include &lt;libm-alias-double.h&gt;.
	(pow): Define using libm_alias_double.
	* math/w_remainder_compat.c: Include &lt;libm-alias-double.h&gt;.
	(remainder): Define using libm_alias_double.
	* math/w_sinh_compat.c: Include &lt;libm-alias-double.h&gt;.
	(sinh): Define using libm_alias_double.
	* math/w_sqrt_compat.c: Include &lt;libm-alias-double.h&gt;.
	(sqrt): Define using libm_alias_double.
	* math/w_tgamma_compat.c: Include &lt;libm-alias-double.h&gt;.
	(tgamma): Define using libm_alias_double.
	* sysdeps/ieee754/ldbl-opt/s_nextafter.c [LONG_DOUBLE_COMPAT(libm,
	GLIBC_2_0)] (nextafterl): Do not define compat symbol here.
	* sysdeps/ieee754/ldbl-opt/w_exp10_compat.c
	[LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)] (exp10l): Likewise.
	* sysdeps/ieee754/ldbl-opt/w_remainder_compat.c
	[LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)] (remainderl): Likewise.
	* sysdeps/ieee754/ldbl-opt/w_acos_compat.c: Remove.
	* sysdeps/ieee754/ldbl-opt/w_acosh_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_asin_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_atan2_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_atanh_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_cosh_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_exp_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_fmod_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_hypot_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_j0_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_j1_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_jn_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_log10_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_log2_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_log_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_pow_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_sinh_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_sqrt_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_tgamma_compat.c: Likewise.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch converts libm function implementations in math/ from using
weak_alias to using libm_alias_double to define public function names,
in cases where it would be appropriate to define _Float64 / _Float32x
aliases for those functions as well.  This eliminates many
NO_LONG_DOUBLE conditionals and ldbl-opt wrappers round these function
implementations.

Tested for x86_64.  Also tested with build-many-glibcs.py.  Binary
differences seen are that the different order in which remainder and
drem symbols get defined as a result of this patch (the same source
file defines the same aliases, but in a different order of definition)
changes the order of symbols in the final libm.so when long double =
double, and for ldbl-opt configurations, the compat symbols for Bessel
functions were previously defined by e.g. "compat_symbol (libm, j0,
j0l, GLIBC_2_0)", which declares j0l as a compat symbol based on j0
and so makes j0l weak because j0 is weak, and are now defined
(indirectly via the relevant macros) based on e.g. __j0, so are no
longer weak because __j0 isn't weak.

	* math/s_fma.c: Include &lt;libm-alias-double.h&gt;.
	(fma): Define using libm_alias_double.
	* math/s_nextafter.c: Include &lt;libm-alias-double.h&gt;.
	(nextafter): Define using libm_alias_double.
	* math/w_acos_compat.c: Include &lt;libm-alias-double.h&gt;.
	(acos): Define using libm_alias_double.
	* math/w_acosh_compat.c: Include &lt;libm-alias-double.h&gt;.
	(aocsh): Define using libm_alias_double.
	* math/w_asin_compat.c: Include &lt;libm-alias-double.h&gt;.
	(asin): Define using libm_alias_double.
	* math/w_atan2_compat.c: Include &lt;libm-alias-double.h&gt;.
	(atan2): Define using libm_alias_double.
	* math/w_atanh_compat.c: Include &lt;libm-alias-double.h&gt;.
	(atanh): Define using libm_alias_double.
	* math/w_cosh_compat.c: Include &lt;libm-alias-double.h&gt;.
	(cosh): Define using libm_alias_double.
	* math/w_exp10_compat.c: Include &lt;libm-alias-double.h&gt;.
	(exp10): Define using libm_alias_double.
	* math/w_exp2_compat.c: Include &lt;libm-alias-double.h&gt;.
	(exp2): Define using libm_alias_double.
	* math/w_exp_compat.c: Include &lt;libm-alias-double.h&gt;.
	(exp): Define using libm_alias_double.
	* math/w_fmod_compat.c: Include &lt;libm-alias-double.h&gt;.
	(fmod): Define using libm_alias_double.
	* math/w_hypot_compat.c: Include &lt;libm-alias-double.h&gt;.
	(hypot): Define using libm_alias_double.
	* math/w_j0_compat.c: Include &lt;libm-alias-double.h&gt;.
	(j0): Define using libm_alias_double.
	(y0): Likewise.
	* math/w_j1_compat.c: Include &lt;libm-alias-double.h&gt;.
	(j1): Define using libm_alias_double.
	(y1): Likewise.
	* math/w_jn_compat.c: Include &lt;libm-alias-double.h&gt;.
	(jn): Define using libm_alias_double.
	(yn): Likewise.
	* math/w_log10_compat.c: Include &lt;libm-alias-double.h&gt;.
	(log10): Define using libm_alias_double.
	* math/w_log2_compat.c: Include &lt;libm-alias-double.h&gt;.
	(log2): Define using libm_alias_double.
	* math/w_log_compat.c: Include &lt;libm-alias-double.h&gt;.
	(log): Define using libm_alias_double.
	* math/w_pow_compat.c: Include &lt;libm-alias-double.h&gt;.
	(pow): Define using libm_alias_double.
	* math/w_remainder_compat.c: Include &lt;libm-alias-double.h&gt;.
	(remainder): Define using libm_alias_double.
	* math/w_sinh_compat.c: Include &lt;libm-alias-double.h&gt;.
	(sinh): Define using libm_alias_double.
	* math/w_sqrt_compat.c: Include &lt;libm-alias-double.h&gt;.
	(sqrt): Define using libm_alias_double.
	* math/w_tgamma_compat.c: Include &lt;libm-alias-double.h&gt;.
	(tgamma): Define using libm_alias_double.
	* sysdeps/ieee754/ldbl-opt/s_nextafter.c [LONG_DOUBLE_COMPAT(libm,
	GLIBC_2_0)] (nextafterl): Do not define compat symbol here.
	* sysdeps/ieee754/ldbl-opt/w_exp10_compat.c
	[LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)] (exp10l): Likewise.
	* sysdeps/ieee754/ldbl-opt/w_remainder_compat.c
	[LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)] (remainderl): Likewise.
	* sysdeps/ieee754/ldbl-opt/w_acos_compat.c: Remove.
	* sysdeps/ieee754/ldbl-opt/w_acosh_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_asin_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_atan2_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_atanh_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_cosh_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_exp_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_fmod_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_hypot_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_j0_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_j1_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_jn_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_log10_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_log2_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_log_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_pow_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_sinh_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_sqrt_compat.c: Likewise.
	* sysdeps/ieee754/ldbl-opt/w_tgamma_compat.c: Likewise.
</pre>
</div>
</content>
</entry>
<entry>
<title>Update copyright dates with scripts/update-copyrights.</title>
<updated>2017-01-01T00:14:16+00:00</updated>
<author>
<name>Joseph Myers</name>
<email>joseph@codesourcery.com</email>
</author>
<published>2017-01-01T00:14:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/glibc.git/commit/?id=bfff8b1becd7d01c074177df7196ab327cd8c844'/>
<id>bfff8b1becd7d01c074177df7196ab327cd8c844</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update copyright dates with scripts/update-copyrights.</title>
<updated>2016-01-04T16:05:18+00:00</updated>
<author>
<name>Joseph Myers</name>
<email>joseph@codesourcery.com</email>
</author>
<published>2016-01-04T16:05:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/glibc.git/commit/?id=f7a9f785e547bd599dee496fd906a28bcb4ec7fe'/>
<id>f7a9f785e547bd599dee496fd906a28bcb4ec7fe</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update copyright dates with scripts/update-copyrights.</title>
<updated>2015-01-02T16:29:47+00:00</updated>
<author>
<name>Joseph Myers</name>
<email>joseph@codesourcery.com</email>
</author>
<published>2015-01-02T16:28:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/glibc.git/commit/?id=b168057aaacf1d149246d0eb3e84332492d35063'/>
<id>b168057aaacf1d149246d0eb3e84332492d35063</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update copyright notices with scripts/update-copyrights</title>
<updated>2014-01-01T12:00:23+00:00</updated>
<author>
<name>Allan McRae</name>
<email>allan@archlinux.org</email>
</author>
<published>2014-01-01T11:03:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/glibc.git/commit/?id=d4697bc93dc27a7bbf275ce7dd351bb1bfcf28de'/>
<id>d4697bc93dc27a7bbf275ce7dd351bb1bfcf28de</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update copyright notices with scripts/update-copyrights.</title>
<updated>2013-01-02T19:05:09+00:00</updated>
<author>
<name>Joseph Myers</name>
<email>joseph@codesourcery.com</email>
</author>
<published>2013-01-02T19:01:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/glibc.git/commit/?id=568035b7874a099087b77f7bba3e36a1173787b0'/>
<id>568035b7874a099087b77f7bba3e36a1173787b0</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Replace FSF snail mail address with URLs.</title>
<updated>2012-02-09T23:18:22+00:00</updated>
<author>
<name>Paul Eggert</name>
<email>eggert@cs.ucla.edu</email>
</author>
<published>2012-02-09T23:18:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/glibc.git/commit/?id=59ba27a63ada3f46b71ec99a314dfac5a38ad6d2'/>
<id>59ba27a63ada3f46b71ec99a314dfac5a38ad6d2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add support for x86-64 fma instruction.</title>
<updated>2009-07-29T22:26:06+00:00</updated>
<author>
<name>Ulrich Drepper</name>
<email>drepper@redhat.com</email>
</author>
<published>2009-07-29T22:26:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/glibc.git/commit/?id=78c4ef475d47a2289635f74b726f52defedb4651'/>
<id>78c4ef475d47a2289635f74b726f52defedb4651</id>
<content type='text'>
Use it to implement fma and fmaf, if possible.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use it to implement fma and fmaf, if possible.
</pre>
</div>
</content>
</entry>
<entry>
<title>Moved to csu/errno-loc.c.</title>
<updated>2005-12-14T15:06:39+00:00</updated>
<author>
<name>Ulrich Drepper</name>
<email>drepper@redhat.com</email>
</author>
<published>2005-12-14T15:06:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/glibc.git/commit/?id=9d13fb2413921c713f83efe331e8e4d219c62c6b'/>
<id>9d13fb2413921c713f83efe331e8e4d219c62c6b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
