
MOTOROLA
6-24
EXCEPTIONS
For More Information On This Product,
Go to: www.freescale.com
RCPU
REFERENCE MANUAL
When an alignment exception is taken, instruction execution resumes at offset
0x00600 from the physical base address indicated by MSR[IP].
6.11.4.1 Interpretation of the DSISR as Set by an Alignment Exception
For most alignment exceptions, an exception handler may be designed to emulate
the instruction that causes the exception. To do this, it needs the following charac-
teristics of the instruction:
Load or store
Length (half word, word, or double word)
String, multiple, or normal load/store
Table 6-16 Register Settings for Alignment Exception
Register
Setting Description
SRR0
Set to the effective address of the instruction that caused the exception.
SRR1
[0:15]
[16:31]
Cleared
Loaded from MSR[16:31]
MSR
IP
ME
LE
Other bits
No change
No change
Set to value of ILE bit prior to the exception
Cleared
DSISR
[0:11]
[12:13]
14
[15:16]
Cleared
Cleared
Cleared
For instructions that use register indirect with index addressing,
set to bits [29:30] of the instruction.
For instructions that use register indirect with immediate index
addressing, cleared.
For instructions that use register indirect with index addressing,
set to bit 25 of the instruction.
For instructions that use register indirect with immediate index
addressing, set to bit 5 of the instruction.
For instructions that use register indirect with index addressing,
set to bits [21:24] of the instruction.
For instructions that use register indirect with immediate index
addressing, set to bits [1:4] of the instruction.
Set to bits [6:10] (source or destination) of the instruction.
Set to bits [11:15] of the instruction (
r
A).
Set to either bits [11:15] of the instruction or to any register
number not in the range of registers loaded by a valid form
instruction, for
lmw
,
lswi
, and
lswx
instructions. Otherwise
undefined.
Note that for load or store instructions that use register indirect with index
addressing, the DSISR can be set to the same value that would have resulted
if the corresponding instruction uses register indirect with immediate index
addressing had caused the exception. Similarly, for load or store instructions
that use register indirect with immediate index addressing, DSISR can hold a
value that would have resulted from an instruction that uses register indirect
with index addressing. (If there is no corresponding instruction, no alternative
value can be specified.)
17
[18:21]
[22:26]
[27:31]
F
Freescale Semiconductor, Inc.
n
.