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

Overview

Vector MAC intrinsics with partial pre-subtraction with 32 bit real by 32 bit real

Functions

v4acc80 lmac4_antisym_ct (v4acc80 acc, v32int32 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Anti-symmetric multiply-accumulate intrinsic function with center-tap optimization with pre-sub from x input buffer .
 
v4acc80 lmac4_antisym_ct (v4acc80 acc, v16int32 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Anti-symmetric multiply-accumulate intrinsic function with center-tap optimization with pre-sub from x input buffer using small X input buffer.
 
v4acc80 lmac4_antisym_ct (v4acc80 acc, v16int32 xbuff, int xstart, unsigned int xoffsets, v16int32 ybuff, int ystart, unsigned int mtap, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Anti-symmetric multiply-accumulate intrinsic function with center-tap optimization with pre-sub from x and y input buffers using small X input buffer.
 
v4acc80 lmsc4_antisym_ct (v4acc80 acc, v32int32 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Anti-symmetric multiply-subtract intrinsic function with center-tap optimization with pre-sub from x input buffer .
 
v4acc80 lmsc4_antisym_ct (v4acc80 acc, v16int32 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Anti-symmetric multiply-subtract intrinsic function with center-tap optimization with pre-sub from x input buffer using small X input buffer.
 
v4acc80 lmsc4_antisym_ct (v4acc80 acc, v16int32 xbuff, int xstart, unsigned int xoffsets, v16int32 ybuff, int ystart, unsigned int mtap, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Anti-symmetric multiply-subtract intrinsic function with center-tap optimization with pre-sub from x and y input buffers using small X input buffer.
 
v4acc80 lmul4_antisym_ct (v32int32 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Anti-symmetric multiply intrinsic function with center-tap optimization with pre-sub from x input buffer .
 
v4acc80 lmul4_antisym_ct (v16int32 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Anti-symmetric multiply intrinsic function with center-tap optimization with pre-sub from x input buffer using small X input buffer.
 
v4acc80 lmul4_antisym_ct (v16int32 xbuff, int xstart, unsigned int xoffsets, v16int32 ybuff, int ystart, unsigned int mtap, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Anti-symmetric multiply intrinsic function with center-tap optimization with pre-sub from x and y input buffers using small X input buffer.
 
v4acc80 lnegmul4_antisym_ct (v32int32 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Anti-symmetric multiply-negate intrinsic function with center-tap optimization with pre-sub from x input buffer .
 
v4acc80 lnegmul4_antisym_ct (v16int32 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Anti-symmetric multiply-negate intrinsic function with center-tap optimization with pre-sub from x input buffer using small X input buffer.
 
v4acc80 lnegmul4_antisym_ct (v16int32 xbuff, int xstart, unsigned int xoffsets, v16int32 ybuff, int ystart, unsigned int mtap, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Anti-symmetric multiply-negate intrinsic function with center-tap optimization with pre-sub from x and y input buffers using small X input buffer.
 

Function Documentation

v4acc80 lmac4_antisym_ct ( v4acc80  acc,
v32int32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  mtap,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Anti-symmetric multiply-accumulate intrinsic function with center-tap optimization with pre-sub from x input buffer .

acc0 += z00*(x00 - y00) + z01*x01
acc1 += z10*(x10 - y10) + z11*x11
acc2 += z20*(x20 - y20) + z21*x21
acc3 += z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x int80 lanes)
Parameters
accIncoming accumulation vector (4 x int80 lanes)
xbuffInput buffer of 32 elements of type int32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4acc80 lmac4_antisym_ct ( v4acc80  acc,
v16int32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  mtap,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Anti-symmetric multiply-accumulate intrinsic function with center-tap optimization with pre-sub from x input buffer using small X input buffer.

acc0 += z00*(x00 - y00) + z01*x01
acc1 += z10*(x10 - y10) + z11*x11
acc2 += z20*(x20 - y20) + z21*x21
acc3 += z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x int80 lanes)
Parameters
accIncoming accumulation vector (4 x int80 lanes)
xbuffInput buffer of 16 elements of type int32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4acc80 lmac4_antisym_ct ( v4acc80  acc,
v16int32  xbuff,
int  xstart,
unsigned int  xoffsets,
v16int32  ybuff,
int  ystart,
unsigned int  mtap,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Anti-symmetric multiply-accumulate intrinsic function with center-tap optimization with pre-sub from x and y input buffers using small X input buffer.

acc0 += z00*(x00 - y00) + z01*x01
acc1 += z10*(x10 - y10) + z11*x11
acc2 += z20*(x20 - y20) + z21*x21
acc3 += z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x int80 lanes)
Parameters
accIncoming accumulation vector (4 x int80 lanes)
xbuffInput buffer of 16 elements of type int32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ybuffRight input buffer of 16 elements of type int32
ystartStarting position offset applied to all lanes for input from Y buffer.
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4acc80 lmsc4_antisym_ct ( v4acc80  acc,
v32int32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  mtap,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Anti-symmetric multiply-subtract intrinsic function with center-tap optimization with pre-sub from x input buffer .

acc0 -= z00*(x00 - y00) + z01*x01
acc1 -= z10*(x10 - y10) + z11*x11
acc2 -= z20*(x20 - y20) + z21*x21
acc3 -= z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x int80 lanes)
Parameters
accIncoming accumulation vector (4 x int80 lanes)
xbuffInput buffer of 32 elements of type int32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4acc80 lmsc4_antisym_ct ( v4acc80  acc,
v16int32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  mtap,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Anti-symmetric multiply-subtract intrinsic function with center-tap optimization with pre-sub from x input buffer using small X input buffer.

acc0 -= z00*(x00 - y00) + z01*x01
acc1 -= z10*(x10 - y10) + z11*x11
acc2 -= z20*(x20 - y20) + z21*x21
acc3 -= z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x int80 lanes)
Parameters
accIncoming accumulation vector (4 x int80 lanes)
xbuffInput buffer of 16 elements of type int32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4acc80 lmsc4_antisym_ct ( v4acc80  acc,
v16int32  xbuff,
int  xstart,
unsigned int  xoffsets,
v16int32  ybuff,
int  ystart,
unsigned int  mtap,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Anti-symmetric multiply-subtract intrinsic function with center-tap optimization with pre-sub from x and y input buffers using small X input buffer.

acc0 -= z00*(x00 - y00) + z01*x01
acc1 -= z10*(x10 - y10) + z11*x11
acc2 -= z20*(x20 - y20) + z21*x21
acc3 -= z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x int80 lanes)
Parameters
accIncoming accumulation vector (4 x int80 lanes)
xbuffInput buffer of 16 elements of type int32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ybuffRight input buffer of 16 elements of type int32
ystartStarting position offset applied to all lanes for input from Y buffer.
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4acc80 lmul4_antisym_ct ( v32int32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  mtap,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Anti-symmetric multiply intrinsic function with center-tap optimization with pre-sub from x input buffer .

acc0 = z00*(x00 - y00) + z01*x01
acc1 = z10*(x10 - y10) + z11*x11
acc2 = z20*(x20 - y20) + z21*x21
acc3 = z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x int80 lanes)
Parameters
xbuffInput buffer of 32 elements of type int32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4acc80 lmul4_antisym_ct ( v16int32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  mtap,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Anti-symmetric multiply intrinsic function with center-tap optimization with pre-sub from x input buffer using small X input buffer.

acc0 = z00*(x00 - y00) + z01*x01
acc1 = z10*(x10 - y10) + z11*x11
acc2 = z20*(x20 - y20) + z21*x21
acc3 = z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x int80 lanes)
Parameters
xbuffInput buffer of 16 elements of type int32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4acc80 lmul4_antisym_ct ( v16int32  xbuff,
int  xstart,
unsigned int  xoffsets,
v16int32  ybuff,
int  ystart,
unsigned int  mtap,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Anti-symmetric multiply intrinsic function with center-tap optimization with pre-sub from x and y input buffers using small X input buffer.

acc0 = z00*(x00 - y00) + z01*x01
acc1 = z10*(x10 - y10) + z11*x11
acc2 = z20*(x20 - y20) + z21*x21
acc3 = z30*(x30 - y30) + z31*x31
Returns
Returned accumulation vector (4 x int80 lanes)
Parameters
xbuffInput buffer of 16 elements of type int32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ybuffRight input buffer of 16 elements of type int32
ystartStarting position offset applied to all lanes for input from Y buffer.
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4acc80 lnegmul4_antisym_ct ( v32int32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  mtap,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Anti-symmetric multiply-negate intrinsic function with center-tap optimization with pre-sub from x input buffer .

acc0 = -( z00*(x00 - y00) + z01*x01 )
acc1 = -( z10*(x10 - y10) + z11*x11 )
acc2 = -( z20*(x20 - y20) + z21*x21 )
acc3 = -( z30*(x30 - y30) + z31*x31 )
Returns
Returned accumulation vector (4 x int80 lanes)
Parameters
xbuffInput buffer of 32 elements of type int32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4acc80 lnegmul4_antisym_ct ( v16int32  xbuff,
int  xstart,
unsigned int  xoffsets,
int  ystart,
unsigned int  mtap,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Anti-symmetric multiply-negate intrinsic function with center-tap optimization with pre-sub from x input buffer using small X input buffer.

acc0 = -( z00*(x00 - y00) + z01*x01 )
acc1 = -( z10*(x10 - y10) + z11*x11 )
acc2 = -( z20*(x20 - y20) + z21*x21 )
acc3 = -( z30*(x30 - y30) + z31*x31 )
Returns
Returned accumulation vector (4 x int80 lanes)
Parameters
xbuffInput buffer of 16 elements of type int32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ystartStarting position offset applied to all lanes for input from Y buffer.
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.
v4acc80 lnegmul4_antisym_ct ( v16int32  xbuff,
int  xstart,
unsigned int  xoffsets,
v16int32  ybuff,
int  ystart,
unsigned int  mtap,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Anti-symmetric multiply-negate intrinsic function with center-tap optimization with pre-sub from x and y input buffers using small X input buffer.

acc0 = -( z00*(x00 - y00) + z01*x01 )
acc1 = -( z10*(x10 - y10) + z11*x11 )
acc2 = -( z20*(x20 - y20) + z21*x21 )
acc3 = -( z30*(x30 - y30) + z31*x31 )
Returns
Returned accumulation vector (4 x int80 lanes)
Parameters
xbuffInput buffer of 16 elements of type int32
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane, applied to both x and y buffers. LSB apply to first lane
ybuffRight input buffer of 16 elements of type int32
ystartStarting position offset applied to all lanes for input from Y buffer.
mtapSelector for partial pre-subtraction relative to xstart
zbuffInput buffer of 8 elements of type int32
zstartStarting position offset applied to all lanes for input from Z buffer. This must be a compile time constant. Only the 4 LSB of the argument are used.
zoffsets4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
zstepStep between each column for selection in the zbuffer.
Note
  • For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  • Parameter 'zstart' must be a compile time constant.