From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pf1-x42b.google.com (mail-pf1-x42b.google.com [IPv6:2607:f8b0:4864:20::42b]) by sourceware.org (Postfix) with ESMTPS id AD49A395542D for ; Tue, 22 Jun 2021 22:36:15 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org AD49A395542D Received: by mail-pf1-x42b.google.com with SMTP id i6so723044pfq.1 for ; Tue, 22 Jun 2021 15:36:15 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=aF524D0qsUw+4QvSrQ1Cv5jr60ozVCGmgbKgHVMSaSs=; b=tFdVwNxHqKiBhwMTcXlwhwO4KqVKkRA1Fb2sQpocllX+sXMWfZtKmqwXUNGkebtycm /ub5HMNXgOy06QL9bFkRciXH+gLpN4NF1Wclws8CsfSExvnA+f9SUHQxBqtSY1+EbYKW iumaKRj6zCl5z2X+oAgdn4R15RXNGljKgdsJK2xnVHh+T5LJ2PzaNxg3zEbxzX8ktY+7 Kv3mxORogj2Cbho8EiobjYIk9rqlH1kZjCOsFJeRrZscCGpfG5UeU6iGmSEigpHfPctT GDa1T3c/89Vwha6mU0HngP0xdWRWVT6EFT51TI5LxrXrnUx1kCOPCgdlVvMahKG00IKT qnKw== X-Gm-Message-State: AOAM533xDmO8TkretsGlmte/urz5JD5+1dhEKMPmP6Hrpq3S98Nf09Up lJE2Uai/uj9H8NxXC3E3h1utwHjhz2vvWisdnno= X-Google-Smtp-Source: ABdhPJxnw/UcSgztKTXawDAJ2IwBVQ/eqnKC5oJGYwaprri7FOsD9Cm+UL3j210bh1JcEBL6krdvqStrE1tOv3heQKE= X-Received: by 2002:a62:1657:0:b029:301:af69:5ae3 with SMTP id 84-20020a6216570000b0290301af695ae3mr5721845pfw.57.1624401374805; Tue, 22 Jun 2021 15:36:14 -0700 (PDT) MIME-Version: 1.0 References: <20210524014312.4111807-1-ibmibmibm.tw@gmail.com> In-Reply-To: From: "H.J. Lu" Date: Tue, 22 Jun 2021 15:35:39 -0700 Message-ID: Subject: Re: [PATCH v7 1/3] math: redirect roundeven function To: Shen-Ta Hsieh Cc: GNU C Library Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-3031.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Jun 2021 22:36:17 -0000 On Tue, May 25, 2021 at 5:02 AM H.J. Lu wrote: > > On Sun, May 23, 2021 at 6:43 PM Shen-Ta Hsieh wrote: > > > > This patch redirect roundeven function for futhermore changes. > > > > Signed-off-by: Shen-Ta Hsieh > > --- > > include/math.h | 2 +- > > sysdeps/ieee754/dbl-64/s_roundeven.c | 4 +++- > > sysdeps/ieee754/float128/s_roundevenf128.c | 1 + > > sysdeps/ieee754/flt-32/s_roundevenf.c | 3 +++ > > sysdeps/ieee754/ldbl-128/s_roundevenl.c | 1 + > > sysdeps/ieee754/ldbl-96/s_roundevenl.c | 1 + > > 6 files changed, 10 insertions(+), 2 deletions(-) > > > > diff --git a/include/math.h b/include/math.h > > index e1c2a4eb64..b4772d3d3b 100644 > > --- a/include/math.h > > +++ b/include/math.h > > @@ -38,7 +38,6 @@ libm_hidden_proto (__issignaling) > > libm_hidden_proto (__issignalingf) > > libm_hidden_proto (__exp) > > libm_hidden_proto (__expf) > > -libm_hidden_proto (__roundeven) > > > > # if !defined __NO_LONG_DOUBLE_MATH \ > > && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0 > > @@ -159,6 +158,7 @@ fabsf128 (_Float128 x) > > MATH_REDIRECT (sqrt, "__ieee754_", MATH_REDIRECT_UNARY_ARGS) > > MATH_REDIRECT (ceil, "__", MATH_REDIRECT_UNARY_ARGS) > > MATH_REDIRECT (floor, "__", MATH_REDIRECT_UNARY_ARGS) > > +MATH_REDIRECT (roundeven, "__", MATH_REDIRECT_UNARY_ARGS) > > MATH_REDIRECT (rint, "__", MATH_REDIRECT_UNARY_ARGS) > > MATH_REDIRECT (trunc, "__", MATH_REDIRECT_UNARY_ARGS) > > MATH_REDIRECT (round, "__", MATH_REDIRECT_UNARY_ARGS) > > diff --git a/sysdeps/ieee754/dbl-64/s_roundeven.c b/sysdeps/ieee754/dbl-64/s_roundeven.c > > index 943b2c634c..5deff3bb8a 100644 > > --- a/sysdeps/ieee754/dbl-64/s_roundeven.c > > +++ b/sysdeps/ieee754/dbl-64/s_roundeven.c > > @@ -16,6 +16,7 @@ > > License along with the GNU C Library; if not, see > > . */ > > > > +#define NO_MATH_REDIRECT > > #include > > #include > > #include > > @@ -66,5 +67,6 @@ __roundeven (double x) > > INSERT_WORDS64 (x, ix); > > return x; > > } > > -hidden_def (__roundeven) > > +#ifndef __roundeven > > libm_alias_double (__roundeven, roundeven) > > +#endif > > diff --git a/sysdeps/ieee754/float128/s_roundevenf128.c b/sysdeps/ieee754/float128/s_roundevenf128.c > > index 5a9b3f395f..e0faf727f6 100644 > > --- a/sysdeps/ieee754/float128/s_roundevenf128.c > > +++ b/sysdeps/ieee754/float128/s_roundevenf128.c > > @@ -1,2 +1,3 @@ > > +#define NO_MATH_REDIRECT > > #include > > #include "../ldbl-128/s_roundevenl.c" > > diff --git a/sysdeps/ieee754/flt-32/s_roundevenf.c b/sysdeps/ieee754/flt-32/s_roundevenf.c > > index ae54365bbe..2cc0d7b001 100644 > > --- a/sysdeps/ieee754/flt-32/s_roundevenf.c > > +++ b/sysdeps/ieee754/flt-32/s_roundevenf.c > > @@ -17,6 +17,7 @@ > > License along with the GNU C Library; if not, see > > . */ > > > > +#define NO_MATH_REDIRECT > > #include > > #include > > #include > > @@ -67,4 +68,6 @@ __roundevenf (float x) > > SET_FLOAT_WORD (x, ix); > > return x; > > } > > +#ifndef __roundevenf > > libm_alias_float (__roundeven, roundeven) > > +#endif > > diff --git a/sysdeps/ieee754/ldbl-128/s_roundevenl.c b/sysdeps/ieee754/ldbl-128/s_roundevenl.c > > index 02765be0e0..7c9c11fad2 100644 > > --- a/sysdeps/ieee754/ldbl-128/s_roundevenl.c > > +++ b/sysdeps/ieee754/ldbl-128/s_roundevenl.c > > @@ -17,6 +17,7 @@ > > License along with the GNU C Library; if not, see > > . */ > > > > +#define NO_MATH_REDIRECT > > #include > > #include > > #include > > diff --git a/sysdeps/ieee754/ldbl-96/s_roundevenl.c b/sysdeps/ieee754/ldbl-96/s_roundevenl.c > > index 8340116ed8..f826829c31 100644 > > --- a/sysdeps/ieee754/ldbl-96/s_roundevenl.c > > +++ b/sysdeps/ieee754/ldbl-96/s_roundevenl.c > > @@ -17,6 +17,7 @@ > > License along with the GNU C Library; if not, see > > . */ > > > > +#define NO_MATH_REDIRECT > > #include > > #include > > #include > > -- > > 2.31.1 > > > > LGTM. > > Reviewed-by: H.J. Lu > I tried it with scripts/build-many-glibcs.py. It failed with targets using: sysdeps/ieee754/ldbl-128ibm/s_roundevenl.c sysdeps/aarch64/fpu/s_roundevenf.c sysdeps/aarch64/fpu/s_roundeven.c sysdeps/riscv/rv64/rvd/s_roundeven.c sysdeps/riscv/rvf/s_roundevenf.c -- H.J.