Test for a normal value.

int isnormal(float)

int n isnormal(float n)

int isnormal(double)

long n isnormal(double n)
int isnormal (half)      // if half extension enabled

shortn isnormal (halfn)      // if half extension enabled

Description

Test for a normal value.

Notes

If an implementation extends this specification to support IEEE-754 flags or exceptions, then all built-in relational functions shall proceed without raising the invalid floating-point exception when one or more of the operands are NaNs.

The built-in relational functions are extended with cl_khr_fp16 to include versions that take half, and half{2|3|4|8|16} as arguments.

The function returns a 0 if the specified relation is false and a 1 if the specified relation is true for scalar argument types. These functions shall return a 0 if the specified relation is false and a - 1 (i.e. all bits set) if the specified relation is true for vector argument types.

Also see

Specification