You copied the Doc URL to your clipboard.

__rbit intrinsic

This intrinsic inserts an RBIT instruction into the instruction stream generated by the compiler. It enables you to reverse the bit order in a 32-bit word from within your C or C++ code.

unsigned int __rbit(unsigned int val )



is the data value whose bit order is to be reversed.

Return value

The __rbit intrinsic returns the value obtained from val by reversing its bit order.


The compiler does not recognize the __rbit intrinsic when compiling for a target that does not support the RBIT instruction. The compiler generates either a warning or an error in this case, depending on the source language:

  • In C code: Warning: #223-D: function "__rbit" declared implicitly.
  • In C++ code: Error: #20: identifier "__rbit" is undefined.