MOTOROLA
Chapter 3. Central Processing Unit
3-55
Operating Environment Architecture (OEA)
NOTE
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.)
When an alignment exception is taken, instruction execution resumes at offset 0x00600
from the physical base address indicated by MSR[IP].
3.15.4.7 Program Exception (0x0700)
A program exception occurs when no higher priority exception exists and one or more of
the following exception conditions, which correspond to bit settings in SRR1, occur during
execution of an instruction:
System floating-point enabled exception — A system floating-point enabled
exception is generated when the following condition is met as a result of a move to
FPSCR instruction, move to MSR (mtmsr) instruction, or return from interrupt (rfi)
instruction:
(MSR[FE0] | MSR[FE1]) & FPSCR[FEX] = 1.
Notice that in the RCPU implementation of the MPC500 architecture, a program
interrupt is not generated by a floating-point arithmetic instruction that results in the
condition shown above; a floating-point assist exception is generated instead.
Privileged instruction — A privileged instruction type program exception is
generated by any of the following conditions:
— The execution of a privileged instruction (mfmsr, mtmsr, or rfi) is attempted and
the processor is operating at the user privilege level (MSR[PR] = 1).
— The execution of mtspr or mfspr where SPR0 = 1 in the instruction encoding
(indicating a supervisor-access register) and MSR[PR] = 1 (indicating the
processor is operating at the user privilege level), provided the SPR instruction
field encoding represents either:
— a valid internal-to-the-processor special-purpose register; or
— an external-to-the-processor special-purpose register (either valid or invalid).
Trap — A trap type program exception is generated when any of the conditions
specified in a trap instruction is met.