Re: Re: [PATCH v2] LoongArch:Implement 128-bit floating point functions in gcc.

2023-08-08 Thread 陈小龙
ign = 0; return nan.flt; } - > -原始邮件- > 发件人: "Xi Ruoyao" > 发送时间:2023-08-08 10:24:39 (星期二) > 收件人: chenxiaolong , gcc-patches@gcc.gnu.org > 抄送: i...@xen0n.name, xucheng...@loongson.cn, chengl...@loongson.cn > 主题: Re: [PATCH v2] LoongArch:Implement 128-bit fl

Re: [PATCH v2] LoongArch:Implement 128-bit floating point functions in gcc.

2023-08-07 Thread Xi Ruoyao via Gcc-patches
On Tue, 2023-08-08 at 10:24 +0800, Xi Ruoyao wrote: And I think this way to implement these functions (using libgcc calls) is not the best. On 64-bit LoongArch a __float128 is stored in a pair of GPR, so operations like copysignq and absq can be implemented much more efficiently by expanding them

Re: [PATCH v2] LoongArch:Implement 128-bit floating point functions in gcc.

2023-08-07 Thread Xi Ruoyao via Gcc-patches
On Tue, 2023-08-08 at 10:09 +0800, chenxiaolong wrote: > +/* Count the number of functions with "q" as the suffix.  */ > +const int MATHQ_NUMS=(int)LARCH_MAX_FTYPE_MAX-(int)LARCH_BUILTIN_HUGE_VALQ; Format issue still not fixed. > +__float128 nanq (const char * str) > +{ > + union _FP_UNION_

[PATCH v2] LoongArch:Implement 128-bit floating point functions in gcc.

2023-08-07 Thread chenxiaolong
In the implementation process, the "q" suffix function is Re-register and associate the "__float128" type with the "long double" type so that the compiler can handle the corresponding function correctly. The functions implemented include __builtin_{huge_valq

[PATCH v2] LoongArch:Implement 128-bit floating point functions in gcc.

2023-08-07 Thread chenxiaolong
In the implementation process, the "q" suffix function is Re-register and associate the "__float128" type with the "long double" type so that the compiler can handle the corresponding function correctly. The functions implemented include __builtin_{huge_valq