signbit3clc
Test for sign bit.
int signbit(float );
intn signbit(floatn );
int signbit(double );
longn signbit(doublen );
| int signbit (half) // if half extension enabled shortn signbit (halfn) // if half extension enabled |
Overview
The built-in function signbit tests for sign bit. 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.
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(3clc) to include appropriate versions of functions that take half, and half{2|3|4|8|16} as arguments and return values.
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.
Specification
OpenCL Specification[1]
Notes
- 1.
-
OpenCL Specification
page 264, section 6.12.6 - Relational Functions
Releases
5 releases since Debian 8 (Jessie); the text changed 3 times.