From 6f2e90e78f151bab153c2b38492505ae2012db06 Mon Sep 17 00:00:00 2001 From: Siddhesh Poyarekar Date: Tue, 26 Mar 2013 19:28:50 +0530 Subject: Make mantissa type of mp_no configurable The mantissa of mp_no is intended to take only integral values. This is a relatively good choice for powerpc due to its 4 fpus, but not for other architectures, which suffer due to this choice. This change makes the default mantissa a long integer and allows powerpc to override it. Additionally, some operations have been optimized for integer manipulation, resulting in a significant improvement in performance. --- ChangeLog | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'ChangeLog') diff --git a/ChangeLog b/ChangeLog index 2fab9b0551..4448647357 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,22 @@ +2013-03-26 Siddhesh Poyarekar + + * sysdeps/ieee754/dbl-64/mpa-arch.h: New file. + * sysdeps/ieee754/dbl-64/mpa.c (norm): Use MANTISSA_T and + MANTISSA_STORE_T to store computations on mantissa. Use + macros for rounding and division. + (denorm): Likewise. + (__dbl_mp): Likewise. + (add_magnitudes): Likewise. + (sub_magnitudes): Likewise. + (__mul): Likewise. + (__sqr): Likewise. + * sysdeps/ieee754/dbl-64/mpa.h: Include mpa-arch.h. Define + powers of two in terms of TWOPOW macro. + (mp_no): Make type of mantissa as MANTISSA_T. + [!RADIXI]: Define RADIXI. + [!TWO52]: Define TWO52. + * sysdeps/powerpc/power4/fpu/mpa-arch.h: New file. + 2013-03-25 Adhemerval Zanella * sysdeps/powerpc/fpu/s_llround.c: Fix libm ABI issue with missing -- cgit v1.2.3