Sun Microelectronics
286
UltraSPARC User’s Manual
Instructions that read the result of a
MOVcc
or
MOVr
cannot be in the same group
or the following group. For example:
Instructions that read the result of an
FCMP{LE,NE,GT,EQ}{16,32}
(including stores)
cannot be in the same group or in the two following groups.
STD
is treated as de-
pendent on earlier
FCMP
instructions, regardless of the actual registers refer-
enced. For example:
In some cases, UltraSPARC prematurely dispatches an instruction that uses the
result of an
FCMP{LE,NE,GT,EQ}{16,32}
; it then cancels the instruction in the W
Stage and refetches it. This effectively inserts nine bubbles into the pipe. To avoid
this, software should explicitly force the use instruction to be in the third group or
later after the
FCMP{LE,NE,GT,EQ}{16,32}
.
MULX
,
{U,S}MUL{cc}
,
MULScc
,
{U,S}DIV{X}
,
{U,S}DIVcc,
and
STD
cannot be in the
two groups following an FC
MP{LE,NE,GT,EQ}{16,32}
. For example:
FMOVr
cannot be in the same group or in the group following an IEU instruction,
even if it does not reference the result of the IEU instruction. It cannot be in the
same group or the next two groups following an FC
MP{LE,NE,GT,EQ}{16,32}
. For
example:
MOVcc
%xcc, 0,
i6
G
E
C
N
1
N
2
N
3
W
LDX
[i6+i1]
,
i8
G
E
C
N
1
N
2
N
3
W
FCMPLE32
f2, f4,
i6
G
E
C
N
1
N
2
N
3
W
LDX
[i6+i1]
,
i8
G
E
C
N
1
N
2
N
3
W
FCMPLE32
f2, f4,
i6
G
E
C
N
1
N
2
N
3
W
MUL
i8,i7,i9
G
E
C
N
1
N
2
N
3
W
ADD
i1, i2, i6
G
E
C
N
1
N
2
N
3
W
FMOVr
i5,i7
G
E
C
N
1
N
2
N
3
W
Artisan Technology Group - Quality Instrumentation ... Guaranteed | (888) 88-SOURCE | www.artisantg.com