![]() |
Define integer functions from Section 8.8 of GLSL 4.00.8 specification. More...
Functions | |
template<typename T , template< typename > class C> | |
C< T >::signed_type | bitCount (C< T > const &Value) |
Returns the number of bits set to 1 in the binary representation of value. | |
template<typename genIUType > | |
genIUType | bitfieldExtract (genIUType const &Value, int const &Offset, int const &Bits) |
Extracts bits [offset, offset + bits - 1] from value, returning them in the least significant bits of the result. | |
template<typename genIUType > | |
genIUType | bitfieldInsert (genIUType const &Base, genIUType const &Insert, int const &Offset, int const &Bits) |
Returns the insertion the bits least-significant bits of insert into base. | |
template<typename genIUType > | |
genIUType | bitfieldReverse (genIUType const &value) |
Returns the reversal of the bits of value. | |
template<typename T , template< typename > class C> | |
C< T >::signed_type | findLSB (C< T > const &Value) |
Returns the bit number of the least significant bit set to 1 in the binary representation of value. | |
template<typename T , template< typename > class C> | |
C< T >::signed_type | findMSB (C< T > const &Value) |
Returns the bit number of the most significant bit in the binary representation of value. | |
template<typename genIType > | |
void | imulExtended (genIType const &x, genIType const &y, genIType &msb, genIType &lsb) |
Multiplies 32-bit integers x and y, producing a 64-bit result. | |
template<typename genUType > | |
genUType | uaddCarry (genUType const &x, genUType const &y, genUType &carry) |
Adds 32-bit unsigned integer x and y, returning the sum modulo pow(2, 32). | |
template<typename genUType > | |
void | umulExtended (genUType const &x, genUType const &y, genUType &msb, genUType &lsb) |
Multiplies 32-bit integers x and y, producing a 64-bit result. | |
template<typename genUType > | |
genUType | usubBorrow (genUType const &x, genUType const &y, genUType &borrow) |
Subtracts the 32-bit unsigned integer y from x, returning the difference if non-negative, or pow(2, 32) plus the difference otherwise. |
Define integer functions from Section 8.8 of GLSL 4.00.8 specification.