Encoding:

MSA

011110

0111

df

wt

ws

wd

3RF

011010

6

4

1

5

5

5

6

Format:

FCULE.df 

Vector Floating-Point Quiet Compare Unordered or Less or Equal

FCULE.W wd,ws,wt

MSA

Vector Floating-Point Quiet Compare Unordered or Less or Equal

FCULE.D wd,ws,wt

MSA

Vector Floating-Point Quiet Compare Unordered or Less or Equal

Purpose:

Vector Floating-Point Quiet Compare Unordered or Less or Equal

Vector to vector floating-point quiet compare for unordered or less than or equal; if true all destination bits are set, otherwise clear.

Description:

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 or equal to wt floating-point 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.

Restrictions:

Data-dependent exceptions are poss ible as s pecified by the I EEE Standard for Floating-Point Arithmetic 754TM

2008.

Operation:

FCULE.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)
      e = EqualFP(WR[ws]32i+31..32i, WR[wt]32i+31..32i, 32)
      WR[wd]32i+31..32i = (c | d | e)32
   endfor
FCULE.D
   for i in 0 .. WRLEN/64-1
      c = UnorderedFP(WR[ws]64i+63..64i, WR[wt]64i+63..64i, 64)
      d = LessFP(WR[ws]64i+63..64i, WR[wt]64i+63..64i, 64)
      e = EqualFP(WR[ws]64i+63..64i, WR[wt]64i+63..64i, 64)
      WR[wd]64i+63..64i = (c | d | e)64
   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
function EqualFP(tt, ts, n)
   /* Implementation defined quiet equal compare operation. */
endfunction EqualFP

Exceptions:

Reserved Instruction Exception, MSA Disabled Exception, MSA Floating Point Exception.