[PATCH] LoongArch: Use __builtin_{fmax, fmaxf, fmin, fminf} with GCC >= 13

Adhemerval Zanella Netto adhemerval.zanella@linaro.org
Mon Aug 29 12:44:08 GMT 2022



On 20/08/22 05:43, Xi Ruoyao wrote:
> GCC 13 compiles these built-ins to {fmax,fmin}.{s/d} instruction, use
> them instead of the generic implementation.
> 
> Link: https://gcc.gnu.org/r13-2085
> Signed-off-by: Xi Ruoyao <xry111@xry111.site>

LGTM, thanks.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>

> ---
>  sysdeps/loongarch/fpu/math-use-builtins-fmax.h | 10 ++++++++++
>  sysdeps/loongarch/fpu/math-use-builtins-fmin.h | 10 ++++++++++
>  2 files changed, 20 insertions(+)
>  create mode 100644 sysdeps/loongarch/fpu/math-use-builtins-fmax.h
>  create mode 100644 sysdeps/loongarch/fpu/math-use-builtins-fmin.h
> 
> diff --git a/sysdeps/loongarch/fpu/math-use-builtins-fmax.h b/sysdeps/loongarch/fpu/math-use-builtins-fmax.h
> new file mode 100644
> index 0000000000..5d22567bd3
> --- /dev/null
> +++ b/sysdeps/loongarch/fpu/math-use-builtins-fmax.h
> @@ -0,0 +1,10 @@
> +#if __GNUC_PREREQ (13, 0)
> +# define USE_FMAX_BUILTIN 1
> +# define USE_FMAXF_BUILTIN 1
> +#else
> +# define USE_FMAX_BUILTIN 0
> +# define USE_FMAXF_BUILTIN 0
> +#endif
> +
> +#define USE_FMAXL_BUILTIN 0
> +#define USE_FMAXF128_BUILTIN 0
> diff --git a/sysdeps/loongarch/fpu/math-use-builtins-fmin.h b/sysdeps/loongarch/fpu/math-use-builtins-fmin.h
> new file mode 100644
> index 0000000000..4d28b41c0d
> --- /dev/null
> +++ b/sysdeps/loongarch/fpu/math-use-builtins-fmin.h
> @@ -0,0 +1,10 @@
> +#if __GNUC_PREREQ (13, 0)
> +# define USE_FMIN_BUILTIN 1
> +# define USE_FMINF_BUILTIN 1
> +#else
> +# define USE_FMIN_BUILTIN 0
> +# define USE_FMINF_BUILTIN 0
> +#endif
> +
> +#define USE_FMINL_BUILTIN 0
> +#define USE_FMINF128_BUILTIN 0


More information about the Libc-alpha mailing list