From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 127112 invoked by alias); 20 Jun 2018 02:04:52 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Received: (qmail 127097 invoked by uid 89); 20 Jun 2018 02:04:52 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-12.6 required=5.0 tests=BAYES_00,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 spammy=23292, reordered X-HELO: mx0a-001b2d01.pphosted.com From: Tulio Magno Quites Machado Filho To: libc-alpha@sourceware.org Cc: joseph@codesourcery.com Subject: [PATCHv2 00/12] Introduce ieee128 symbols and redirections Date: Wed, 20 Jun 2018 02:04:00 -0000 X-TM-AS-GCONF: 00 x-cbid: 18062002-0068-0000-0000-0000030B8D64 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009223; HX=3.00000241; KW=3.00000007; PH=3.00000004; SC=3.00000265; SDB=6.01049503; UDB=6.00537768; IPR=6.00828476; MB=3.00021748; MTD=3.00000008; XFM=3.00000015; UTC=2018-06-20 02:04:45 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18062002-0069-0000-0000-000044BE8C12 Message-Id: <20180620020426.20372-1-tuliom@linux.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-06-20_01:,, signatures=0 X-SW-Source: 2018-06/txt/msg00578.txt.bz2 Changes since v1: - Reordered the patch series: the first patches are generic, while the last ones affect only ldbl-128ibm-compat. - Added a patch to fix bug #23294. - Removed the symbols for __f64x*ieee128. - Added symbols for narrow functions __f32*ieee128 and __f64*ieee128. - Redirected narrow functions to __f*ieee128 - Stopped exporting internal functions __gamma_productieee128, __lgamma_negieee128, __lgamma_productieee128 and __x2y2m1ieee128; - Splitted both patches for scalb and significad in 2: 1 patch adding just the template and another one with the ldbl-128ibm-compat changes. - Replaced all generic implementations of w_scalb, w_scalb_compat, e_scalb and s_significand with templates. - Replaced the patch for __dremieee128 and __gamaieee128 with just macros in math/math.h. - Reworked completely the math-finite.h refactoring. It's now reusing math/bits/mathcalls.h. It also identifies the fix to bug #23292. Gabriel F. T. Gomes (1): ldbl-128ibm-compat: Provide nexttoward functions Rajalakshmi Srinivasaraghavan (1): ldbl-128ibm-compat: Redirect complex math functions Tulio Magno Quites Machado Filho (10): Undefine redirections after long double definition on __LDBL_COMPAT [BZ #23294] Move declare_mgen_finite_alias definition Add a generic scalb implementation Add a generic significand implementation Refactor math/bits/math-finite.h, reusing math/bits/mathcalls.h [BZ #23292] ldbl-128ibm-compat: Create libm-alias-float128.h ldbl-128ibm-compat: Provide a scalb implementation ldbl-128ibm-compat: Provide a significand implementation ldbl-128ibm-compat: Redirect long double functions to f128/ieee128 functions ldbl-128ibm-compat: Provide ieee128 symbols to narrow functions include/math.h | 12 +- math/Makefile | 12 +- math/bits/math-finite.h | 160 ++---- math/bits/mathcalls-helper-functions.h | 18 +- math/bits/mathcalls.h | 62 +-- math/complex.h | 29 +- math/e_exp2_template.c | 7 - math/{e_scalb.c => e_scalb_template.c} | 32 +- math/e_scalbf.c | 54 -- math/e_scalbl.c | 54 -- math/math-narrow.h | 10 + math/math.h | 548 ++++++++++++--------- math/s_significand.c | 34 -- math/s_significand_template.c | 33 ++ math/s_significandf.c | 27 - math/s_significandl.c | 34 -- ...{w_scalb_compat.c => w_scalb_compat_template.c} | 36 +- math/{w_scalbf_compat.c => w_scalb_template.c} | 54 +- math/w_scalbl_compat.c | 81 --- sysdeps/generic/math-type-macros-double.h | 1 + sysdeps/generic/math-type-macros-float.h | 1 + sysdeps/generic/math-type-macros-ldouble.h | 1 + sysdeps/generic/math-type-macros.h | 15 + sysdeps/ieee754/float128/w_scalbf128.c | 1 + sysdeps/ieee754/float128/w_scalbf128_compat.c | 1 + sysdeps/ieee754/ldbl-128ibm-compat/Versions | 127 +++++ sysdeps/ieee754/ldbl-128ibm-compat/e_scalbf128.c | 21 + .../ldbl-128ibm-compat/libm-alias-float128.h | 64 +++ .../ieee754/ldbl-128ibm-compat/s_nextafterf128.c | 20 + .../ieee754/ldbl-128ibm-compat/s_nexttowardf128.c | 38 ++ .../ieee754/ldbl-128ibm-compat/s_significandf128.c | 25 + sysdeps/ieee754/ldbl-128ibm-compat/w_scalbf128.c | 27 + sysdeps/ieee754/ldbl-128ibm/bits/iscanonical.h | 6 +- sysdeps/ieee754/ldbl-opt/s_significand.c | 5 - sysdeps/ieee754/ldbl-opt/s_significandl.c | 5 - sysdeps/ieee754/ldbl-opt/w_scalb_compat.c | 5 - sysdeps/ieee754/ldbl-opt/w_scalbl_compat.c | 5 - 37 files changed, 868 insertions(+), 797 deletions(-) rename math/{e_scalb.c => e_scalb_template.c} (64%) delete mode 100644 math/e_scalbf.c delete mode 100644 math/e_scalbl.c delete mode 100644 math/s_significand.c create mode 100644 math/s_significand_template.c delete mode 100644 math/s_significandf.c delete mode 100644 math/s_significandl.c rename math/{w_scalb_compat.c => w_scalb_compat_template.c} (69%) rename math/{w_scalbf_compat.c => w_scalb_template.c} (53%) delete mode 100644 math/w_scalbl_compat.c create mode 100644 sysdeps/ieee754/float128/w_scalbf128.c create mode 100644 sysdeps/ieee754/float128/w_scalbf128_compat.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/Versions create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/e_scalbf128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/libm-alias-float128.h create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/s_nextafterf128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/s_nexttowardf128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/s_significandf128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/w_scalbf128.c delete mode 100644 sysdeps/ieee754/ldbl-opt/s_significand.c delete mode 100644 sysdeps/ieee754/ldbl-opt/s_significandl.c delete mode 100644 sysdeps/ieee754/ldbl-opt/w_scalb_compat.c delete mode 100644 sysdeps/ieee754/ldbl-opt/w_scalbl_compat.c -- 2.14.4