You copied the Doc URL to your clipboard.

Load addresses into registers

It is often necessary to load an address into a register. You might have to load the address of a variable, a string literal, or the start location of a jump table.

Addresses are normally expressed as offsets from a label, or from the current PC or other register.

You can load an address into a register either:

  • using the instruction ADR

  • using the instruction ADRL

  • using the instruction MOV32

  • from a literal pool using the pseudo-instruction LDR Rd, =Label.