Toshiba TX39 Computer Hardware User Manual


 
Architecture
65
6.3.2 Address Error exception
Causes
Attempting to load, fetch or store a word not aligned on a word boundary.
Attempting to load or store a halfword not aligned on a halfword boundary.
Attempting to access kernel mode address space kseg while in user mode.
Exception mask
The Address Error exception is not maskable.
Applicable instructions
LB, LBU, LH, LHU, LW, LWL, LWR, SB, SH, SW, SWL, SWR.
Processing
The common exception vector (0x8000 0080) is used.
ExcCode AdEL(4) or AdES(5) in the Cause register is set depending on whether the memory
access attempt was a load or store.
When the Address Error exception is raised, the misaligned virtual address causing the
exception, or the kernel mode virtual address that was illegally referenced, is placed in the
BadVAddr register.
The EPC register points to the address of the instruction causing the exception. If, however, the
affected instruction was in the branch delay slot (for execution during a branch), the immediately
preceding branch instruction address is retained in the EPC register and the Cause register BD
bit is set to 1.