9.126 __rev intrinsic

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.

Note

The __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 function.

Note

The compiler introduces REV automatically when it recognizes certain expressions.

Syntax

unsigned int __rev(unsigned int val)
Where:
val
is an unsigned int.

Return value

The __rev intrinsic returns the value obtained from val by reversing its byte order.
Related information
REV
Non-ConfidentialPDF file icon PDF versionARM DUI0375E
Copyright © 2007, 2008, 2011, 2012, 2014 ARM. All rights reserved.