AI Engine Intrinsics
(AIE) r2p21
|
16-bit Real self multiplication intrinsics.
Functions | |
v16acc48 | mac16 (v16acc48 acc, v64int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, unsigned int xsquare, int ystart, unsigned int yoffsets, unsigned int yoffsets_hi, unsigned int ysquare) |
Multiply-accumulate intrinsic function . | |
v16acc48 | mac16 (v16acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, unsigned int xsquare, int ystart, unsigned int yoffsets, unsigned int yoffsets_hi, unsigned int ysquare) |
Multiply-accumulate intrinsic function using small X input buffer. | |
v16acc48 | mac16 (v16acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, unsigned int xsquare, v32int16 ybuff, int ystart, unsigned int yoffsets, unsigned int yoffsets_hi, unsigned int ysquare) |
Multiply-accumulate intrinsic function using small X input buffer. | |
v8acc48 | mac8 (v8acc48 acc, v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int yoffsets, int ystep, unsigned int ysquare) |
Multiply-accumulate intrinsic function . | |
v8acc48 | mac8 (v8acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int yoffsets, int ystep, unsigned int ysquare) |
Multiply-accumulate intrinsic function using small X input buffer. | |
v8acc48 | mac8 (v8acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, v32int16 ybuff, int ystart, unsigned int yoffsets, int ystep, unsigned int ysquare) |
Multiply-accumulate intrinsic function using small X input buffer. | |
v16acc48 | msc16 (v16acc48 acc, v64int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, unsigned int xsquare, int ystart, unsigned int yoffsets, unsigned int yoffsets_hi, unsigned int ysquare) |
Multiply-subtract intrinsic function . | |
v16acc48 | msc16 (v16acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, unsigned int xsquare, int ystart, unsigned int yoffsets, unsigned int yoffsets_hi, unsigned int ysquare) |
Multiply-subtract intrinsic function using small X input buffer. | |
v16acc48 | msc16 (v16acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, unsigned int xsquare, v32int16 ybuff, int ystart, unsigned int yoffsets, unsigned int yoffsets_hi, unsigned int ysquare) |
Multiply-subtract intrinsic function using small X input buffer. | |
v8acc48 | msc8 (v8acc48 acc, v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int yoffsets, int ystep, unsigned int ysquare) |
Multiply-subtract intrinsic function . | |
v8acc48 | msc8 (v8acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int yoffsets, int ystep, unsigned int ysquare) |
Multiply-subtract intrinsic function using small X input buffer. | |
v8acc48 | msc8 (v8acc48 acc, v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, v32int16 ybuff, int ystart, unsigned int yoffsets, int ystep, unsigned int ysquare) |
Multiply-subtract intrinsic function using small X input buffer. | |
v16acc48 | mul16 (v64int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, unsigned int xsquare, int ystart, unsigned int yoffsets, unsigned int yoffsets_hi, unsigned int ysquare) |
Multiply intrinsic function . | |
v16acc48 | mul16 (v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, unsigned int xsquare, int ystart, unsigned int yoffsets, unsigned int yoffsets_hi, unsigned int ysquare) |
Multiply intrinsic function using small X input buffer. | |
v16acc48 | mul16 (v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, unsigned int xsquare, v32int16 ybuff, int ystart, unsigned int yoffsets, unsigned int yoffsets_hi, unsigned int ysquare) |
Multiply intrinsic function using small X input buffer. | |
v8acc48 | mul8 (v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int yoffsets, int ystep, unsigned int ysquare) |
Multiply intrinsic function . | |
v8acc48 | mul8 (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int yoffsets, int ystep, unsigned int ysquare) |
Multiply intrinsic function using small X input buffer. | |
v8acc48 | mul8 (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, v32int16 ybuff, int ystart, unsigned int yoffsets, int ystep, unsigned int ysquare) |
Multiply intrinsic function using small X input buffer. | |
v16acc48 | negmul16 (v64int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, unsigned int xsquare, int ystart, unsigned int yoffsets, unsigned int yoffsets_hi, unsigned int ysquare) |
Multiply-negate intrinsic function . | |
v16acc48 | negmul16 (v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, unsigned int xsquare, int ystart, unsigned int yoffsets, unsigned int yoffsets_hi, unsigned int ysquare) |
Multiply-negate intrinsic function using small X input buffer. | |
v16acc48 | negmul16 (v32int16 xbuff, int xstart, unsigned int xoffsets, unsigned int xoffsets_hi, unsigned int xsquare, v32int16 ybuff, int ystart, unsigned int yoffsets, unsigned int yoffsets_hi, unsigned int ysquare) |
Multiply-negate intrinsic function using small X input buffer. | |
v8acc48 | negmul8 (v64int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int yoffsets, int ystep, unsigned int ysquare) |
Multiply-negate intrinsic function . | |
v8acc48 | negmul8 (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, int ystart, unsigned int yoffsets, int ystep, unsigned int ysquare) |
Multiply-negate intrinsic function using small X input buffer. | |
v8acc48 | negmul8 (v32int16 xbuff, int xstart, unsigned int xoffsets, int xstep, unsigned int xsquare, v32int16 ybuff, int ystart, unsigned int yoffsets, int ystep, unsigned int ysquare) |
Multiply-negate intrinsic function using small X input buffer. | |
v16acc48 mac16 | ( | v16acc48 | acc, |
v64int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
unsigned int | xoffsets_hi, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
unsigned int | yoffsets_hi, | ||
unsigned int | ysquare | ||
) |
Multiply-accumulate intrinsic function .
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 |
xoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
xoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
yoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v16acc48 mac16 | ( | v16acc48 | acc, |
v32int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
unsigned int | xoffsets_hi, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
unsigned int | yoffsets_hi, | ||
unsigned int | ysquare | ||
) |
Multiply-accumulate intrinsic function 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 |
xoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
xoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
yoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v16acc48 mac16 | ( | v16acc48 | acc, |
v32int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
unsigned int | xoffsets_hi, | ||
unsigned int | xsquare, | ||
v32int16 | ybuff, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
unsigned int | yoffsets_hi, | ||
unsigned int | ysquare | ||
) |
Multiply-accumulate intrinsic function 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 |
xoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
xoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
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 of input from ybuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
yoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v8acc48 mac8 | ( | v8acc48 | acc, |
v64int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
int | ystep, | ||
unsigned int | ysquare | ||
) |
Multiply-accumulate intrinsic function .
Input/Output | Type | Comments |
---|---|---|
return | v8acc48 | Returned accumulation vector (8 x int48 lanes) |
acc | v8acc48 | Incoming accumulation vector (8 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 |
xoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
ystep | unsigned int | Step between each column for selection in the xbuffer |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v8acc48 mac8 | ( | v8acc48 | acc, |
v32int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
int | ystep, | ||
unsigned int | ysquare | ||
) |
Multiply-accumulate intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v8acc48 | Returned accumulation vector (8 x int48 lanes) |
acc | v8acc48 | Incoming accumulation vector (8 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 |
xoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
ystep | unsigned int | Step between each column for selection in the xbuffer |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v8acc48 mac8 | ( | v8acc48 | acc, |
v32int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
v32int16 | ybuff, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
int | ystep, | ||
unsigned int | ysquare | ||
) |
Multiply-accumulate intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v8acc48 | Returned accumulation vector (8 x int48 lanes) |
acc | v8acc48 | Incoming accumulation vector (8 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 |
xoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer |
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 of input from ybuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
ystep | unsigned int | Step between each column for selection in the ybuffer |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v16acc48 msc16 | ( | v16acc48 | acc, |
v64int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
unsigned int | xoffsets_hi, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
unsigned int | yoffsets_hi, | ||
unsigned int | ysquare | ||
) |
Multiply-subtract intrinsic function .
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 |
xoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
xoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
yoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v16acc48 msc16 | ( | v16acc48 | acc, |
v32int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
unsigned int | xoffsets_hi, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
unsigned int | yoffsets_hi, | ||
unsigned int | ysquare | ||
) |
Multiply-subtract intrinsic function 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 |
xoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
xoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
yoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v16acc48 msc16 | ( | v16acc48 | acc, |
v32int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
unsigned int | xoffsets_hi, | ||
unsigned int | xsquare, | ||
v32int16 | ybuff, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
unsigned int | yoffsets_hi, | ||
unsigned int | ysquare | ||
) |
Multiply-subtract intrinsic function 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 |
xoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
xoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
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 of input from ybuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
yoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v8acc48 msc8 | ( | v8acc48 | acc, |
v64int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
int | ystep, | ||
unsigned int | ysquare | ||
) |
Multiply-subtract intrinsic function .
Input/Output | Type | Comments |
---|---|---|
return | v8acc48 | Returned accumulation vector (8 x int48 lanes) |
acc | v8acc48 | Incoming accumulation vector (8 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 |
xoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
ystep | unsigned int | Step between each column for selection in the xbuffer |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v8acc48 msc8 | ( | v8acc48 | acc, |
v32int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
int | ystep, | ||
unsigned int | ysquare | ||
) |
Multiply-subtract intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v8acc48 | Returned accumulation vector (8 x int48 lanes) |
acc | v8acc48 | Incoming accumulation vector (8 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 |
xoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
ystep | unsigned int | Step between each column for selection in the xbuffer |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v8acc48 msc8 | ( | v8acc48 | acc, |
v32int16 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
v32int16 | ybuff, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
int | ystep, | ||
unsigned int | ysquare | ||
) |
Multiply-subtract intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v8acc48 | Returned accumulation vector (8 x int48 lanes) |
acc | v8acc48 | Incoming accumulation vector (8 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 |
xoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer |
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 of input from ybuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
ystep | unsigned int | Step between each column for selection in the ybuffer |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v16acc48 mul16 | ( | v64int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
unsigned int | xoffsets_hi, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
unsigned int | yoffsets_hi, | ||
unsigned int | ysquare | ||
) |
Multiply intrinsic function .
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 |
xoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
xoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
yoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v16acc48 mul16 | ( | v32int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
unsigned int | xoffsets_hi, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
unsigned int | yoffsets_hi, | ||
unsigned int | ysquare | ||
) |
Multiply intrinsic function 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 |
xoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
xoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
yoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v16acc48 mul16 | ( | v32int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
unsigned int | xoffsets_hi, | ||
unsigned int | xsquare, | ||
v32int16 | ybuff, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
unsigned int | yoffsets_hi, | ||
unsigned int | ysquare | ||
) |
Multiply intrinsic function 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 |
xoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
xoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
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 of input from ybuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
yoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v8acc48 mul8 | ( | v64int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
int | ystep, | ||
unsigned int | ysquare | ||
) |
Multiply intrinsic function .
Input/Output | Type | Comments |
---|---|---|
return | v8acc48 | Returned accumulation vector (8 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 |
xoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
ystep | unsigned int | Step between each column for selection in the xbuffer |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v8acc48 mul8 | ( | v32int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
int | ystep, | ||
unsigned int | ysquare | ||
) |
Multiply intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v8acc48 | Returned accumulation vector (8 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 |
xoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
ystep | unsigned int | Step between each column for selection in the xbuffer |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v8acc48 mul8 | ( | v32int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
v32int16 | ybuff, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
int | ystep, | ||
unsigned int | ysquare | ||
) |
Multiply intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v8acc48 | Returned accumulation vector (8 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 |
xoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer |
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 of input from ybuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
ystep | unsigned int | Step between each column for selection in the ybuffer |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v16acc48 negmul16 | ( | v64int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
unsigned int | xoffsets_hi, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
unsigned int | yoffsets_hi, | ||
unsigned int | ysquare | ||
) |
Multiply-negate intrinsic function .
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 |
xoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
xoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
yoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v16acc48 negmul16 | ( | v32int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
unsigned int | xoffsets_hi, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
unsigned int | yoffsets_hi, | ||
unsigned int | ysquare | ||
) |
Multiply-negate intrinsic function 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 |
xoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
xoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
yoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v16acc48 negmul16 | ( | v32int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
unsigned int | xoffsets_hi, | ||
unsigned int | xsquare, | ||
v32int16 | ybuff, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
unsigned int | yoffsets_hi, | ||
unsigned int | ysquare | ||
) |
Multiply-negate intrinsic function 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 |
xoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
xoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
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 of input from ybuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane, corresponds to 2x the lane number and each second lane is an offset to the lane before + 1. LSB apply to first lane |
yoffsets_hi | unsigned int | 4b offset for each lane. LSB apply to 8th lane |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v8acc48 negmul8 | ( | v64int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
int | ystep, | ||
unsigned int | ysquare | ||
) |
Multiply-negate intrinsic function .
Input/Output | Type | Comments |
---|---|---|
return | v8acc48 | Returned accumulation vector (8 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 |
xoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
ystep | unsigned int | Step between each column for selection in the xbuffer |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v8acc48 negmul8 | ( | v32int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
int | ystep, | ||
unsigned int | ysquare | ||
) |
Multiply-negate intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v8acc48 | Returned accumulation vector (8 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 |
xoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer |
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 of input from xbuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
ystep | unsigned int | Step between each column for selection in the xbuffer |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |
v8acc48 negmul8 | ( | v32int16 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
unsigned int | xsquare, | ||
v32int16 | ybuff, | ||
int | ystart, | ||
unsigned int | yoffsets, | ||
int | ystep, | ||
unsigned int | ysquare | ||
) |
Multiply-negate intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v8acc48 | Returned accumulation vector (8 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 |
xoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer |
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 of input from ybuffer for the second input |
yoffsets | unsigned int | 4b offset for each lane in the xbuffer while each second lane is an offset to the lane before + 1. LSB apply to first lane |
ystep | unsigned int | Step between each column for selection in the ybuffer |
ysquare | unsigned int | Select order of the mini-permute square (default=0x3210). LSB apply to first element |