NAME
    isfinite - test whether or not a scalar or each vector component is a
    finite value

SYNOPSIS
      bool  isfinite(float x);
      bool1 isfinite(float1 x);
      bool2 isfinite(float2 x);
      bool3 isfinite(float3 x);
      bool4 isfinite(float4 x);
 
      bool   isfinite(half x);
      bool1  isfinite(half1 x);
      bool2  isfinite(half2 x);
      bool3  isfinite(half3 x);
      bool4  isfinite(half4 x);
 
      bool  isfinite(fixed x);
      bool1 isfinite(fixed1 x);
      bool2 isfinite(fixed2 x);
      bool3 isfinite(fixed3 x);
      bool4 isfinite(fixed4 x);

PARAMETERS
    x       Vector or scalar to test for finiteness.

DESCRIPTION
    Returns whether or not a scalar or each vector component is a finite
    value. Infinity and not-a-number (NaN) values are not finite.

REFERENCE IMPLEMENTATION
    isfinite for float3 vectors could be implemented like this.

      bool3 isfinite(float3 x)
      {
        // By IEEE 754 rule, 2*Inf equals Inf
        return (s == s) && ((s == 0) || (s != 2*s));
      }

PROFILE SUPPORT
    isfinite is supported in all profiles except fp20.

SEE ALSO
    the isinf manpage, the isnan manpage

