Faults Happening During Instruction Execution; Faults Happening After Instruction Execution; Return Instruction Pointer (Rip) - Intel i960 Jx Developer's Manual

Microprocessor
Table of Contents

Advertisement

FAULTS
8.7.2.2

Faults Happening During Instruction Execution

The following fault types occur during instruction execution:
CONSTRAINT.RANGE
OPERATION.UNALIGNED
ARITHMETIC.INTEGER_OVERFLOW
For these faults, the fault handler must explicitly modify the RIP to return to the faulting
application (except for ARITHMETIC.INTEGER_OVERFLOW).
When a fault occurs during or after execution of the faulting instruction, the fault may be
accompanied by a program state change such that program execution cannot be resumed after the
fault is handled. For example, when an integer overflow fault occurs, the overflow value is stored
in the destination. If the destination register is the same as one of the source registers, the source
value is lost, making it impossible to re-execute the faulting instruction.
8.7.2.3

Faults Happening After Instruction Execution

For these faults, the Return Instruction Pointer (RIP) is defined and the fault handler can return to
the next instruction in the flow:
TRACE
ARITHMETIC.INTEGER_OVERFLOW
In general, resumption of program execution with no changes in the program's control flow is
possible with the following fault types or subtypes:
All TRACE Subtypes
The effect of specific fault types on a program is defined in
(pg. 8-21)
under the heading Program State Changes.
8.7.3

Return Instruction Pointer (RIP)

When a fault handling procedure is called, a Return Instruction Pointer (RIP) is saved in the image of
the RIP in the faulting frame. The RIP can be accessed at address PFP+8 while executing the fault
handler after a
flushreg
. The RIP in the previous frame points to an instruction where program
execution can be resumed with no break in the program's control flow. It generally points to the faulting
instruction or to the next instruction to be executed. In some instances, however, the RIP is undefined.
RIP content for each fault is described in
8-14
section 8.10, "FAULT REFERENCE"
section 8.10, "FAULT REFERENCE" (pg.
8-21).

Advertisement

Table of Contents
loading

Table of Contents