
MOTOROLA
Chapter 4. Exceptions
4-27
The register settings for alignment exceptions are shown in Table 4-12.
The architecture does not support the use of an unaligned EA by
lwarx
or
stwcx.
instructions. If one of these instructions specifies an unaligned EA, the exception handler
should not emulate the instruction, but should treat the occurrence as a programming error.
4.5.6.1 Integer Alignment Exceptions
The 603e is optimized for load and store operations that are aligned on natural boundaries.
Operations that are not naturally aligned may suffer performance degradation, depending
on the type of operation, the boundaries crossed, and the mode that the processor is in
during execution. More specifically, these operations may either cause an alignment
exception or they may cause the processor to break the memory access into multiple,
smaller accesses with respect to the cache and the memory subsystem.
Table 4-13. Alignment Interrupt—Register Settings
Register
Setting
SRR0
Set to the effective address of the instruction that caused the exception.
SRR1
0–15
16–31 Loaded from bits 16–31 of the MSR
Cleared
MSR
POW 0
TGPR0
ILE
IP
—
—
EE
PR
FP
1
ME
0
0
0
—
FE0
2
0
SE
BE
FE1
2
0
0
0
IR
DR
RI
LE
0
0
0
Set to value of ILE
DSISR
0–11
12–13 Cleared. (Note that these bits can be set by several 64-bit PowerPC instructions that are
not supported in the 603e.)
14
Cleared
15–16 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.
17
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
18–21 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.
22–26 Set to bits 6–10 (identifying either the source or destination) of the instruction. Undefined
for
dcbz
.
27–31 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.
Cleared
DAR
Set to the EA of the data access as computed by the instruction causing the alignment exception.
Notes:
1. The floating-point available bit is always cleared to 0 on the EC603e microprocessor.
2. FE0 and FE1 are not supported on the EC603e microprocessor.