On Mon, Nov 07, 2022 at 04:38:29PM +0100, Aldy Hernandez wrote:
> From d214bcdff2cb90ad1eb808d29bda6fb98d510b4c Mon Sep 17 00:00:00 2001
> From: Aldy Hernandez <al...@redhat.com>
> Date: Mon, 7 Nov 2022 14:18:57 +0100
> Subject: [PATCH] Provide normalized and denormal format version of
>  real_isdenormal.
> 
> Implement real_isdenormal_target() to be used within real.cc where the
> argument is known to be in denormal format.  Rewrite real_isdenormal()
> for use outside of real.cc where the argument is known to be
> normalized.
> 
> gcc/ChangeLog:
> 
>       * real.cc (real_isdenormal_target): New.
>       (encode_ieee_single): Use real_isdenormal_target.
>       (encode_ieee_double): Same.
>       (encode_ieee_extended): Same.
>       (encode_ieee_quad): Same.
>       (encode_ieee_half): Same.
>       (encode_arm_bfloat_half): Same.
>       * value-range.cc (frange::flush_denormals_to_zero): Same.
>       * real.h (real_isdenormal): Rewrite to look at mode.

I'd make real_isdenormal_target static inline bool
rather than inline bool, it is only defined in real.cc, so there is
no point exporting it.
Though, as you've added the mode argument, the real.cc inline
could very well also be called real_isdenormal too, it wouldn't be
a redeclaration or ODR violation. 

        Jakub

Reply via email to