10.100 SETEND

Set the endianness bit in the CPSR, without affecting any other bits in the CPSR.

Syntax

SETEND specifier
where:
specifier
is one of:
BE
Big-endian.
LE
Little-endian.

Usage

Use SETEND to access data of different endianness, for example, to access several big-endian DMA-formatted data fields from an otherwise little-endian application.
SETEND cannot be conditional, and is not permitted in an IT block.

Architectures

This ARM instruction is available in ARMv6 and above.
This 16-bit Thumb instruction is available in T variants of ARMv6 and above, except the ARMv6-M and ARMv7-M architectures.
There is no 32-bit version of this instruction in Thumb.

Example

    SETEND  BE       ; Set the CPSR E bit for big-endian accesses
    LDR     r0, [r2, #header]
    LDR     r1, [r2, #CRC32]
    SETEND  le       ; Set the CPSR E bit for little-endian accesses
                     ; for the rest of the application
Non-ConfidentialPDF file icon PDF versionARM DUI0379G
Copyright © 2007, 2008, 2011, 2012, 2014, 2015 ARM. All rights reserved.