Technical data

CHALLENGE/Onyx Diagnostic Road Map 6-21
fpu7 (fmulsubs) - FPU Multiply/Subtract (Single Precision)
Tests multiplication and subtraction using simple single-precision arithmetic.
Possible errors:
0109016: FP single mul/div result error : Expected 0x%x Got 0x%x
0109017: Fixed to single conversion failed : Before 0x%x After 0x%x
0109018: FP single mul/div status error : 0x%x
fpu8 (fmulsubd) - FPU Multiply/Subtract (Double Precision)
Tests multiplication and subtraction using simple double-precision arithmetic.
Possible errors:
0109013: FP double mul/sub result error : Expected 0x%x Got 0x%x
0109014: Fixed to double conversion failed : Before 0x%x After 0x%x
0109015: FP double mul/div status error : 0x%x
fpu9 (finvalid) - FPU Invalid Test
Simple test to see if an invalid operation exception can be generated. Divides 0.0 by itself
to generate the exception.
Possible errors:
010900b: Invalid exception didn’t occur
010900c: Invalid exception status error : 0x%x
010900d: Invalid exception dividend error : Expected 0x%x Got 0x%x
fpu10 (fdivzero) - FPU Divided by Zero Test
Divides a non-zero value by 0.0. Unlike the previous test, the floating-point status register
is checked after the exception to make sure the divide-by-zero flag is set.
Possible errors:
0109007: Divide by Zero exception status error : 0x%x
0109008: Dividend conversion failed : Before 0x%x After 0x%x
0109009: Divisor conversion failed : Before 0x%x After 0x%x
fpu11 (foverflow) - FPU Overflow Test
Generates a single-precision overflow by adding 2 at-the-limit large values. After the
exception, the floating-point status register is checked to make sure the overflow flag was
set.
Possible error:
0109019: Overflow exception status error : 0x%x