
A - 98
DSP96002 USER’S MANUAL
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
FBcc
Floating-Point Branch Conditionally
FBcc
Description:
If the specified floating-point condition is true, the address of the instruction immediately following the FB-
Scc instruction and the status register are pushed onto the stack. Program execution then continues at
location PC+displacement. The PC contains the address of the next instruction. If the specified condition
is false, the PC is incremented and program execution continues sequentially. The displacement is a 2’s
complement 32-bit integer that represents the relative distance from the current PC to the destination PC.
Short Displacement, Long Displacement and Address Register PC Relative addressing modes may be
used. The Short Displacement 15-bit data is sign extended to form the PC relative displacement. See
Section A.10
for restrictions. Non-aware floating-point conditions set the SIOP flag in the IER register and
the UNCC bit in the ER register if the NAN bit is set.
"cc" may specify the following conditions:
Non-aware
Set UNCC*
No
Mnemonic
EQ
ERR
Condition
Z = 1
UNCC v SNAN v OPERR v No
OVF v UNF v DZ = 1
NAN v (N & ~Z) = 0
NAN v Z = 0
NAN = 0
NAN v Z v N = 0
I = 1
NAN v ~(N v Z) = 0
NAN v Z v ~N = 0
N = 1
Z = 0
NAN v (N & ~Z) = 1
NAN v Z = 1
- equal
- error
GE
GL
GLE
GT
INF
LE
LT
MI
NE(Q) - not equal
NGE
- not(greater than or equal)
NGL
- not(greater or less than)
NGLE - not(greater, less or equal) NAN = 1
NGT
- not greater than
NINF
- not infinity
NLE
- not(less than or equal)
NLT
- not less than
OR
- ordered
PL
- plus
UN
- unordered
Note: The operands for the ERR condition are taken from the ER register.
See the description of UNcc in
Section A.4
.
CCR Condition Codes:
Not affected.
- greater than or equal
- greater or less than
- greater, less or equal
- greater than
- infinity
- less than or equal
- less than
- minus
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
No
No
NAN v Z v N = 1
I = 0
NAN v ~(N v Z) = 1
NAN v Z v ~N = 1
NAN = 0
N = 0
NAN = 1
Assembler Syntax:
FBcc label (short)
FBcc label
FBcc Rn
Operation:
If cc, then PC+xx
else PC+1
If cc, then PC+xxxx
else PC+1
If cc, then PC+Rn
else PC+1
→
PC
→
PC
→
PC
→
PC
→
PC
→
PC
F
Freescale Semiconductor, Inc.
n
.