AI Engine Intrinsics User Guide  (AIE) r2p23
 All Data Structures Namespaces Functions Variables Typedefs Groups Pages

Overview

Float vector comparison.

Performs the comparison between lanes and return the result of the comparison as a bit in the return word.

Functions

unsigned int fpge (v8float acc, v8float xbuf, int xstart, unsigned int xoffs)
 Greater-equal comparison for single precision real floating point vectors.
 
unsigned int fpge (v8float acc, v16float xbuf, int xstart, unsigned int xoffs)
 Greater-equal comparison for single precision real floating point vectors.
 
unsigned int fpge (v8float acc, v32float xbuf, int xstart, unsigned int xoffs)
 Greater-equal comparison for single precision real floating point vectors.
 
unsigned int fpge_abs (v8float acc, v8float xbuf, int xstart, unsigned int xoffs)
 Take absolute value and perform greater-equal comparison for single precision real floating point vectors.
 
unsigned int fpge_abs (v8float acc, v8float xbuf)
 Take absolute value and perform greater-equal comparison for single precision real floating point vectors.
 
unsigned int fpge_abs (v8float acc, v32float xbuf, int xstart, unsigned int xoffs)
 Take absolute value and perform greater-equal comparison for single precision real floating point vectors.
 
unsigned int fplt (v8float acc, v8float xbuf, int xstart, unsigned int xoffs)
 Less-than comparision for single precision real floating point vectors.
 
unsigned int fplt (v8float acc, v16float xbuf, int xstart, unsigned int xoffs)
 Less-than comparision for single precision real floating point vectors.
 
unsigned int fplt (v8float acc, v32float xbuf, int xstart, unsigned int xoffs)
 Less-than comparision for single precision real floating point vectors.
 
unsigned int fplt_abs (v8float acc, v8float xbuf, int xstart, unsigned int xoffs)
 Take absolute value and perform less-than comparison for single precision real floating point vectors.
 
unsigned int fplt_abs (v8float acc, v8float xbuf)
 Take absolute value and perform less-than comparison for single precision real floating point vectors.
 
unsigned int fplt_abs (v8float acc, v32float xbuf, int xstart, unsigned int xoffs)
 Take absolute value and perform less-than comparison for single precision real floating point vectors.
 

Variables

return cmp
 
v8float ret
 
v16float xbuf
 
v16float int unsigned int xoffs
 
v16float int xstart
 

Function Documentation

unsigned int fpge ( v8float  acc,
v8float  xbuf,
int  xstart,
unsigned int  xoffs 
)

Greater-equal comparison for single precision real floating point vectors.

 ~~~~~~~~~~~~~~~~~~~
 for (i = 0; i < 8; i++)
   ret[i] = acc[i] >= xbuf[xstart + xoffs[i]]
 ~~~~~~~~~~~~~~~~~~~
Returns
Scalar integer with one comparison result per bit.
Parameters
accIncoming accumulation vector.
xbufInput buffer.
xstartStarting offset for all lanes of X.
xoffs8 x 4 bits: Additional lane-dependent offset for X.
unsigned int fpge ( v8float  acc,
v16float  xbuf,
int  xstart,
unsigned int  xoffs 
)

Greater-equal comparison for single precision real floating point vectors.

 ~~~~~~~~~~~~~~~~~~~
 for (i = 0; i < 8; i++)
   ret[i] = acc[i] >= xbuf[xstart + xoffs[i]]
 ~~~~~~~~~~~~~~~~~~~
Returns
Scalar integer with one comparison result per bit.
Parameters
accIncoming accumulation vector.
xbufInput buffer.
xstartStarting offset for all lanes of X.
xoffs8 x 4 bits: Additional lane-dependent offset for X.
unsigned int fpge ( v8float  acc,
v32float  xbuf,
int  xstart,
unsigned int  xoffs 
)

Greater-equal comparison for single precision real floating point vectors.

 ~~~~~~~~~~~~~~~~~~~
 for (i = 0; i < 8; i++)
   ret[i] = acc[i] >= xbuf[xstart + xoffs[i]]
 ~~~~~~~~~~~~~~~~~~~
Returns
Scalar integer with one comparison result per bit.
Parameters
accIncoming accumulation vector.
xbufInput buffer.
xstartStarting offset for all lanes of X.
xoffs8 x 4 bits: Additional lane-dependent offset for X.
unsigned int fpge_abs ( v8float  acc,
v8float  xbuf,
int  xstart,
unsigned int  xoffs 
)

