AI Engine Intrinsics
(AIE) r2p21
|
Vector MAC intrinsics with pre-subtraction and upshifting with 16 bit real by 16 bit real
Functions | |
v16acc48 | mac8_antisym_uct (v16acc48 acc, v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int ysquare, int uct_col, int uct_shift, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Anti-symmetric multiply-accumulate intrinsic function with unit center-tap optimization with pre-sub from x input buffer . | |
v16acc48 | mac8_antisym_uct (v16acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int ysquare, int uct_col, int uct_shift, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Anti-symmetric multiply-accumulate intrinsic function with unit center-tap optimization with pre-sub from x input buffer using small X input buffer. | |
v16acc48 | mac8_antisym_uct (v16acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, v32int16 ybuff, int ystart, unsigned int ysquare, int uct_col, int uct_shift, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Anti-symmetric multiply-accumulate intrinsic function with unit center-tap optimization with pre-sub from x and y input buffers using small X input buffer. | |
v16acc48 | msc8_antisym_uct (v16acc48 acc, v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int ysquare, int uct_col, int uct_shift, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Anti-symmetric multiply-subtract intrinsic function with unit center-tap optimization with pre-sub from x input buffer . | |
v16acc48 | msc8_antisym_uct (v16acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int ysquare, int uct_col, int uct_shift, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Anti-symmetric multiply-subtract intrinsic function with unit center-tap optimization with pre-sub from x input buffer using small X input buffer. | |
v16acc48 | msc8_antisym_uct (v16acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, v32int16 ybuff, int ystart, unsigned int ysquare, int uct_col, int uct_shift, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Anti-symmetric multiply-subtract intrinsic function with unit center-tap optimization with pre-sub from x and y input buffers using small X input buffer. | |
v16acc48 | mul8_antisym_uct (v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int ysquare, int uct_col, int uct_shift, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Anti-symmetric multiply intrinsic function with unit center-tap optimization with pre-sub from x input buffer . | |
v16acc48 | mul8_antisym_uct (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int ysquare, int uct_col, int uct_shift, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Anti-symmetric multiply intrinsic function with unit center-tap optimization with pre-sub from x input buffer using small X input buffer. | |
v16acc48 | mul8_antisym_uct (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, v32int16 ybuff, int ystart, unsigned int ysquare, int uct_col, int uct_shift, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Anti-symmetric multiply intrinsic function with unit center-tap optimization with pre-sub from x and y input buffers using small X input buffer. | |
v16acc48 | negmul8_antisym_uct (v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int ysquare, int uct_col, int uct_shift, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Anti-symmetric multiply-negate intrinsic function with unit center-tap optimization with pre-sub from x input buffer . | |
v16acc48 | negmul8_antisym_uct (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int ysquare, int uct_col, int uct_shift, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Anti-symmetric multiply-negate intrinsic function with unit center-tap optimization with pre-sub from x input buffer using small X input buffer. | |
v16acc48 | negmul8_antisym_uct (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, v32int16 ybuff, int ystart, unsigned int ysquare, int uct_col, int uct_shift, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Anti-symmetric multiply-negate intrinsic function with unit center-tap optimization with pre-sub from x and y input buffers using small X input buffer. | |
v16acc48 mac8_antisym_uct | ( | v16acc48 | acc, |
v64int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | ysquare, | ||
int | uct_col, | ||
int | uct_shift, | ||
v16int16 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Anti-symmetric multiply-accumulate intrinsic function with unit center-tap optimization with pre-sub from x input buffer .
Input/Output | Type | Comments |
---|---|---|
return | v16acc48 | Returned accumulation vector (16 x int48 lanes) |
acc | v16acc48 | Incoming accumulation vector (16 x int48 lanes) |
xbuff | v64int16 | Input buffer of 64 elements of type int16 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. xstart is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xoffsets | unsigned int | 4b offset for each lane, while each second lane is an offset to the lane before + 1, applied to both x and y buffers. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep). xstep is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xsquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
ystart | int | Starting position offset applied to all lanes for input from Y buffer. |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
uct_col | int | Select which column of data from the Y buffer to upshift for the lower half of the output accumulator. This must be a compile time constant. |
uct_shift | int | Upshift value to the four upshifted lanes |
zbuff | v16int16 | Input buffer of 16 elements of type int16 |
zstart | int | Starting 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. |
zoffsets | unsigned int | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane |
zstep | int | Step between each column for selection in the zbuffer. |
v16acc48 mac8_antisym_uct | ( | v16acc48 | acc, |
v32int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | ysquare, | ||
int | uct_col, | ||
int | uct_shift, | ||
v16int16 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Anti-symmetric multiply-accumulate intrinsic function with unit center-tap optimization with pre-sub from x input buffer using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v16acc48 | Returned accumulation vector (16 x int48 lanes) |
acc | v16acc48 | Incoming accumulation vector (16 x int48 lanes) |
xbuff | v32int16 | Input buffer of 32 elements of type int16 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. xstart is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xoffsets | unsigned int | 4b offset for each lane, while each second lane is an offset to the lane before + 1, applied to both x and y buffers. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep). xstep is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xsquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
ystart | int | Starting position offset applied to all lanes for input from Y buffer. |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
uct_col | int | Select which column of data from the Y buffer to upshift for the lower half of the output accumulator. This must be a compile time constant. |
uct_shift | int | Upshift value to the four upshifted lanes |
zbuff | v16int16 | Input buffer of 16 elements of type int16 |
zstart | int | Starting 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. |
zoffsets | unsigned int | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane |
zstep | int | Step between each column for selection in the zbuffer. |
v16acc48 mac8_antisym_uct | ( | v16acc48 | acc, |
v32int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
v32int16 | ybuff, | ||
int | ystart, | ||
unsigned int | ysquare, | ||
int | uct_col, | ||
int | uct_shift, | ||
v16int16 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Anti-symmetric multiply-accumulate intrinsic function with unit center-tap optimization with pre-sub from x and y input buffers using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v16acc48 | Returned accumulation vector (16 x int48 lanes) |
acc | v16acc48 | Incoming accumulation vector (16 x int48 lanes) |
xbuff | v32int16 | Input buffer of 32 elements of type int16 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. xstart is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xoffsets | unsigned int | 4b offset for each lane, while each second lane is an offset to the lane before + 1, applied to both x and y buffers. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep). xstep is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xsquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
ybuff | v32int16 | Right input buffer of 32 elements of type int16 |
ystart | int | Starting position offset applied to all lanes for input from Y buffer. ystart is restricted to multiples of 2 as granularity for ybuff is 32-bit. |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
uct_col | int | Select which column of data from the Y buffer to upshift for the lower half of the output accumulator. This must be a compile time constant. |
uct_shift | int | Upshift value to the four upshifted lanes |
zbuff | v16int16 | Input buffer of 16 elements of type int16 |
zstart | int | Starting 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. |
zoffsets | unsigned int | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane |
zstep | int | Step between each column for selection in the zbuffer. |
v16acc48 msc8_antisym_uct | ( | v16acc48 | acc, |
v64int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | ysquare, | ||
int | uct_col, | ||
int | uct_shift, | ||
v16int16 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Anti-symmetric multiply-subtract intrinsic function with unit center-tap optimization with pre-sub from x input buffer .
Input/Output | Type | Comments |
---|---|---|
return | v16acc48 | Returned accumulation vector (16 x int48 lanes) |
acc | v16acc48 | Incoming accumulation vector (16 x int48 lanes) |
xbuff | v64int16 | Input buffer of 64 elements of type int16 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. xstart is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xoffsets | unsigned int | 4b offset for each lane, while each second lane is an offset to the lane before + 1, applied to both x and y buffers. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep). xstep is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xsquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
ystart | int | Starting position offset applied to all lanes for input from Y buffer. |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
uct_col | int | Select which column of data from the Y buffer to upshift for the lower half of the output accumulator. This must be a compile time constant. |
uct_shift | int | Upshift value to the four upshifted lanes |
zbuff | v16int16 | Input buffer of 16 elements of type int16 |
zstart | int | Starting 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. |
zoffsets | unsigned int | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane |
zstep | int | Step between each column for selection in the zbuffer. |
v16acc48 msc8_antisym_uct | ( | v16acc48 | acc, |
v32int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | ysquare, | ||
int | uct_col, | ||
int | uct_shift, | ||
v16int16 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Anti-symmetric multiply-subtract intrinsic function with unit center-tap optimization with pre-sub from x input buffer using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v16acc48 | Returned accumulation vector (16 x int48 lanes) |
acc | v16acc48 | Incoming accumulation vector (16 x int48 lanes) |
xbuff | v32int16 | Input buffer of 32 elements of type int16 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. xstart is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xoffsets | unsigned int | 4b offset for each lane, while each second lane is an offset to the lane before + 1, applied to both x and y buffers. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep). xstep is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xsquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
ystart | int | Starting position offset applied to all lanes for input from Y buffer. |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
uct_col | int | Select which column of data from the Y buffer to upshift for the lower half of the output accumulator. This must be a compile time constant. |
uct_shift | int | Upshift value to the four upshifted lanes |
zbuff | v16int16 | Input buffer of 16 elements of type int16 |
zstart | int | Starting 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. |
zoffsets | unsigned int | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane |
zstep | int | Step between each column for selection in the zbuffer. |
v16acc48 msc8_antisym_uct | ( | v16acc48 | acc, |
v32int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
v32int16 | ybuff, | ||
int | ystart, | ||
unsigned int | ysquare, | ||
int | uct_col, | ||
int | uct_shift, | ||
v16int16 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Anti-symmetric multiply-subtract intrinsic function with unit center-tap optimization with pre-sub from x and y input buffers using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v16acc48 | Returned accumulation vector (16 x int48 lanes) |
acc | v16acc48 | Incoming accumulation vector (16 x int48 lanes) |
xbuff | v32int16 | Input buffer of 32 elements of type int16 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. xstart is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xoffsets | unsigned int | 4b offset for each lane, while each second lane is an offset to the lane before + 1, applied to both x and y buffers. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep). xstep is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xsquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
ybuff | v32int16 | Right input buffer of 32 elements of type int16 |
ystart | int | Starting position offset applied to all lanes for input from Y buffer. ystart is restricted to multiples of 2 as granularity for ybuff is 32-bit. |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
uct_col | int | Select which column of data from the Y buffer to upshift for the lower half of the output accumulator. This must be a compile time constant. |
uct_shift | int | Upshift value to the four upshifted lanes |
zbuff | v16int16 | Input buffer of 16 elements of type int16 |
zstart | int | Starting 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. |
zoffsets | unsigned int | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane |
zstep | int | Step between each column for selection in the zbuffer. |
v16acc48 mul8_antisym_uct | ( | v64int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | ysquare, | ||
int | uct_col, | ||
int | uct_shift, | ||
v16int16 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Anti-symmetric multiply intrinsic function with unit center-tap optimization with pre-sub from x input buffer .
Input/Output | Type | Comments |
---|---|---|
return | v16acc48 | Returned accumulation vector (16 x int48 lanes) |
xbuff | v64int16 | Input buffer of 64 elements of type int16 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. xstart is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xoffsets | unsigned int | 4b offset for each lane, while each second lane is an offset to the lane before + 1, applied to both x and y buffers. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep). xstep is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xsquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
ystart | int | Starting position offset applied to all lanes for input from Y buffer. |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
uct_col | int | Select which column of data from the Y buffer to upshift for the lower half of the output accumulator. This must be a compile time constant. |
uct_shift | int | Upshift value to the four upshifted lanes |
zbuff | v16int16 | Input buffer of 16 elements of type int16 |
zstart | int | Starting 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. |
zoffsets | unsigned int | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane |
zstep | int | Step between each column for selection in the zbuffer. |
v16acc48 mul8_antisym_uct | ( | v32int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | ysquare, | ||
int | uct_col, | ||
int | uct_shift, | ||
v16int16 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Anti-symmetric multiply intrinsic function with unit center-tap optimization with pre-sub from x input buffer using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v16acc48 | Returned accumulation vector (16 x int48 lanes) |
xbuff | v32int16 | Input buffer of 32 elements of type int16 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. xstart is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xoffsets | unsigned int | 4b offset for each lane, while each second lane is an offset to the lane before + 1, applied to both x and y buffers. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep). xstep is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xsquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
ystart | int | Starting position offset applied to all lanes for input from Y buffer. |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
uct_col | int | Select which column of data from the Y buffer to upshift for the lower half of the output accumulator. This must be a compile time constant. |
uct_shift | int | Upshift value to the four upshifted lanes |
zbuff | v16int16 | Input buffer of 16 elements of type int16 |
zstart | int | Starting 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. |
zoffsets | unsigned int | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane |
zstep | int | Step between each column for selection in the zbuffer. |
v16acc48 mul8_antisym_uct | ( | v32int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
v32int16 | ybuff, | ||
int | ystart, | ||
unsigned int | ysquare, | ||
int | uct_col, | ||
int | uct_shift, | ||
v16int16 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Anti-symmetric multiply intrinsic function with unit center-tap optimization with pre-sub from x and y input buffers using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v16acc48 | Returned accumulation vector (16 x int48 lanes) |
xbuff | v32int16 | Input buffer of 32 elements of type int16 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. xstart is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xoffsets | unsigned int | 4b offset for each lane, while each second lane is an offset to the lane before + 1, applied to both x and y buffers. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep). xstep is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xsquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
ybuff | v32int16 | Right input buffer of 32 elements of type int16 |
ystart | int | Starting position offset applied to all lanes for input from Y buffer. ystart is restricted to multiples of 2 as granularity for ybuff is 32-bit. |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
uct_col | int | Select which column of data from the Y buffer to upshift for the lower half of the output accumulator. This must be a compile time constant. |
uct_shift | int | Upshift value to the four upshifted lanes |
zbuff | v16int16 | Input buffer of 16 elements of type int16 |
zstart | int | Starting 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. |
zoffsets | unsigned int | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane |
zstep | int | Step between each column for selection in the zbuffer. |
v16acc48 negmul8_antisym_uct | ( | v64int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | ysquare, | ||
int | uct_col, | ||
int | uct_shift, | ||
v16int16 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Anti-symmetric multiply-negate intrinsic function with unit center-tap optimization with pre-sub from x input buffer .
Input/Output | Type | Comments |
---|---|---|
return | v16acc48 | Returned accumulation vector (16 x int48 lanes) |
xbuff | v64int16 | Input buffer of 64 elements of type int16 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. xstart is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xoffsets | unsigned int | 4b offset for each lane, while each second lane is an offset to the lane before + 1, applied to both x and y buffers. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep). xstep is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xsquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
ystart | int | Starting position offset applied to all lanes for input from Y buffer. |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
uct_col | int | Select which column of data from the Y buffer to upshift for the lower half of the output accumulator. This must be a compile time constant. |
uct_shift | int | Upshift value to the four upshifted lanes |
zbuff | v16int16 | Input buffer of 16 elements of type int16 |
zstart | int | Starting 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. |
zoffsets | unsigned int | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane |
zstep | int | Step between each column for selection in the zbuffer. |
v16acc48 negmul8_antisym_uct | ( | v32int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | ysquare, | ||
int | uct_col, | ||
int | uct_shift, | ||
v16int16 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Anti-symmetric multiply-negate intrinsic function with unit center-tap optimization with pre-sub from x input buffer using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v16acc48 | Returned accumulation vector (16 x int48 lanes) |
xbuff | v32int16 | Input buffer of 32 elements of type int16 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. xstart is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xoffsets | unsigned int | 4b offset for each lane, while each second lane is an offset to the lane before + 1, applied to both x and y buffers. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep). xstep is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xsquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
ystart | int | Starting position offset applied to all lanes for input from Y buffer. |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
uct_col | int | Select which column of data from the Y buffer to upshift for the lower half of the output accumulator. This must be a compile time constant. |
uct_shift | int | Upshift value to the four upshifted lanes |
zbuff | v16int16 | Input buffer of 16 elements of type int16 |
zstart | int | Starting 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. |
zoffsets | unsigned int | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane |
zstep | int | Step between each column for selection in the zbuffer. |
v16acc48 negmul8_antisym_uct | ( | v32int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
v32int16 | ybuff, | ||
int | ystart, | ||
unsigned int | ysquare, | ||
int | uct_col, | ||
int | uct_shift, | ||
v16int16 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Anti-symmetric multiply-negate intrinsic function with unit center-tap optimization with pre-sub from x and y input buffers using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v16acc48 | Returned accumulation vector (16 x int48 lanes) |
xbuff | v32int16 | Input buffer of 32 elements of type int16 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. xstart is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xoffsets | unsigned int | 4b offset for each lane, while each second lane is an offset to the lane before + 1, applied to both x and y buffers. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep). xstep is restricted to multiples of 2 as granularity for xbuff is 32-bit. |
xsquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
ybuff | v32int16 | Right input buffer of 32 elements of type int16 |
ystart | int | Starting position offset applied to all lanes for input from Y buffer. ystart is restricted to multiples of 2 as granularity for ybuff is 32-bit. |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
uct_col | int | Select which column of data from the Y buffer to upshift for the lower half of the output accumulator. This must be a compile time constant. |
uct_shift | int | Upshift value to the four upshifted lanes |
zbuff | v16int16 | Input buffer of 16 elements of type int16 |
zstart | int | Starting 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. |
zoffsets | unsigned int | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane |
zstep | int | Step between each column for selection in the zbuffer. |