The Carbide C language has functions
__rol(op, n)
__ror(op, n)
that do left- or right-bit rotation, respectively.
The op argument represents the item with the rotated bits. The n argument represents the number of times to rotate the op bits.
The op argument is not promoted to a larger data type and can be of type char, short, int, long, or long long.
These functions are intrinsic (“built-in”). That is, you do not have to provide function prototypes or link with special libraries to use these functions.
NOTE Currently, these functions are limited to the Motorola 68K and Intel x86 versions of the Carbide C/C++ compiler.