This intrinsic inserts a
REV instruction or an equivalent code sequence into the instruction stream generated by the compiler. It enables you to convert a 32-bit big-endian data value into a little-endian data value, or a 32-bit little-endian data value into a big-endian data value from within your C or C++ code.
__rev intrinsic is available irrespective of the target processor or
architecture you are compiling for. However, if the
REV instruction is
not available on the target, the compiler compensates with an alternative code sequence
that could increase the number of instructions, effectively expanding the intrinsic into a
The compiler introduces
REV automatically when it recognizes certain
unsigned int __rev(unsigned int
__rev intrinsic returns the value obtained from
by reversing its byte order.