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

Overview

Vector MAC intrinsics with pre-adding with 16 bit real by 32 bit real

Functions

v8acc80 lmac8_sym (v8acc80 acc, v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-accumulate intrinsic function with pre-add from x input buffer .
 
v8acc80 lmac8_sym (v8acc80 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-accumulate intrinsic function with pre-add from x input buffer using small X input buffer.
 
v8acc80 lmac8_sym (v8acc80 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, v32int16 ybuff, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-accumulate intrinsic function with pre-add from x and y input buffers using small X input buffer.
 
v8acc80 lmsc8_sym (v8acc80 acc, v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-subtract intrinsic function with pre-add from x input buffer .
 
v8acc80 lmsc8_sym (v8acc80 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-subtract intrinsic function with pre-add from x input buffer using small X input buffer.
 
v8acc80 lmsc8_sym (v8acc80 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, v32int16 ybuff, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-subtract intrinsic function with pre-add from x and y input buffers using small X input buffer.
 
v8acc80 lmul8_sym (v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply intrinsic function with pre-add from x input buffer .
 
v8acc80 lmul8_sym (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply intrinsic function with pre-add from x input buffer using small X input buffer.
 
v8acc80 lmul8_sym (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, v32int16 ybuff, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply intrinsic function with pre-add from x and y input buffers using small X input buffer.
 
v8acc80 lnegmul8_sym (v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-negate intrinsic function with pre-add from x input buffer .
 
v8acc80 lnegmul8_sym (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-negate intrinsic function with pre-add from x input buffer using small X input buffer.
 
v8acc80 lnegmul8_sym (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, v32int16 ybuff, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-negate intrinsic function with pre-add from x and y input buffers using small X input buffer.
 
v16acc48 mac16_sym (v16acc48 acc, v64int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, unsigned int zoffsets_hi)
 Symetric multiply-accumulate intrinsic function with pre-add from x input buffer .
 
v16acc48 mac16_sym (v16acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, unsigned int zoffsets_hi)
 Symetric multiply-accumulate intrinsic function with pre-add from x input buffer using small X input buffer.
 
v16acc48 mac16_sym (v16acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, v32int16 ybuff, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, unsigned int zoffsets_hi)
 Symetric multiply-accumulate intrinsic function with pre-add from x and y input buffers using small X input buffer.
 
v8acc48 mac8_sym (v8acc48 acc, v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-accumulate intrinsic function with pre-add from x input buffer .
 
v8acc48 mac8_sym (v8acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-accumulate intrinsic function with pre-add from x input buffer using small X input buffer.
 
v8acc48 mac8_sym (v8acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, v32int16 ybuff, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-accumulate intrinsic function with pre-add from x and y input buffers using small X input buffer.
 
v16acc48 msc16_sym (v16acc48 acc, v64int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, unsigned int zoffsets_hi)
 Symetric multiply-subtract intrinsic function with pre-add from x input buffer .
 
v16acc48 msc16_sym (v16acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, unsigned int zoffsets_hi)
 Symetric multiply-subtract intrinsic function with pre-add from x input buffer using small X input buffer.
 
v16acc48 msc16_sym (v16acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, v32int16 ybuff, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, unsigned int zoffsets_hi)
 Symetric multiply-subtract intrinsic function with pre-add from x and y input buffers using small X input buffer.
 
v8acc48 msc8_sym (v8acc48 acc, v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-subtract intrinsic function with pre-add from x input buffer .
 
v8acc48 msc8_sym (v8acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-subtract intrinsic function with pre-add from x input buffer using small X input buffer.
 
v8acc48 msc8_sym (v8acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, v32int16 ybuff, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-subtract intrinsic function with pre-add from x and y input buffers using small X input buffer.
 
v16acc48 mul16_sym (v64int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, unsigned int zoffsets_hi)
 Symetric multiply intrinsic function with pre-add from x input buffer .
 
v16acc48 mul16_sym (v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, unsigned int zoffsets_hi)
 Symetric multiply intrinsic function with pre-add from x input buffer using small X input buffer.
 
v16acc48 mul16_sym (v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, v32int16 ybuff, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, unsigned int zoffsets_hi)
 Symetric multiply intrinsic function with pre-add from x and y input buffers using small X input buffer.
 
v8acc48 mul8_sym (v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply intrinsic function with pre-add from x input buffer .
 
v8acc48 mul8_sym (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply intrinsic function with pre-add from x input buffer using small X input buffer.
 
v8acc48 mul8_sym (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, v32int16 ybuff, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply intrinsic function with pre-add from x and y input buffers using small X input buffer.
 
v16acc48 negmul16_sym (v64int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, unsigned int zoffsets_hi)
 Symetric multiply-negate intrinsic function with pre-add from x input buffer .
 
v16acc48 negmul16_sym (v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, unsigned int zoffsets_hi)
 Symetric multiply-negate intrinsic function with pre-add from x input buffer using small X input buffer.
 
v16acc48 negmul16_sym (v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, v32int16 ybuff, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, unsigned int zoffsets_hi)
 Symetric multiply-negate intrinsic function with pre-add from x and y input buffers using small X input buffer.
 
v8acc48 negmul8_sym (v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-negate intrinsic function with pre-add from x input buffer .
 
v8acc48 negmul8_sym (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-negate intrinsic function with pre-add from x input buffer using small X input buffer.
 
v8acc48 negmul8_sym (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, v32int16 ybuff, int ystart, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
 Symetric multiply-negate intrinsic function with pre-add from x and y input buffers using small X input buffer.
 

Function Documentation

v8acc80 lmac8_sym ( v8acc80  acc,
v64int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-accumulate intrinsic function with pre-add from x input buffer .

acc0 += z00*(x00 + y00) + z01*(x01 + y01)
acc1 += z10*(x10 + y10) + z11*(x11 + y11)
acc2 += z20*(x20 + y20) + z21*(x21 + y21)
acc3 += z30*(x30 + y30) + z31*(x31 + y31)
acc4 += z40*(x40 + y40) + z41*(x41 + y41)
acc5 += z50*(x50 + y50) + z51*(x51 + y51)
acc6 += z60*(x60 + y60) + z61*(x61 + y61)
acc7 += z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int80 lanes)
Parameters
accIncoming accumulation vector (8 x int80 lanes)
xbuffInput buffer of 64 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc80 lmac8_sym ( v8acc80  acc,
v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-accumulate intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 += z00*(x00 + y00) + z01*(x01 + y01)
acc1 += z10*(x10 + y10) + z11*(x11 + y11)
acc2 += z20*(x20 + y20) + z21*(x21 + y21)
acc3 += z30*(x30 + y30) + z31*(x31 + y31)
acc4 += z40*(x40 + y40) + z41*(x41 + y41)
acc5 += z50*(x50 + y50) + z51*(x51 + y51)
acc6 += z60*(x60 + y60) + z61*(x61 + y61)
acc7 += z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int80 lanes)
Parameters
accIncoming accumulation vector (8 x int80 lanes)
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc80 lmac8_sym ( v8acc80  acc,
v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v32int16  ybuff,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-accumulate intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 += z00*(x00 + y00) + z01*(x01 + y01)
acc1 += z10*(x10 + y10) + z11*(x11 + y11)
acc2 += z20*(x20 + y20) + z21*(x21 + y21)
acc3 += z30*(x30 + y30) + z31*(x31 + y31)
acc4 += z40*(x40 + y40) + z41*(x41 + y41)
acc5 += z50*(x50 + y50) + z51*(x51 + y51)
acc6 += z60*(x60 + y60) + z61*(x61 + y61)
acc7 += z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int80 lanes)
Parameters
accIncoming accumulation vector (8 x int80 lanes)
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ybuffRight input buffer of 32 elements of type int16
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc80 lmsc8_sym ( v8acc80  acc,
v64int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-subtract intrinsic function with pre-add from x input buffer .

acc0 -= z00*(x00 + y00) + z01*(x01 + y01)
acc1 -= z10*(x10 + y10) + z11*(x11 + y11)
acc2 -= z20*(x20 + y20) + z21*(x21 + y21)
acc3 -= z30*(x30 + y30) + z31*(x31 + y31)
acc4 -= z40*(x40 + y40) + z41*(x41 + y41)
acc5 -= z50*(x50 + y50) + z51*(x51 + y51)
acc6 -= z60*(x60 + y60) + z61*(x61 + y61)
acc7 -= z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int80 lanes)
Parameters
accIncoming accumulation vector (8 x int80 lanes)
xbuffInput buffer of 64 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc80 lmsc8_sym ( v8acc80  acc,
v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-subtract intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 -= z00*(x00 + y00) + z01*(x01 + y01)
acc1 -= z10*(x10 + y10) + z11*(x11 + y11)
acc2 -= z20*(x20 + y20) + z21*(x21 + y21)
acc3 -= z30*(x30 + y30) + z31*(x31 + y31)
acc4 -= z40*(x40 + y40) + z41*(x41 + y41)
acc5 -= z50*(x50 + y50) + z51*(x51 + y51)
acc6 -= z60*(x60 + y60) + z61*(x61 + y61)
acc7 -= z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int80 lanes)
Parameters
accIncoming accumulation vector (8 x int80 lanes)
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc80 lmsc8_sym ( v8acc80  acc,
v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v32int16  ybuff,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-subtract intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 -= z00*(x00 + y00) + z01*(x01 + y01)
acc1 -= z10*(x10 + y10) + z11*(x11 + y11)
acc2 -= z20*(x20 + y20) + z21*(x21 + y21)
acc3 -= z30*(x30 + y30) + z31*(x31 + y31)
acc4 -= z40*(x40 + y40) + z41*(x41 + y41)
acc5 -= z50*(x50 + y50) + z51*(x51 + y51)
acc6 -= z60*(x60 + y60) + z61*(x61 + y61)
acc7 -= z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int80 lanes)
Parameters
accIncoming accumulation vector (8 x int80 lanes)
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ybuffRight input buffer of 32 elements of type int16
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc80 lmul8_sym ( v64int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply intrinsic function with pre-add from x input buffer .

acc0 = z00*(x00 + y00) + z01*(x01 + y01)
acc1 = z10*(x10 + y10) + z11*(x11 + y11)
acc2 = z20*(x20 + y20) + z21*(x21 + y21)
acc3 = z30*(x30 + y30) + z31*(x31 + y31)
acc4 = z40*(x40 + y40) + z41*(x41 + y41)
acc5 = z50*(x50 + y50) + z51*(x51 + y51)
acc6 = z60*(x60 + y60) + z61*(x61 + y61)
acc7 = z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int80 lanes)
Parameters
xbuffInput buffer of 64 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc80 lmul8_sym ( v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 = z00*(x00 + y00) + z01*(x01 + y01)
acc1 = z10*(x10 + y10) + z11*(x11 + y11)
acc2 = z20*(x20 + y20) + z21*(x21 + y21)
acc3 = z30*(x30 + y30) + z31*(x31 + y31)
acc4 = z40*(x40 + y40) + z41*(x41 + y41)
acc5 = z50*(x50 + y50) + z51*(x51 + y51)
acc6 = z60*(x60 + y60) + z61*(x61 + y61)
acc7 = z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int80 lanes)
Parameters
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc80 lmul8_sym ( v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v32int16  ybuff,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 = z00*(x00 + y00) + z01*(x01 + y01)
acc1 = z10*(x10 + y10) + z11*(x11 + y11)
acc2 = z20*(x20 + y20) + z21*(x21 + y21)
acc3 = z30*(x30 + y30) + z31*(x31 + y31)
acc4 = z40*(x40 + y40) + z41*(x41 + y41)
acc5 = z50*(x50 + y50) + z51*(x51 + y51)
acc6 = z60*(x60 + y60) + z61*(x61 + y61)
acc7 = z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int80 lanes)
Parameters
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ybuffRight input buffer of 32 elements of type int16
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc80 lnegmul8_sym ( v64int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-negate intrinsic function with pre-add from x input buffer .

acc0 = -( z00*(x00 + y00) + z01*(x01 + y01) )
acc1 = -( z10*(x10 + y10) + z11*(x11 + y11) )
acc2 = -( z20*(x20 + y20) + z21*(x21 + y21) )
acc3 = -( z30*(x30 + y30) + z31*(x31 + y31) )
acc4 = -( z40*(x40 + y40) + z41*(x41 + y41) )
acc5 = -( z50*(x50 + y50) + z51*(x51 + y51) )
acc6 = -( z60*(x60 + y60) + z61*(x61 + y61) )
acc7 = -( z70*(x70 + y70) + z71*(x71 + y71) )
Returns
Returned accumulation vector (8 x int80 lanes)
Parameters
xbuffInput buffer of 64 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc80 lnegmul8_sym ( v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-negate intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 = -( z00*(x00 + y00) + z01*(x01 + y01) )
acc1 = -( z10*(x10 + y10) + z11*(x11 + y11) )
acc2 = -( z20*(x20 + y20) + z21*(x21 + y21) )
acc3 = -( z30*(x30 + y30) + z31*(x31 + y31) )
acc4 = -( z40*(x40 + y40) + z41*(x41 + y41) )
acc5 = -( z50*(x50 + y50) + z51*(x51 + y51) )
acc6 = -( z60*(x60 + y60) + z61*(x61 + y61) )
acc7 = -( z70*(x70 + y70) + z71*(x71 + y71) )
Returns
Returned accumulation vector (8 x int80 lanes)
Parameters
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc80 lnegmul8_sym ( v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v32int16  ybuff,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-negate intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 = -( z00*(x00 + y00) + z01*(x01 + y01) )
acc1 = -( z10*(x10 + y10) + z11*(x11 + y11) )
acc2 = -( z20*(x20 + y20) + z21*(x21 + y21) )
acc3 = -( z30*(x30 + y30) + z31*(x31 + y31) )
acc4 = -( z40*(x40 + y40) + z41*(x41 + y41) )
acc5 = -( z50*(x50 + y50) + z51*(x51 + y51) )
acc6 = -( z60*(x60 + y60) + z61*(x61 + y61) )
acc7 = -( z70*(x70 + y70) + z71*(x71 + y71) )
Returns
Returned accumulation vector (8 x int80 lanes)
Parameters
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ybuffRight input buffer of 32 elements of type int16
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v16acc48 mac16_sym ( v16acc48  acc,
v64int16  xbuff,
int  xstart,
unsigned int  xoffsets,
unsigned int  xoffsets_hi,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
unsigned int  zoffsets_hi 
)

Symetric multiply-accumulate intrinsic function with pre-add from x input buffer .

acc0 += z00*(x00 + y00)
acc1 += z10*(x10 + y10)
acc2 += z20*(x20 + y20)
acc3 += z30*(x30 + y30)
acc4 += z40*(x40 + y40)
acc5 += z50*(x50 + y50)
acc6 += z60*(x60 + y60)
acc7 += z70*(x70 + y70)
acc8 += z80*(x80 + y80)
acc9 += z90*(x90 + y90)
acc10 += z100*(x100 + y100)
acc11 += z110*(x110 + y110)
acc12 += z120*(x120 + y120)
acc13 += z130*(x130 + y130)
acc14 += z140*(x140 + y140)
acc15 += z150*(x150 + y150)
Returns
Returned accumulation vector (16 x int48 lanes)
Parameters
accIncoming accumulation vector (16 x int48 lanes)
xbuffInput buffer of 64 elements of type int16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane. LSB apply to first lane
xoffsets_hi4b offset for each lane. LSB apply to 8th lane
ystartStarting position offset applied to all lanes for input from Y buffer.
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
zoffsets_hi4b offset for each lane, applied to input from Z buffer. LSB apply to 8th lane
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.
v16acc48 mac16_sym ( v16acc48  acc,
v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
unsigned int  xoffsets_hi,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
unsigned int  zoffsets_hi 
)

Symetric multiply-accumulate intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 += z00*(x00 + y00)
acc1 += z10*(x10 + y10)
acc2 += z20*(x20 + y20)
acc3 += z30*(x30 + y30)
acc4 += z40*(x40 + y40)
acc5 += z50*(x50 + y50)
acc6 += z60*(x60 + y60)
acc7 += z70*(x70 + y70)
acc8 += z80*(x80 + y80)
acc9 += z90*(x90 + y90)
acc10 += z100*(x100 + y100)
acc11 += z110*(x110 + y110)
acc12 += z120*(x120 + y120)
acc13 += z130*(x130 + y130)
acc14 += z140*(x140 + y140)
acc15 += z150*(x150 + y150)
Returns
Returned accumulation vector (16 x int48 lanes)
Parameters
accIncoming accumulation vector (16 x int48 lanes)
xbuffInput buffer of 32 elements of type int16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane. LSB apply to first lane
xoffsets_hi4b offset for each lane. LSB apply to 8th lane
ystartStarting position offset applied to all lanes for input from Y buffer.
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
zoffsets_hi4b offset for each lane, applied to input from Z buffer. LSB apply to 8th lane
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.
v16acc48 mac16_sym ( v16acc48  acc,
v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
unsigned int  xoffsets_hi,
v32int16  ybuff,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
unsigned int  zoffsets_hi 
)

Symetric multiply-accumulate intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 += z00*(x00 + y00)
acc1 += z10*(x10 + y10)
acc2 += z20*(x20 + y20)
acc3 += z30*(x30 + y30)
acc4 += z40*(x40 + y40)
acc5 += z50*(x50 + y50)
acc6 += z60*(x60 + y60)
acc7 += z70*(x70 + y70)
acc8 += z80*(x80 + y80)
acc9 += z90*(x90 + y90)
acc10 += z100*(x100 + y100)
acc11 += z110*(x110 + y110)
acc12 += z120*(x120 + y120)
acc13 += z130*(x130 + y130)
acc14 += z140*(x140 + y140)
acc15 += z150*(x150 + y150)
Returns
Returned accumulation vector (16 x int48 lanes)
Parameters
accIncoming accumulation vector (16 x int48 lanes)
xbuffInput buffer of 32 elements of type int16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane. LSB apply to first lane
xoffsets_hi4b offset for each lane. LSB apply to 8th lane
ybuffRight input buffer of 32 elements of type int16
ystartStarting position offset applied to all lanes for input from Y buffer.
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
zoffsets_hi4b offset for each lane, applied to input from Z buffer. LSB apply to 8th lane
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.
v8acc48 mac8_sym ( v8acc48  acc,
v64int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-accumulate intrinsic function with pre-add from x input buffer .

acc0 += z00*(x00 + y00) + z01*(x01 + y01)
acc1 += z10*(x10 + y10) + z11*(x11 + y11)
acc2 += z20*(x20 + y20) + z21*(x21 + y21)
acc3 += z30*(x30 + y30) + z31*(x31 + y31)
acc4 += z40*(x40 + y40) + z41*(x41 + y41)
acc5 += z50*(x50 + y50) + z51*(x51 + y51)
acc6 += z60*(x60 + y60) + z61*(x61 + y61)
acc7 += z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int48 lanes)
Parameters
accIncoming accumulation vector (8 x int48 lanes)
xbuffInput buffer of 64 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc48 mac8_sym ( v8acc48  acc,
v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-accumulate intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 += z00*(x00 + y00) + z01*(x01 + y01)
acc1 += z10*(x10 + y10) + z11*(x11 + y11)
acc2 += z20*(x20 + y20) + z21*(x21 + y21)
acc3 += z30*(x30 + y30) + z31*(x31 + y31)
acc4 += z40*(x40 + y40) + z41*(x41 + y41)
acc5 += z50*(x50 + y50) + z51*(x51 + y51)
acc6 += z60*(x60 + y60) + z61*(x61 + y61)
acc7 += z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int48 lanes)
Parameters
accIncoming accumulation vector (8 x int48 lanes)
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc48 mac8_sym ( v8acc48  acc,
v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v32int16  ybuff,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-accumulate intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 += z00*(x00 + y00) + z01*(x01 + y01)
acc1 += z10*(x10 + y10) + z11*(x11 + y11)
acc2 += z20*(x20 + y20) + z21*(x21 + y21)
acc3 += z30*(x30 + y30) + z31*(x31 + y31)
acc4 += z40*(x40 + y40) + z41*(x41 + y41)
acc5 += z50*(x50 + y50) + z51*(x51 + y51)
acc6 += z60*(x60 + y60) + z61*(x61 + y61)
acc7 += z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int48 lanes)
Parameters
accIncoming accumulation vector (8 x int48 lanes)
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ybuffRight input buffer of 32 elements of type int16
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v16acc48 msc16_sym ( v16acc48  acc,
v64int16  xbuff,
int  xstart,
unsigned int  xoffsets,
unsigned int  xoffsets_hi,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
unsigned int  zoffsets_hi 
)

Symetric multiply-subtract intrinsic function with pre-add from x input buffer .

acc0 -= z00*(x00 + y00)
acc1 -= z10*(x10 + y10)
acc2 -= z20*(x20 + y20)
acc3 -= z30*(x30 + y30)
acc4 -= z40*(x40 + y40)
acc5 -= z50*(x50 + y50)
acc6 -= z60*(x60 + y60)
acc7 -= z70*(x70 + y70)
acc8 -= z80*(x80 + y80)
acc9 -= z90*(x90 + y90)
acc10 -= z100*(x100 + y100)
acc11 -= z110*(x110 + y110)
acc12 -= z120*(x120 + y120)
acc13 -= z130*(x130 + y130)
acc14 -= z140*(x140 + y140)
acc15 -= z150*(x150 + y150)
Returns
Returned accumulation vector (16 x int48 lanes)
Parameters
accIncoming accumulation vector (16 x int48 lanes)
xbuffInput buffer of 64 elements of type int16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane. LSB apply to first lane
xoffsets_hi4b offset for each lane. LSB apply to 8th lane
ystartStarting position offset applied to all lanes for input from Y buffer.
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
zoffsets_hi4b offset for each lane, applied to input from Z buffer. LSB apply to 8th lane
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.
v16acc48 msc16_sym ( v16acc48  acc,
v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
unsigned int  xoffsets_hi,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
unsigned int  zoffsets_hi 
)

Symetric multiply-subtract intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 -= z00*(x00 + y00)
acc1 -= z10*(x10 + y10)
acc2 -= z20*(x20 + y20)
acc3 -= z30*(x30 + y30)
acc4 -= z40*(x40 + y40)
acc5 -= z50*(x50 + y50)
acc6 -= z60*(x60 + y60)
acc7 -= z70*(x70 + y70)
acc8 -= z80*(x80 + y80)
acc9 -= z90*(x90 + y90)
acc10 -= z100*(x100 + y100)
acc11 -= z110*(x110 + y110)
acc12 -= z120*(x120 + y120)
acc13 -= z130*(x130 + y130)
acc14 -= z140*(x140 + y140)
acc15 -= z150*(x150 + y150)
Returns
Returned accumulation vector (16 x int48 lanes)
Parameters
accIncoming accumulation vector (16 x int48 lanes)
xbuffInput buffer of 32 elements of type int16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane. LSB apply to first lane
xoffsets_hi4b offset for each lane. LSB apply to 8th lane
ystartStarting position offset applied to all lanes for input from Y buffer.
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
zoffsets_hi4b offset for each lane, applied to input from Z buffer. LSB apply to 8th lane
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.
v16acc48 msc16_sym ( v16acc48  acc,
v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
unsigned int  xoffsets_hi,
v32int16  ybuff,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
unsigned int  zoffsets_hi 
)

Symetric multiply-subtract intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 -= z00*(x00 + y00)
acc1 -= z10*(x10 + y10)
acc2 -= z20*(x20 + y20)
acc3 -= z30*(x30 + y30)
acc4 -= z40*(x40 + y40)
acc5 -= z50*(x50 + y50)
acc6 -= z60*(x60 + y60)
acc7 -= z70*(x70 + y70)
acc8 -= z80*(x80 + y80)
acc9 -= z90*(x90 + y90)
acc10 -= z100*(x100 + y100)
acc11 -= z110*(x110 + y110)
acc12 -= z120*(x120 + y120)
acc13 -= z130*(x130 + y130)
acc14 -= z140*(x140 + y140)
acc15 -= z150*(x150 + y150)
Returns
Returned accumulation vector (16 x int48 lanes)
Parameters
accIncoming accumulation vector (16 x int48 lanes)
xbuffInput buffer of 32 elements of type int16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane. LSB apply to first lane
xoffsets_hi4b offset for each lane. LSB apply to 8th lane
ybuffRight input buffer of 32 elements of type int16
ystartStarting position offset applied to all lanes for input from Y buffer.
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
zoffsets_hi4b offset for each lane, applied to input from Z buffer. LSB apply to 8th lane
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.
v8acc48 msc8_sym ( v8acc48  acc,
v64int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-subtract intrinsic function with pre-add from x input buffer .

acc0 -= z00*(x00 + y00) + z01*(x01 + y01)
acc1 -= z10*(x10 + y10) + z11*(x11 + y11)
acc2 -= z20*(x20 + y20) + z21*(x21 + y21)
acc3 -= z30*(x30 + y30) + z31*(x31 + y31)
acc4 -= z40*(x40 + y40) + z41*(x41 + y41)
acc5 -= z50*(x50 + y50) + z51*(x51 + y51)
acc6 -= z60*(x60 + y60) + z61*(x61 + y61)
acc7 -= z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int48 lanes)
Parameters
accIncoming accumulation vector (8 x int48 lanes)
xbuffInput buffer of 64 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc48 msc8_sym ( v8acc48  acc,
v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-subtract intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 -= z00*(x00 + y00) + z01*(x01 + y01)
acc1 -= z10*(x10 + y10) + z11*(x11 + y11)
acc2 -= z20*(x20 + y20) + z21*(x21 + y21)
acc3 -= z30*(x30 + y30) + z31*(x31 + y31)
acc4 -= z40*(x40 + y40) + z41*(x41 + y41)
acc5 -= z50*(x50 + y50) + z51*(x51 + y51)
acc6 -= z60*(x60 + y60) + z61*(x61 + y61)
acc7 -= z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int48 lanes)
Parameters
accIncoming accumulation vector (8 x int48 lanes)
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc48 msc8_sym ( v8acc48  acc,
v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v32int16  ybuff,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-subtract intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 -= z00*(x00 + y00) + z01*(x01 + y01)
acc1 -= z10*(x10 + y10) + z11*(x11 + y11)
acc2 -= z20*(x20 + y20) + z21*(x21 + y21)
acc3 -= z30*(x30 + y30) + z31*(x31 + y31)
acc4 -= z40*(x40 + y40) + z41*(x41 + y41)
acc5 -= z50*(x50 + y50) + z51*(x51 + y51)
acc6 -= z60*(x60 + y60) + z61*(x61 + y61)
acc7 -= z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int48 lanes)
Parameters
accIncoming accumulation vector (8 x int48 lanes)
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ybuffRight input buffer of 32 elements of type int16
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v16acc48 mul16_sym ( v64int16  xbuff,
int  xstart,
unsigned int  xoffsets,
unsigned int  xoffsets_hi,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
unsigned int  zoffsets_hi 
)

Symetric multiply intrinsic function with pre-add from x input buffer .

acc0 = z00*(x00 + y00)
acc1 = z10*(x10 + y10)
acc2 = z20*(x20 + y20)
acc3 = z30*(x30 + y30)
acc4 = z40*(x40 + y40)
acc5 = z50*(x50 + y50)
acc6 = z60*(x60 + y60)
acc7 = z70*(x70 + y70)
acc8 = z80*(x80 + y80)
acc9 = z90*(x90 + y90)
acc10 = z100*(x100 + y100)
acc11 = z110*(x110 + y110)
acc12 = z120*(x120 + y120)
acc13 = z130*(x130 + y130)
acc14 = z140*(x140 + y140)
acc15 = z150*(x150 + y150)
Returns
Returned accumulation vector (16 x int48 lanes)
Parameters
xbuffInput buffer of 64 elements of type int16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane. LSB apply to first lane
xoffsets_hi4b offset for each lane. LSB apply to 8th lane
ystartStarting position offset applied to all lanes for input from Y buffer.
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
zoffsets_hi4b offset for each lane, applied to input from Z buffer. LSB apply to 8th lane
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.
v16acc48 mul16_sym ( v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
unsigned int  xoffsets_hi,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
unsigned int  zoffsets_hi 
)

Symetric multiply intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 = z00*(x00 + y00)
acc1 = z10*(x10 + y10)
acc2 = z20*(x20 + y20)
acc3 = z30*(x30 + y30)
acc4 = z40*(x40 + y40)
acc5 = z50*(x50 + y50)
acc6 = z60*(x60 + y60)
acc7 = z70*(x70 + y70)
acc8 = z80*(x80 + y80)
acc9 = z90*(x90 + y90)
acc10 = z100*(x100 + y100)
acc11 = z110*(x110 + y110)
acc12 = z120*(x120 + y120)
acc13 = z130*(x130 + y130)
acc14 = z140*(x140 + y140)
acc15 = z150*(x150 + y150)
Returns
Returned accumulation vector (16 x int48 lanes)
Parameters
xbuffInput buffer of 32 elements of type int16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane. LSB apply to first lane
xoffsets_hi4b offset for each lane. LSB apply to 8th lane
ystartStarting position offset applied to all lanes for input from Y buffer.
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
zoffsets_hi4b offset for each lane, applied to input from Z buffer. LSB apply to 8th lane
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.
v16acc48 mul16_sym ( v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
unsigned int  xoffsets_hi,
v32int16  ybuff,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
unsigned int  zoffsets_hi 
)

Symetric multiply intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 = z00*(x00 + y00)
acc1 = z10*(x10 + y10)
acc2 = z20*(x20 + y20)
acc3 = z30*(x30 + y30)
acc4 = z40*(x40 + y40)
acc5 = z50*(x50 + y50)
acc6 = z60*(x60 + y60)
acc7 = z70*(x70 + y70)
acc8 = z80*(x80 + y80)
acc9 = z90*(x90 + y90)
acc10 = z100*(x100 + y100)
acc11 = z110*(x110 + y110)
acc12 = z120*(x120 + y120)
acc13 = z130*(x130 + y130)
acc14 = z140*(x140 + y140)
acc15 = z150*(x150 + y150)
Returns
Returned accumulation vector (16 x int48 lanes)
Parameters
xbuffInput buffer of 32 elements of type int16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane. LSB apply to first lane
xoffsets_hi4b offset for each lane. LSB apply to 8th lane
ybuffRight input buffer of 32 elements of type int16
ystartStarting position offset applied to all lanes for input from Y buffer.
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
zoffsets_hi4b offset for each lane, applied to input from Z buffer. LSB apply to 8th lane
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.
v8acc48 mul8_sym ( v64int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply intrinsic function with pre-add from x input buffer .

acc0 = z00*(x00 + y00) + z01*(x01 + y01)
acc1 = z10*(x10 + y10) + z11*(x11 + y11)
acc2 = z20*(x20 + y20) + z21*(x21 + y21)
acc3 = z30*(x30 + y30) + z31*(x31 + y31)
acc4 = z40*(x40 + y40) + z41*(x41 + y41)
acc5 = z50*(x50 + y50) + z51*(x51 + y51)
acc6 = z60*(x60 + y60) + z61*(x61 + y61)
acc7 = z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int48 lanes)
Parameters
xbuffInput buffer of 64 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc48 mul8_sym ( v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 = z00*(x00 + y00) + z01*(x01 + y01)
acc1 = z10*(x10 + y10) + z11*(x11 + y11)
acc2 = z20*(x20 + y20) + z21*(x21 + y21)
acc3 = z30*(x30 + y30) + z31*(x31 + y31)
acc4 = z40*(x40 + y40) + z41*(x41 + y41)
acc5 = z50*(x50 + y50) + z51*(x51 + y51)
acc6 = z60*(x60 + y60) + z61*(x61 + y61)
acc7 = z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int48 lanes)
Parameters
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc48 mul8_sym ( v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v32int16  ybuff,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 = z00*(x00 + y00) + z01*(x01 + y01)
acc1 = z10*(x10 + y10) + z11*(x11 + y11)
acc2 = z20*(x20 + y20) + z21*(x21 + y21)
acc3 = z30*(x30 + y30) + z31*(x31 + y31)
acc4 = z40*(x40 + y40) + z41*(x41 + y41)
acc5 = z50*(x50 + y50) + z51*(x51 + y51)
acc6 = z60*(x60 + y60) + z61*(x61 + y61)
acc7 = z70*(x70 + y70) + z71*(x71 + y71)
Returns
Returned accumulation vector (8 x int48 lanes)
Parameters
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ybuffRight input buffer of 32 elements of type int16
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v16acc48 negmul16_sym ( v64int16  xbuff,
int  xstart,
unsigned int  xoffsets,
unsigned int  xoffsets_hi,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
unsigned int  zoffsets_hi 
)

Symetric multiply-negate intrinsic function with pre-add from x input buffer .

acc0 = -( z00*(x00 + y00) )
acc1 = -( z10*(x10 + y10) )
acc2 = -( z20*(x20 + y20) )
acc3 = -( z30*(x30 + y30) )
acc4 = -( z40*(x40 + y40) )
acc5 = -( z50*(x50 + y50) )
acc6 = -( z60*(x60 + y60) )
acc7 = -( z70*(x70 + y70) )
acc8 = -( z80*(x80 + y80) )
acc9 = -( z90*(x90 + y90) )
acc10 = -( z100*(x100 + y100) )
acc11 = -( z110*(x110 + y110) )
acc12 = -( z120*(x120 + y120) )
acc13 = -( z130*(x130 + y130) )
acc14 = -( z140*(x140 + y140) )
acc15 = -( z150*(x150 + y150) )
Returns
Returned accumulation vector (16 x int48 lanes)
Parameters
xbuffInput buffer of 64 elements of type int16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane. LSB apply to first lane
xoffsets_hi4b offset for each lane. LSB apply to 8th lane
ystartStarting position offset applied to all lanes for input from Y buffer.
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
zoffsets_hi4b offset for each lane, applied to input from Z buffer. LSB apply to 8th lane
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.
v16acc48 negmul16_sym ( v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
unsigned int  xoffsets_hi,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
unsigned int  zoffsets_hi 
)

Symetric multiply-negate intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 = -( z00*(x00 + y00) )
acc1 = -( z10*(x10 + y10) )
acc2 = -( z20*(x20 + y20) )
acc3 = -( z30*(x30 + y30) )
acc4 = -( z40*(x40 + y40) )
acc5 = -( z50*(x50 + y50) )
acc6 = -( z60*(x60 + y60) )
acc7 = -( z70*(x70 + y70) )
acc8 = -( z80*(x80 + y80) )
acc9 = -( z90*(x90 + y90) )
acc10 = -( z100*(x100 + y100) )
acc11 = -( z110*(x110 + y110) )
acc12 = -( z120*(x120 + y120) )
acc13 = -( z130*(x130 + y130) )
acc14 = -( z140*(x140 + y140) )
acc15 = -( z150*(x150 + y150) )
Returns
Returned accumulation vector (16 x int48 lanes)
Parameters
xbuffInput buffer of 32 elements of type int16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane. LSB apply to first lane
xoffsets_hi4b offset for each lane. LSB apply to 8th lane
ystartStarting position offset applied to all lanes for input from Y buffer.
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
zoffsets_hi4b offset for each lane, applied to input from Z buffer. LSB apply to 8th lane
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.
v16acc48 negmul16_sym ( v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
unsigned int  xoffsets_hi,
v32int16  ybuff,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
unsigned int  zoffsets_hi 
)

Symetric multiply-negate intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 = -( z00*(x00 + y00) )
acc1 = -( z10*(x10 + y10) )
acc2 = -( z20*(x20 + y20) )
acc3 = -( z30*(x30 + y30) )
acc4 = -( z40*(x40 + y40) )
acc5 = -( z50*(x50 + y50) )
acc6 = -( z60*(x60 + y60) )
acc7 = -( z70*(x70 + y70) )
acc8 = -( z80*(x80 + y80) )
acc9 = -( z90*(x90 + y90) )
acc10 = -( z100*(x100 + y100) )
acc11 = -( z110*(x110 + y110) )
acc12 = -( z120*(x120 + y120) )
acc13 = -( z130*(x130 + y130) )
acc14 = -( z140*(x140 + y140) )
acc15 = -( z150*(x150 + y150) )
Returns
Returned accumulation vector (16 x int48 lanes)
Parameters
xbuffInput buffer of 32 elements of type int16
xstartStarting position offset applied to all lanes of input from X buffer.
xoffsets4b offset for each lane. LSB apply to first lane
xoffsets_hi4b offset for each lane. LSB apply to 8th lane
ybuffRight input buffer of 32 elements of type int16
ystartStarting position offset applied to all lanes for input from Y buffer.
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
zoffsets_hi4b offset for each lane, applied to input from Z buffer. LSB apply to 8th lane
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.
v8acc48 negmul8_sym ( v64int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-negate intrinsic function with pre-add from x input buffer .

acc0 = -( z00*(x00 + y00) + z01*(x01 + y01) )
acc1 = -( z10*(x10 + y10) + z11*(x11 + y11) )
acc2 = -( z20*(x20 + y20) + z21*(x21 + y21) )
acc3 = -( z30*(x30 + y30) + z31*(x31 + y31) )
acc4 = -( z40*(x40 + y40) + z41*(x41 + y41) )
acc5 = -( z50*(x50 + y50) + z51*(x51 + y51) )
acc6 = -( z60*(x60 + y60) + z61*(x61 + y61) )
acc7 = -( z70*(x70 + y70) + z71*(x71 + y71) )
Returns
Returned accumulation vector (8 x int48 lanes)
Parameters
xbuffInput buffer of 64 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc48 negmul8_sym ( v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-negate intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 = -( z00*(x00 + y00) + z01*(x01 + y01) )
acc1 = -( z10*(x10 + y10) + z11*(x11 + y11) )
acc2 = -( z20*(x20 + y20) + z21*(x21 + y21) )
acc3 = -( z30*(x30 + y30) + z31*(x31 + y31) )
acc4 = -( z40*(x40 + y40) + z41*(x41 + y41) )
acc5 = -( z50*(x50 + y50) + z51*(x51 + y51) )
acc6 = -( z60*(x60 + y60) + z61*(x61 + y61) )
acc7 = -( z70*(x70 + y70) + z71*(x71 + y71) )
Returns
Returned accumulation vector (8 x int48 lanes)
Parameters
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ystartStarting position offset applied to all lanes for input from Y buffer.
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.
v8acc48 negmul8_sym ( v32int16  xbuff,
int  xstart,
unsigned int  xoffsets,
int  xstep,
v32int16  ybuff,
int  ystart,
v8int32  zbuff,
int  zstart,
unsigned int  zoffsets,
int  zstep 
)

Symetric multiply-negate intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 = -( z00*(x00 + y00) + z01*(x01 + y01) )
acc1 = -( z10*(x10 + y10) + z11*(x11 + y11) )
acc2 = -( z20*(x20 + y20) + z21*(x21 + y21) )
acc3 = -( z30*(x30 + y30) + z31*(x31 + y31) )
acc4 = -( z40*(x40 + y40) + z41*(x41 + y41) )
acc5 = -( z50*(x50 + y50) + z51*(x51 + y51) )
acc6 = -( z60*(x60 + y60) + z61*(x61 + y61) )
acc7 = -( z70*(x70 + y70) + z71*(x71 + y71) )
Returns
Returned accumulation vector (8 x int48 lanes)
Parameters
xbuffInput buffer of 32 elements of type int16
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
xstepStep between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
ybuffRight input buffer of 32 elements of type int16
ystartStarting position offset applied to all lanes for input from Y buffer.
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.