[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Patches] FSF merges 2011-11-17
- To: patches@xxxxxxxxxx
- Subject: [Patches] FSF merges 2011-11-17
- From: "Joseph S. Myers" <joseph@xxxxxxxxxxxxxxxx>
- Date: Thu, 17 Nov 2011 22:12:45 +0000 (UTC)
I've done merges from FSF to EGLIBC trunk and 2.11 through 2.14 branches.
This brings in to trunk a merge of the much-delayed FSF glibc version of
the fix to declare long double functions when double and long double have
the same representation and alignment. Where this fix differed in
semantics from the version already in EGLIBC, I kept the EGLIBC version.
The difference is that the version in EGLIBC will use __asm__ declarations
to redirect calls to the long double functions to their double
counterparts for __NO_LONG_DOUBLE_MATH.
Although logically there is no need for that redirecting unless
__LDBL_COMPAT, as I described in
<http://www.eglibc.org/archives/patches/msg01021.html> those asm
declarations serve a secondary purpose of preventing the subsequent asm
declarations using *l_finite names from taking effect - and since the
*l_finite functions do not exist, those subsequent asm declarations would
break things if they did take effect. So I don't think the version in FSF
glibc is safe in this case (__NO_LONG_DOUBLE_MATH, not __LDBL_COMPAT,
-ffinite-math-only, using a long double function bits/math-finite.h maps
to *l_finite) and have kept the EGLIBC version instead. (This doesn't
make any difference to complex.h since that doesn't have *_finite
versions, but I kept the EGLIBC version there as well for consistency.)
--
Joseph S. Myers
joseph@xxxxxxxxxxxxxxxx
_______________________________________________
Patches mailing list
Patches@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/patches