05.02.2013 Views

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

The System Level Programmers’ Model<br />

Table B1-8 A <strong>and</strong> F bit values on exception entry, with Security Extensions <strong>and</strong> NS == 1 (continued)<br />

Exception<br />

All internal aborts<br />

IRQ<br />

FIQ<br />

CPSR.E bit value on exception entry<br />

On exception entry, the CPSR.E bit is set to the value of the SCTLR.EE bit. This bit of the CPSR controls<br />

the load <strong>and</strong> store endianness for data h<strong>and</strong>ling by the exception h<strong>and</strong>ler, see the bit description in Format<br />

of the CPSR <strong>and</strong> SPSRs on page B1-16. For the description of the SCTLR see:<br />

c1, System Control Register (SCTLR) on page B3-96 for a VMSA implementation<br />

c1, System Control Register (SCTLR) on page B4-45 for a PMSA implementation.<br />

B1.6.4 Exception return<br />

In the <strong>ARM</strong> architecture, exception return requires the simultaneous restoration of the PC <strong>and</strong> CPSR to<br />

values that are consistent with the desired state of execution on returning from the exception. Normally, this<br />

is the state of execution just before the exception was taken, but it can be different in some circumstances,<br />

for example if the exception h<strong>and</strong>ler performed instruction emulation.<br />

Typically, this involves returning to one of:<br />

SCR bits<br />

Exception<br />

NS == 1, Non-secure<br />

EA IRQ FIQ AW FW<br />

mode<br />

CPSR.A CPSR.F<br />

x x x 0 x Abort Unchanged Unchanged<br />

x x x 1 x Abort 1 Unchanged<br />

x 0 x 0 x IRQ Unchanged Unchanged<br />

x 0 x 1 x IRQ 1 Unchanged<br />

x 1 x x x Monitor 1 1<br />

x x 0 0 0 FIQ Unchanged Unchanged<br />

x x 0 0 1 FIQ Unchanged 1<br />

x x 0 1 0 FIQ 1 Unchanged<br />

x x 0 1 1 FIQ 1 1<br />

x x 1 x x Monitor 1 1<br />

the instruction boundary at which an asynchronous exception was taken<br />

the instruction following an SVC or SMC instruction, for an exception generated by one of those<br />

instructions<br />

the instruction that caused the exception, after the reason for the exception has been removed<br />

B1-38 Copyright © 1996-1998, 2000, 2004-2008 <strong>ARM</strong> Limited. All rights reserved. <strong>ARM</strong> DDI 0406B

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!