![]() |
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. |