VFP Exception Handling
ARM DDI 0301H
Copyright © 2004-2009 ARM Limited. All rights reserved.
22-10
ID012310
Non-Confidential, Unrestricted Access
UFC
1
Exception detected is a potential underflow.
OFC
0
IOC
0
The FPINST register contains the FMULD instruction with the following fields modified to
reflect the register address of the third iteration.
Fd/D
1010/0
Destination of the third exceptional iteration is D10.
Fm/M
1010/0
Fm source of the third exceptional iteration is D10.
Fn/N
1110/0
Fn source of the third exceptional iteration is D14.
The FPINST2 register contains invalid data.
In Example 22-2, the first FADDS is a short vector operation with b001 in the LEN field for a
vector length of two iterations and b00 in the STRIDE field for a vector stride of one. A potential
Invalid Operation exception is detected in the second iteration. The second FADDS progresses
to the Execute 1 stage and is captured in the FPINST2 register with the condition field changed
to AL, the FP2V flag set, and is not the trigger instruction. The FMULS is the trigger instruction
and bounces in cycle 6. It can be retried after exception processing.
Example 22-2 Exceptional short-vector FADDS with a FADDS in the pretrigger slot
FADDS S24, S26, S28
; Vector single-precision add of length 2
FADDS S3, S4, S5
; Scalar single-precision add
FMULS S12, S16, S16
; Short vector single-precision multiply
Table 22-2 lists the pipeline stages for Example 22-2.
After exception processing begins, the FPEXC register fields contains the following:
EX
1
The VFP11 coprocessor is in the exceptional state.
EN
1
FP2V
1
FPINST2 contains a valid instruction.
VECITR
111
No iterations remaining after exceptional iteration.
INV
0
UFC
0
OFC
0
IOC
1
Exception detected is a potential invalid operation.
The FPINST register contains the FADDS instruction with the following fields modified to
reflect the register address of the second iteration:
Fd/D
1100/1
Destination is of the second exceptional iteration is S25.
Fn/N
1101/1
Fn source is of the second exceptional iteration is S27.
Fm/M
1110/1
Fm source is of the second exceptional iteration is S29.
The FPINST2 register contains the instruction word for the second FADDS with the condition
field changed to AL.
Table 22-2 Exceptional short vector FADDS with a FADDS in the pretrigger slot
Instruction cycle number
Instruction
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
FADDS S24, S26, S28
D
I
E1
E1
E2
-
-
-
-
-
-
-
-
-
-
-
FADDS S3, S4, S5
-
D
D
I
E1
-
-
-
-
-
-
-
-
-
-
-
FMULS S12, S16, S16
-
-
-
D
I
*
-
-
-
-
-
-
-
-
-
-