EasyManua.ls Logo

ARM Cortex A9 - Page 118

ARM Cortex A9
213 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Level 1 Memory System
ARM DDI 0388I Copyright © 2008-2012 ARM. All rights reserved. 7-7
ID073015 Non-Confidential
Return stack predictions
The return stack stores the address and the instruction execution state of the instruction after a
function-call type branch instruction. This address is equal to the link register value stored in
r14. The following instructions cause a return stack push if predicted:
BL
immediate
BLX(1)
immediate
BLX(2)
register
HBL
(ThumbEE state)
HBLP
(ThumbEE state).
The following instructions cause a return stack pop if predicted:
BX r14
MOV pc, r14
LDM r13, {…pc}
LDR pc, [r13]
.
The
LDR
instruction can use any of the addressing modes, as long as r13 is the base register.
Additionally, in ThumbEE state you can also use r9 as a stack pointer so the
LDR
and
LDM
instructions with pc as a destination and r9 as a base register are also treated as a return stack
pop.
Because return-from-exception instructions can change processor privilege mode and security
state, they are not predicted. This includes the
LDM(3)
instruction, and the
MOVS pc, r14
instruction.

Table of Contents

Related product manuals