|
MSA 011110 |
0101 |
df |
wt |
ws |
wd |
3RF 011010 |
|
6 |
4 |
1 |
5 |
5 |
5 |
6 |
FCULT.df |
Vector Floating-Point Quiet Compare Unordered or Less Than | |
FCULT.W wd,ws,wt |
MSA |
Vector Floating-Point Quiet Compare Unordered or Less Than |
FCULT.D wd,ws,wt |
MSA |
Vector Floating-Point Quiet Compare Unordered or Less Than |
Vector Floating-Point Quiet Compare Unordered or Less Than
Vector to vector floating-point quiet compare for unordered or less than; if true all destination bits are set, otherwise clear.
wd[i] = (ws[i] <?(quiet) wt[i])
Set all bits to 1 in wd elements if the corresponding ws floating-point elements are unordered or less than wt floatingpoint elements, otherwise set all bits to 0.
The quiet compare operation is defined by the IEEE Standard for Floating-Point Arithmetic 754TM-2008.
The Inexact Exception is not signaled when subnormal input operands are flushed based on the flush-to-zero bit FS in
MSA Control and Status Register MSACSR. In case of a floating-point exception, the default result has all bits set to
1.
The operands are values in floating-point data format df. The results are values in integer data format df.
Data-dependent exceptions are poss ible as s pecified by the I EEE Standard for Floating-Point Arithmetic 754TM
2008.
FCULT.W
for i in 0 .. WRLEN/32-1
c = UnorderedFP(WR[ws]32i+31..32i, WR[wt]32i+31..32i, 32)
d = LessFP(WR[ws]32i+31..32i, WR[wt]32i+31..32i, 32)
WR[wd]32i+31..32i = (c | d)32
endfor
FCULT.D
for i in 0 .. WRLEN/64-1
c = LessFP(WR[ws]64i+63..64i, WR[wt]64i+63..64i, 64)
d = UnorderedFP(WR[ws]64i+63..64i, WR[wt]64i+63..64i, 64)
WR[wd]64i+63..64i = c64
endfor
function UnorderedFP(tt, ts, n)
/* Implementation defined quiet unordered compare operation. */
endfunction UnorderedFP
function LessThanFP(tt, ts, n)
/* Implementation defined quiet less than compare operation. */
endfunction LessThanFP
Reserved Instruction Exception, MSA Disabled Exception, MSA Floating Point Exception.