Take absolute value and perform greater-equal comparison for single precision real floating point vectors.

 ~~~~~~~~~~~~~~~~~~~
 for (i = 0; i < 8; i++)
   ret[i] = acc[i] >= abs(xbuf[xstart + xoffs[i]]
 ~~~~~~~~~~~~~~~~~~~
Returns
Scalar integer with one comparison result per bit.
Parameters
accIncoming accumulation vector.
xbufInput buffer.
xstartStarting offset for all lanes of X.
xoffs8 x 4 bits: Additional lane-dependent offset for X.
unsigned int fpge_abs ( v8float  acc,
v8float  xbuf 
)

Take absolute value and perform greater-equal comparison for single precision real floating point vectors.

 ~~~~~~~~~~~~~~~~~~~
 for (i = 0 ; i < 8 ; i++)
   ret[i] = acc[i] >= abs(xbuf[i]
 ~~~~~~~~~~~~~~~~~~~
Returns
Scalar integer with one comparison result per bit.
Parameters
accIncoming accumulation vector.
xbufInput buffer.
unsigned int fpge_abs ( v8float  acc,
v32float  xbuf,
int  xstart,
unsigned int  xoffs 
)

Take absolute value and perform greater-equal comparison for single precision real floating point vectors.

 ~~~~~~~~~~~~~~~~~~~
 for (i = 0; i < 8; i++)
   ret[i] = acc[i] >= abs(xbuf[xstart + xoffs[i]]
 ~~~~~~~~~~~~~~~~~~~
Returns
Scalar integer with one comparison result per bit.
Parameters
accIncoming accumulation vector.
xbufInput buffer.
xstartStarting offset for all lanes of X.
xoffs8 x 4 bits: Additional lane-dependent offset for X.
unsigned int fplt ( v8float  acc,
v8float  xbuf,
int  xstart,
unsigned int  xoffs 
)

Less-than comparision for single precision real floating point vectors.

 ~~~~~~~~~~~~~~~~~~~
 for (i = 0; i < 8; i++)
   ret[i] = acc[i] < xbuf[xstart + xoffs[i]]
 ~~~~~~~~~~~~~~~~~~~
Returns
Scalar integer with one comparison result per bit.
Parameters
accIncoming accumulation vector.
xbufInput buffer.
xstartStarting offset for all lanes of X.
xoffs8 x 4 bits: Additional lane-dependent offset for X.
unsigned int fplt ( v8float  acc,
v16float  xbuf,
int  xstart,
unsigned int  xoffs 
)

Less-than comparision for single precision real floating point vectors.

 ~~~~~~~~~~~~~~~~~~~
 for (i = 0; i < 8; i++)
   ret[i] = acc[i] < xbuf[xstart + xoffs[i]]
 ~~~~~~~~~~~~~~~~~~~
Returns
Scalar integer with one comparison result per bit.
Parameters
accIncoming accumulation vector.
xbufInput buffer.
xstartStarting offset for all lanes of X.
xoffs8 x 4 bits: Additional lane-dependent offset for X.
unsigned int fplt ( v8float  acc,
v32float  xbuf,
int  xstart,
unsigned int  xoffs 
)

Less-than comparision for single precision real floating point vectors.

 ~~~~~~~~~~~~~~~~~~~
 for (i = 0; i < 8; i++)
   ret[i] = acc[i] < xbuf[xstart + xoffs[i]]
 ~~~~~~~~~~~~~~~~~~~
Returns
Scalar integer with one comparison result per bit.
Parameters
accIncoming accumulation vector.
xbufInput buffer.
xstartStarting offset for all lanes of X.
xoffs8 x 4 bits: Additional lane-dependent offset for X.
unsigned int fplt_abs ( v8float  acc,
v8float  xbuf,
int  xstart,
unsigned int  xoffs 
)

Take absolute value and perform less-than comparison for single precision real floating point vectors.

 ~~~~~~~~~~~~~~~~~~~
 for (i = 0; i < 8; i++)
   ret[i] = acc[i] < abs(xbuf[xstart + xoffs[i]]
 ~~~~~~~~~~~~~~~~~~~
Returns
Scalar integer with one comparison result per bit.
Parameters
accIncoming accumulation vector.
xbufInput buffer.
xstartStarting offset for all lanes of X.
xoffs8 x 4 bits: Additional lane-dependent offset for X.
unsigned int fplt_abs ( v8float  acc,
v8float  xbuf 
)

Take absolute value and perform less-than comparison for single precision real floating point vectors.

 ~~~~~~~~~~~~~~~~~~~
 for (i = 0 ; i < 8 ; i++)
   ret[i] = acc[i] < abs(xbuf[i]
 ~~~~~~~~~~~~~~~~~~~
Returns
Scalar integer with one comparison result per bit.
Parameters
accIncoming accumulation vector.
xbufInput buffer.
unsigned int fplt_abs ( v8float  acc,
v32float  xbuf,
int  xstart,
unsigned int  xoffs 
)

Take absolute value and perform less-than comparison for single precision real floating point vectors.

 ~~~~~~~~~~~~~~~~~~~
 for (i = 0; i < 8; i++)
   ret[i] = acc[i] < abs(xbuf[xstart + xoffs[i]]
 ~~~~~~~~~~~~~~~~~~~
Returns
Scalar integer with one comparison result per bit.
Parameters
accIncoming accumulation vector.
xbufInput buffer.
xstartStarting offset for all lanes of X.
xoffs8 x 4 bits: Additional lane-dependent offset for X.

Variable Documentation

return cmp
v8float ret
Initial value:
= fpmac_conf(acc,
true,true,fpadd_sub,0x00,fpcmp_ge
,cmp)
v16float xbuf
v16float int unsigned int xoffs
Initial value:
{
unsigned int cmp
v16float int xstart