AI Engine Intrinsics
(AIE) r2p21
|
Vector MAC intrinsics with 32 bit real by 32 bit real
Functions | |
v4acc80 | lmac4 (v4acc80 acc, v32int32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Multiply-accumulate intrinsic function . | |
v4acc80 | lmac4 (v4acc80 acc, v16int32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Multiply-accumulate intrinsic function using small X input buffer. | |
v8acc80 | lmac8 (v8acc80 acc, v32int32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets) |
Multiply-accumulate intrinsic function . | |
v8acc80 | lmac8 (v8acc80 acc, v16int32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets) |
Multiply-accumulate intrinsic function using small X input buffer. | |
v4acc80 | lmsc4 (v4acc80 acc, v32int32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Multiply-subtract intrinsic function . | |
v4acc80 | lmsc4 (v4acc80 acc, v16int32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Multiply-subtract intrinsic function using small X input buffer. | |
v8acc80 | lmsc8 (v8acc80 acc, v32int32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets) |
Multiply-subtract intrinsic function . | |
v8acc80 | lmsc8 (v8acc80 acc, v16int32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets) |
Multiply-subtract intrinsic function using small X input buffer. | |
v4acc80 | lmul4 (v32int32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Multiply intrinsic function . | |
v4acc80 | lmul4 (v16int32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Multiply intrinsic function using small X input buffer. | |
v8acc80 | lmul8 (v32int32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets) |
Multiply intrinsic function . | |
v8acc80 | lmul8 (v16int32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets) |
Multiply intrinsic function using small X input buffer. | |
v4acc80 | lnegmul4 (v32int32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Multiply-negate intrinsic function . | |
v4acc80 | lnegmul4 (v16int32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep) |
Multiply-negate intrinsic function using small X input buffer. | |
v8acc80 | lnegmul8 (v32int32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets) |
Multiply-negate intrinsic function . | |
v8acc80 | lnegmul8 (v16int32 xbuff, int xstart, unsigned int xoffsets, v8int32 zbuff, int zstart, unsigned int zoffsets) |
Multiply-negate intrinsic function using small X input buffer. | |
v4acc80 lmac4 | ( | v4acc80 | acc, |
v32int32 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Multiply-accumulate intrinsic function .
Input/Output | Type | Comments |
---|---|---|
return | v4acc80 | Returned accumulation vector (4 x int80 lanes) |
acc | v4acc80 | Incoming accumulation vector (4 x int80 lanes) |
xbuff | v32int32 | Input buffer of 32 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer. |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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. |
v4acc80 lmac4 | ( | v4acc80 | acc, |
v16int32 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Multiply-accumulate intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v4acc80 | Returned accumulation vector (4 x int80 lanes) |
acc | v4acc80 | Incoming accumulation vector (4 x int80 lanes) |
xbuff | v16int32 | Input buffer of 16 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer. |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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. |
v8acc80 lmac8 | ( | v8acc80 | acc, |
v32int32 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets | ||
) |
Multiply-accumulate intrinsic function .
Input/Output | Type | Comments |
---|---|---|
return | v8acc80 | Returned accumulation vector (8 x int80 lanes) |
acc | v8acc80 | Incoming accumulation vector (8 x int80 lanes) |
xbuff | v32int32 | Input buffer of 32 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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 |
v8acc80 lmac8 | ( | v8acc80 | acc, |
v16int32 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets | ||
) |
Multiply-accumulate intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v8acc80 | Returned accumulation vector (8 x int80 lanes) |
acc | v8acc80 | Incoming accumulation vector (8 x int80 lanes) |
xbuff | v16int32 | Input buffer of 16 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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 |
v4acc80 lmsc4 | ( | v4acc80 | acc, |
v32int32 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Multiply-subtract intrinsic function .
Input/Output | Type | Comments |
---|---|---|
return | v4acc80 | Returned accumulation vector (4 x int80 lanes) |
acc | v4acc80 | Incoming accumulation vector (4 x int80 lanes) |
xbuff | v32int32 | Input buffer of 32 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer. |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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. |
v4acc80 lmsc4 | ( | v4acc80 | acc, |
v16int32 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Multiply-subtract intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v4acc80 | Returned accumulation vector (4 x int80 lanes) |
acc | v4acc80 | Incoming accumulation vector (4 x int80 lanes) |
xbuff | v16int32 | Input buffer of 16 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer. |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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. |
v8acc80 lmsc8 | ( | v8acc80 | acc, |
v32int32 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets | ||
) |
Multiply-subtract intrinsic function .
Input/Output | Type | Comments |
---|---|---|
return | v8acc80 | Returned accumulation vector (8 x int80 lanes) |
acc | v8acc80 | Incoming accumulation vector (8 x int80 lanes) |
xbuff | v32int32 | Input buffer of 32 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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 |
v8acc80 lmsc8 | ( | v8acc80 | acc, |
v16int32 | xbuff, | ||
int | xstart, | ||
unsigned int | xoffsets, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets | ||
) |
Multiply-subtract intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v8acc80 | Returned accumulation vector (8 x int80 lanes) |
acc | v8acc80 | Incoming accumulation vector (8 x int80 lanes) |
xbuff | v16int32 | Input buffer of 16 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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 |
v4acc80 lmul4 | ( | v32int32 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Multiply intrinsic function .
Input/Output | Type | Comments |
---|---|---|
return | v4acc80 | Returned accumulation vector (4 x int80 lanes) |
xbuff | v32int32 | Input buffer of 32 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer. |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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. |
v4acc80 lmul4 | ( | v16int32 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Multiply intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v4acc80 | Returned accumulation vector (4 x int80 lanes) |
xbuff | v16int32 | Input buffer of 16 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer. |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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. |
v8acc80 lmul8 | ( | v32int32 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets | ||
) |
Multiply intrinsic function .
Input/Output | Type | Comments |
---|---|---|
return | v8acc80 | Returned accumulation vector (8 x int80 lanes) |
xbuff | v32int32 | Input buffer of 32 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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 |
v8acc80 lmul8 | ( | v16int32 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets | ||
) |
Multiply intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v8acc80 | Returned accumulation vector (8 x int80 lanes) |
xbuff | v16int32 | Input buffer of 16 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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 |
v4acc80 lnegmul4 | ( | v32int32 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Multiply-negate intrinsic function .
Input/Output | Type | Comments |
---|---|---|
return | v4acc80 | Returned accumulation vector (4 x int80 lanes) |
xbuff | v32int32 | Input buffer of 32 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer. |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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. |
v4acc80 lnegmul4 | ( | v16int32 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
int | xstep, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets, | ||
int | zstep | ||
) |
Multiply-negate intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v4acc80 | Returned accumulation vector (4 x int80 lanes) |
xbuff | v16int32 | Input buffer of 16 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
xstep | unsigned int | Step between each column for selection in the xbuffer. |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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. |
v8acc80 lnegmul8 | ( | v32int32 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets | ||
) |
Multiply-negate intrinsic function .
Input/Output | Type | Comments |
---|---|---|
return | v8acc80 | Returned accumulation vector (8 x int80 lanes) |
xbuff | v32int32 | Input buffer of 32 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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 |
v8acc80 lnegmul8 | ( | v16int32 | xbuff, |
int | xstart, | ||
unsigned int | xoffsets, | ||
v8int32 | zbuff, | ||
int | zstart, | ||
unsigned int | zoffsets | ||
) |
Multiply-negate intrinsic function using small X input buffer.
Input/Output | Type | Comments |
---|---|---|
return | v8acc80 | Returned accumulation vector (8 x int80 lanes) |
xbuff | v16int32 | Input buffer of 16 elements of type int32 |
xstart | int | Starting position offset applied to all lanes of input from X buffer. |
xoffsets | unsigned int | 4b offset for each lane, applied to the x buffer. LSB apply to first lane |
zbuff | v8int32 | Input buffer of 8 elements of type int32 |
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 |