Atmel ARM-Based Evaluation Kit for SAM4S16C, 32-Bit ARM® Cortex® Microcontroller ATSAM4S-WPIR-RD ATSAM4S-WPIR-RD Data Sheet

Product codes
ATSAM4S-WPIR-RD
Page of 1231
SAM4S Series [DATASHEET]
Atmel-11100G-ATARM-SAM4S-Datasheet_27-May-14
104
12.6.4.1 ADR
Load PC-relative address.
Syntax
ADR{condRdlabel
where:
condis an optional condition code, see 
.
Rdis the destination register.
labelis a PC-relative expression. See 
Operation
ADR determines the address by adding an immediate value to the PC, and writes the result to the destination 
register.
ADR produces position-independent code, because the address is PC-relative.
If ADR is used to generate a target address for a BX or BLX instruction, ensure that bit[0] of the address generated 
is set to 1 for correct execution.
Values of label must be within the range of −4095 to +4095 from the address in the PC. 
Note:
The user might have to use the .W suffix to get the maximum offset range or to generate addresses that are not word-
aligned. See 
.
Restrictions
Rd
 must not be SP and must not be PC.
Condition Flags
This instruction does not change the flags.
Examples
ADR
R1, TextMessage
; Write address value of a location labelled as
; TextMessage to R1