about summary refs log tree commit diff
path: root/ChangeLog
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2015-09-24 22:25:30 +0000
committerJoseph Myers <joseph@codesourcery.com>2015-09-24 22:25:30 +0000
commitb2a64460ba9aca39e92731da67cc6344acb483bc (patch)
tree213e279495212accf939a0d03c10e16c131963cc /ChangeLog
parent1a19b8894f93878f99025096ec1d3b6af7db6f78 (diff)
downloadglibc-b2a64460ba9aca39e92731da67cc6344acb483bc.tar.gz
glibc-b2a64460ba9aca39e92731da67cc6344acb483bc.tar.xz
glibc-b2a64460ba9aca39e92731da67cc6344acb483bc.zip
Refactor x86_64 libm code forcing underflow exceptions.
This patch refactors code in sysdeps/x86_64/fpu that forces underflow
exceptions and closely follows corresponding i386 code to use common
macros in x86_64-math-asm.h for that purpose.  This is mainly about
keeping the code similar to the i386 code as far as possible, since
each macro apart from DEFINE_LDBL_MIN ends up used only once.  It
would be possible to do a further refactoring to share these macros
between i386 and x86_64 (with i386 using the fcomip / fucomip versions
when building for i686 and above), but I have no immediate plans to do
so.

Tested for x86_64.

	* sysdeps/x86_64/fpu/x86_64-math-asm.h: New file.
	* sysdeps/x86_64/fpu/e_exp2l.S: Include <x86_64-math-asm.h>.
	(ldbl_min): Replace with use of DEFINE_LDBL_MIN.
	(__ieee754_exp2l): Use LDBL_CHECK_FORCE_UFLOW_NONNEG_NAN.
	* sysdeps/x86_64/fpu/e_expl.S: Include <x86_64-math-asm.h>.
	[!USE_AS_EXPM1L] (cmin): Replace with use of DEFINE_LDBL_MIN.
	(IEEE754_EXPL): Use LDBL_CHECK_FORCE_UFLOW_NONNEG.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog8
1 files changed, 8 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 851dfc0918..4105a9ec77 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
 2015-09-24  Joseph Myers  <joseph@codesourcery.com>
 
+	* sysdeps/x86_64/fpu/x86_64-math-asm.h: New file.
+	* sysdeps/x86_64/fpu/e_exp2l.S: Include <x86_64-math-asm.h>.
+	(ldbl_min): Replace with use of DEFINE_LDBL_MIN.
+	(__ieee754_exp2l): Use LDBL_CHECK_FORCE_UFLOW_NONNEG_NAN.
+	* sysdeps/x86_64/fpu/e_expl.S: Include <x86_64-math-asm.h>.
+	[!USE_AS_EXPM1L] (cmin): Replace with use of DEFINE_LDBL_MIN.
+	(IEEE754_EXPL): Use LDBL_CHECK_FORCE_UFLOW_NONNEG.
+
 	* sysdeps/i386/fpu/e_atanh.S (__ieee754_atanh) [PIC]: Use
 	LOAD_PIC_REG.