The built-in function signbit
tests for sign bit.
For the forms not dependent on the
cl_khr_fp16
extension, the scalar
version of the function returns a 1 if the sign bit in the float is set else returns
0. The vector version of the function returns the following for each component in
floatn
: -1 (i.e. all bits set) if the sign bit in the
float is set else returns 0.
For the forms enmabled by the
cl_khr_fp16
extension,
the function returns a 1 if the sign bit in the half is set else returns
0. The vector version of the function returns the following for each component in
halfn
: -1 (i.e. all bits set) if the sign bit in the
half is set else returns 0.
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.