Labels for PC-relative addresses
A label can represent the PC value plus or minus the offset from the PC to the label. Use these labels as targets for branch instructions, or to access small items of data embedded in code sections.
You can define PC-relative labels using a label on an instruction or on one of the data definition directives.
You can also use the section name of an
AREA directive as a label for
PC-relative addresses. In this case the label points to the first byte of the specified
AREA. Arm does not
AREA names as branch targets because when branching from
A32 to T32 state or T32 to A32 state in this way, the processor does not change the state