Message ID | 20221118112912.2501774-1-tangxiaolin@loongson.cn |
---|---|
Headers | show |
Series | LoongArch: Use builtins with GCC >= 13 | expand |
Hi Xiaolin, I guess you need to resent the series because {1,8,9}/9 lacks the proper In-Reply-To: header, causing them missing from the patchwork interface (https://patchwork.sourceware.org/project/glibc/list/?series=14494). The reviewers will use the patchwork interface to track the patches. On Fri, 2022-11-18 at 19:29 +0800, Xiaolin Tang wrote: > Patch 0001-0007: > GCC 13, LoongArch support builtins for {,l,ll}rint, logb, > use these built-ins instead of generic function implementation. > > Patch 0008: > GCC 13, LoongArch support ___builtin_scalbn{,f} with -fno-math-errno, > but only "libm" can use -fno-math-errno in GLIBC, and scalbn is in > libc > instead of libm because __printf_fp calls it. So inline assembler of > the scalbn functions is a better choice for LoongArch. > > Patch 0009: Add LoongArch support for scalb[f]. > > Discuss with Xi Ruoyao<xry111@xry111.site> > Link: > https://sourceware.org/pipermail/libc-alpha/2022-November/143425.html > > Xi Ruoyao (1): > LoongArch: Use __builtin_rint{,f} with GCC >= 13 > > Xiaolin Tang (8): > Use GCC builtins for lrint functions if desired. > LoongArch: Use __builtin_lrint{,f} with GCC >= 13 > Use GCC builtins for llrint functions if desired. > LoongArch: Use __builtin_llrint{,f} with GCC >= 13 > Use GCC builtins for logb functions if desired. > LoongArch: Use __builtin_logb{,f} with GCC >= 13 > LoongArch: Add support for scalbn[f] > LoongArch: Add support for scalb[f] > > sysdeps/generic/math-use-builtins-llrint.h | 4 ++ > sysdeps/generic/math-use-builtins-logb.h | 4 ++ > sysdeps/generic/math-use-builtins-lrint.h | 4 ++ > sysdeps/generic/math-use-builtins.h | 3 + > sysdeps/ieee754/dbl-64/s_llrint.c | 18 ++++-- > sysdeps/ieee754/dbl-64/s_logb.c | 5 ++ > sysdeps/ieee754/dbl-64/s_lrint.c | 18 ++++-- > sysdeps/ieee754/float128/float128_private.h | 6 ++ > sysdeps/ieee754/flt-32/s_llrintf.c | 18 ++++-- > sysdeps/ieee754/flt-32/s_logbf.c | 5 ++ > sysdeps/ieee754/flt-32/s_lrintf.c | 18 ++++-- > sysdeps/ieee754/ldbl-128/s_llrintl.c | 17 ++++-- > sysdeps/ieee754/ldbl-128/s_logbl.c | 6 ++ > sysdeps/ieee754/ldbl-128/s_lrintl.c | 17 ++++-- > sysdeps/loongarch/fpu/e_scalb.c | 60 > +++++++++++++++++++ > sysdeps/loongarch/fpu/e_scalbf.c | 60 > +++++++++++++++++++ > .../loongarch/fpu/math-use-builtins-llrint.h | 10 ++++ > .../loongarch/fpu/math-use-builtins-logb.h | 10 ++++ > .../loongarch/fpu/math-use-builtins-lrint.h | 10 ++++ > .../loongarch/fpu/math-use-builtins-rint.h | 9 +++ > sysdeps/loongarch/fpu/s_scalbn.c | 29 +++++++++ > sysdeps/loongarch/fpu/s_scalbnf.c | 29 +++++++++ > 22 files changed, 326 insertions(+), 34 deletions(-) > create mode 100644 sysdeps/generic/math-use-builtins-llrint.h > create mode 100644 sysdeps/generic/math-use-builtins-logb.h > create mode 100644 sysdeps/generic/math-use-builtins-lrint.h > create mode 100644 sysdeps/loongarch/fpu/e_scalb.c > create mode 100644 sysdeps/loongarch/fpu/e_scalbf.c > create mode 100644 sysdeps/loongarch/fpu/math-use-builtins-llrint.h > create mode 100644 sysdeps/loongarch/fpu/math-use-builtins-logb.h > create mode 100644 sysdeps/loongarch/fpu/math-use-builtins-lrint.h > create mode 100644 sysdeps/loongarch/fpu/math-use-builtins-rint.h > create mode 100644 sysdeps/loongarch/fpu/s_scalbn.c > create mode 100644 sysdeps/loongarch/fpu/s_scalbnf.c >
OK, thank you for pointing this out. Please delete them, and I will resend this series. 在 2022/11/23 上午12:20, Xi Ruoyao 写道: > Hi Xiaolin, > > I guess you need to resent the series because {1,8,9}/9 lacks the proper > In-Reply-To: header, causing them missing from the patchwork interface > (https://patchwork.sourceware.org/project/glibc/list/?series=14494). > The reviewers will use the patchwork interface to track the patches. > > On Fri, 2022-11-18 at 19:29 +0800, Xiaolin Tang wrote: >> Patch 0001-0007: >> GCC 13, LoongArch support builtins for {,l,ll}rint, logb, >> use these built-ins instead of generic function implementation. >> >> Patch 0008: >> GCC 13, LoongArch support ___builtin_scalbn{,f} with -fno-math-errno, >> but only "libm" can use -fno-math-errno in GLIBC, and scalbn is in >> libc >> instead of libm because __printf_fp calls it. So inline assembler of >> the scalbn functions is a better choice for LoongArch. >> >> Patch 0009: Add LoongArch support for scalb[f]. >> >> Discuss with Xi Ruoyao<xry111@xry111.site> >> Link: >> https://sourceware.org/pipermail/libc-alpha/2022-November/143425.html >> >> Xi Ruoyao (1): >> LoongArch: Use __builtin_rint{,f} with GCC >= 13 >> >> Xiaolin Tang (8): >> Use GCC builtins for lrint functions if desired. >> LoongArch: Use __builtin_lrint{,f} with GCC >= 13 >> Use GCC builtins for llrint functions if desired. >> LoongArch: Use __builtin_llrint{,f} with GCC >= 13 >> Use GCC builtins for logb functions if desired. >> LoongArch: Use __builtin_logb{,f} with GCC >= 13 >> LoongArch: Add support for scalbn[f] >> LoongArch: Add support for scalb[f] >> >> sysdeps/generic/math-use-builtins-llrint.h | 4 ++ >> sysdeps/generic/math-use-builtins-logb.h | 4 ++ >> sysdeps/generic/math-use-builtins-lrint.h | 4 ++ >> sysdeps/generic/math-use-builtins.h | 3 + >> sysdeps/ieee754/dbl-64/s_llrint.c | 18 ++++-- >> sysdeps/ieee754/dbl-64/s_logb.c | 5 ++ >> sysdeps/ieee754/dbl-64/s_lrint.c | 18 ++++-- >> sysdeps/ieee754/float128/float128_private.h | 6 ++ >> sysdeps/ieee754/flt-32/s_llrintf.c | 18 ++++-- >> sysdeps/ieee754/flt-32/s_logbf.c | 5 ++ >> sysdeps/ieee754/flt-32/s_lrintf.c | 18 ++++-- >> sysdeps/ieee754/ldbl-128/s_llrintl.c | 17 ++++-- >> sysdeps/ieee754/ldbl-128/s_logbl.c | 6 ++ >> sysdeps/ieee754/ldbl-128/s_lrintl.c | 17 ++++-- >> sysdeps/loongarch/fpu/e_scalb.c | 60 >> +++++++++++++++++++ >> sysdeps/loongarch/fpu/e_scalbf.c | 60 >> +++++++++++++++++++ >> .../loongarch/fpu/math-use-builtins-llrint.h | 10 ++++ >> .../loongarch/fpu/math-use-builtins-logb.h | 10 ++++ >> .../loongarch/fpu/math-use-builtins-lrint.h | 10 ++++ >> .../loongarch/fpu/math-use-builtins-rint.h | 9 +++ >> sysdeps/loongarch/fpu/s_scalbn.c | 29 +++++++++ >> sysdeps/loongarch/fpu/s_scalbnf.c | 29 +++++++++ >> 22 files changed, 326 insertions(+), 34 deletions(-) >> create mode 100644 sysdeps/generic/math-use-builtins-llrint.h >> create mode 100644 sysdeps/generic/math-use-builtins-logb.h >> create mode 100644 sysdeps/generic/math-use-builtins-lrint.h >> create mode 100644 sysdeps/loongarch/fpu/e_scalb.c >> create mode 100644 sysdeps/loongarch/fpu/e_scalbf.c >> create mode 100644 sysdeps/loongarch/fpu/math-use-builtins-llrint.h >> create mode 100644 sysdeps/loongarch/fpu/math-use-builtins-logb.h >> create mode 100644 sysdeps/loongarch/fpu/math-use-builtins-lrint.h >> create mode 100644 sysdeps/loongarch/fpu/math-use-builtins-rint.h >> create mode 100644 sysdeps/loongarch/fpu/s_scalbn.c >> create mode 100644 sysdeps/loongarch/fpu/s_scalbnf.c >>
Oops, I just resend {1,8,9}/9 with cover-patch, and still haven't solved this problem. I will resend this series again with v2 version, which is added ilogb function. 在 2022/11/23 上午12:20, Xi Ruoyao 写道: > Hi Xiaolin, > > I guess you need to resent the series because {1,8,9}/9 lacks the proper > In-Reply-To: header, causing them missing from the patchwork interface > (https://patchwork.sourceware.org/project/glibc/list/?series=14494). > The reviewers will use the patchwork interface to track the patches. > > On Fri, 2022-11-18 at 19:29 +0800, Xiaolin Tang wrote: >> Patch 0001-0007: >> GCC 13, LoongArch support builtins for {,l,ll}rint, logb, >> use these built-ins instead of generic function implementation. >> >> Patch 0008: >> GCC 13, LoongArch support ___builtin_scalbn{,f} with -fno-math-errno, >> but only "libm" can use -fno-math-errno in GLIBC, and scalbn is in >> libc >> instead of libm because __printf_fp calls it. So inline assembler of >> the scalbn functions is a better choice for LoongArch. >> >> Patch 0009: Add LoongArch support for scalb[f]. >> >> Discuss with Xi Ruoyao<xry111@xry111.site> >> Link: >> https://sourceware.org/pipermail/libc-alpha/2022-November/143425.html >> >> Xi Ruoyao (1): >> LoongArch: Use __builtin_rint{,f} with GCC >= 13 >> >> Xiaolin Tang (8): >> Use GCC builtins for lrint functions if desired. >> LoongArch: Use __builtin_lrint{,f} with GCC >= 13 >> Use GCC builtins for llrint functions if desired. >> LoongArch: Use __builtin_llrint{,f} with GCC >= 13 >> Use GCC builtins for logb functions if desired. >> LoongArch: Use __builtin_logb{,f} with GCC >= 13 >> LoongArch: Add support for scalbn[f] >> LoongArch: Add support for scalb[f] >> >> sysdeps/generic/math-use-builtins-llrint.h | 4 ++ >> sysdeps/generic/math-use-builtins-logb.h | 4 ++ >> sysdeps/generic/math-use-builtins-lrint.h | 4 ++ >> sysdeps/generic/math-use-builtins.h | 3 + >> sysdeps/ieee754/dbl-64/s_llrint.c | 18 ++++-- >> sysdeps/ieee754/dbl-64/s_logb.c | 5 ++ >> sysdeps/ieee754/dbl-64/s_lrint.c | 18 ++++-- >> sysdeps/ieee754/float128/float128_private.h | 6 ++ >> sysdeps/ieee754/flt-32/s_llrintf.c | 18 ++++-- >> sysdeps/ieee754/flt-32/s_logbf.c | 5 ++ >> sysdeps/ieee754/flt-32/s_lrintf.c | 18 ++++-- >> sysdeps/ieee754/ldbl-128/s_llrintl.c | 17 ++++-- >> sysdeps/ieee754/ldbl-128/s_logbl.c | 6 ++ >> sysdeps/ieee754/ldbl-128/s_lrintl.c | 17 ++++-- >> sysdeps/loongarch/fpu/e_scalb.c | 60 >> +++++++++++++++++++ >> sysdeps/loongarch/fpu/e_scalbf.c | 60 >> +++++++++++++++++++ >> .../loongarch/fpu/math-use-builtins-llrint.h | 10 ++++ >> .../loongarch/fpu/math-use-builtins-logb.h | 10 ++++ >> .../loongarch/fpu/math-use-builtins-lrint.h | 10 ++++ >> .../loongarch/fpu/math-use-builtins-rint.h | 9 +++ >> sysdeps/loongarch/fpu/s_scalbn.c | 29 +++++++++ >> sysdeps/loongarch/fpu/s_scalbnf.c | 29 +++++++++ >> 22 files changed, 326 insertions(+), 34 deletions(-) >> create mode 100644 sysdeps/generic/math-use-builtins-llrint.h >> create mode 100644 sysdeps/generic/math-use-builtins-logb.h >> create mode 100644 sysdeps/generic/math-use-builtins-lrint.h >> create mode 100644 sysdeps/loongarch/fpu/e_scalb.c >> create mode 100644 sysdeps/loongarch/fpu/e_scalbf.c >> create mode 100644 sysdeps/loongarch/fpu/math-use-builtins-llrint.h >> create mode 100644 sysdeps/loongarch/fpu/math-use-builtins-logb.h >> create mode 100644 sysdeps/loongarch/fpu/math-use-builtins-lrint.h >> create mode 100644 sysdeps/loongarch/fpu/math-use-builtins-rint.h >> create mode 100644 sysdeps/loongarch/fpu/s_scalbn.c >> create mode 100644 sysdeps/loongarch/fpu/s_scalbnf.c >>
On Wed, 2022-11-23 at 10:55 +0800, tangxiaolin wrote: > Oops, I just resend {1,8,9}/9 with cover-patch, and still haven't solved > this problem. > > I will resend this series again with v2 version, which is added ilogb > function. Try "git send-email". I had used to send long series manually with a email client, but at last I found "git send-email" really makes our life easier :).