On 9 September 2012 02:29, Max Filippov <jcmvb...@gmail.com> wrote:
> @@ -262,9 +263,13 @@ float32 float32_maybe_silence_nan( float32 a_ )
>  #    error Rules for silencing a signaling NaN are target-specific
>  #  endif
>  #else
> +#  if defined(TARGET_XTENSA)
> +        return a_;
> +#  else
>          uint32_t a = float32_val(a_);
>          a |= (1 << 22);
>          return make_float32(a);
> +#  endif
>  #endif
>      }
>      return a_;

So this looks rather odd, because just returning a_ is making
no attempt to turn a signaling NaN into a quiet one. Looking at
the Xtensa ISA it says it doesn't have signaling NaNs. Maybe
it would be better to have a define for NO_SIGNALING_NANS
which made float*_is_signaling_nan() always return false and
float*_is_quiet_nan() always return true?

-- PMM

Reply via email to