| AI Engine Intrinsics User Guide (AIE) v2025.2

Loading...
Searching...
No Matches
Functions
Dynamic X buffer conjugation
Intrinsics » Vector Operations » MAC intrinsics » Multiplication » Advanced » Integer » Vector MAC » 32 bit x 32 bit » 32 bit Complex x 32 bit Real

## Overview

32 bit complex by 32 bit real using Dynamic X buffer conjugation

## Functions
v2cacc80 | lmac2 (v2cacc80 acc, v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex multiply-accumulate intrinsic function with dynamic x buffer conjugation .
v2cacc80 | lmac2 (v2cacc80 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex multiply-accumulate intrinsic function with dynamic x buffer conjugation using small X input buffer.
v4cacc80 | lmac4 (v4cacc80 acc, v16cint32 xbuff, int xstart, unsigned int xoffsets, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets)
| Complex multiply-accumulate intrinsic function with dynamic x buffer conjugation .
v4cacc80 | lmac4 (v4cacc80 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets)
| Complex multiply-accumulate intrinsic function with dynamic x buffer conjugation using small X input buffer.
v2cacc80 | lmsc2 (v2cacc80 acc, v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex multiply-subtract intrinsic function with dynamic x buffer conjugation .
v2cacc80 | lmsc2 (v2cacc80 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex multiply-subtract intrinsic function with dynamic x buffer conjugation using small X input buffer.
v4cacc80 | lmsc4 (v4cacc80 acc, v16cint32 xbuff, int xstart, unsigned int xoffsets, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets)
| Complex multiply-subtract intrinsic function with dynamic x buffer conjugation .
v4cacc80 | lmsc4 (v4cacc80 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets)
| Complex multiply-subtract intrinsic function with dynamic x buffer conjugation using small X input buffer.
v2cacc80 | lmul2 (v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex multiply intrinsic function with dynamic x buffer conjugation .
v2cacc80 | lmul2 (v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex multiply intrinsic function with dynamic x buffer conjugation using small X input buffer.
v4cacc80 | lmul4 (v16cint32 xbuff, int xstart, unsigned int xoffsets, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets)
| Complex multiply intrinsic function with dynamic x buffer conjugation .
v4cacc80 | lmul4 (v8cint32 xbuff, int xstart, unsigned int xoffsets, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets)
| Complex multiply intrinsic function with dynamic x buffer conjugation using small X input buffer.
v2cacc80 | lnegmul2 (v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex multiply-negate intrinsic function with dynamic x buffer conjugation .
v2cacc80 | lnegmul2 (v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex multiply-negate intrinsic function with dynamic x buffer conjugation using small X input buffer.
v4cacc80 | lnegmul4 (v16cint32 xbuff, int xstart, unsigned int xoffsets, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets)
| Complex multiply-negate intrinsic function with dynamic x buffer conjugation .
v4cacc80 | lnegmul4 (v8cint32 xbuff, int xstart, unsigned int xoffsets, bool xyconj, v8int32 zbuff, int zstart, unsigned int zoffsets)
| Complex multiply-negate intrinsic function with dynamic x buffer conjugation using small X input buffer.

## Function Documentation

## ◆ lmac2() [1/2]

v2cacc80 lmac2 | ( | v2cacc80 | acc,
|  | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep
| ) |  |

Complex multiply-accumulate intrinsic function with dynamic x buffer conjugation .

acc0 += z00*x00 + z01*x01
acc1 += z10*x10 + z11*x11

Returns
  Returned accumulation vector (2 x cint80 lanes)

Parameters

  acc | Incoming accumulation vector (2 x cint80 lanes)
  xbuff | Input buffer of 16 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xstep | Step between each column for selection in the xbuffer.
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
  zstep | Step between each column for selection in the zbuffer.

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.

## ◆ lmac2() [2/2]

v2cacc80 lmac2 | ( | v2cacc80 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep
| ) |  |

Complex multiply-accumulate intrinsic function with dynamic x buffer conjugation using small X input buffer.

acc0 += z00*x00 + z01*x01
acc1 += z10*x10 + z11*x11

Returns
  Returned accumulation vector (2 x cint80 lanes)

Parameters

  acc | Incoming accumulation vector (2 x cint80 lanes)
  xbuff | Input buffer of 8 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xstep | Step between each column for selection in the xbuffer.
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
  zstep | Step between each column for selection in the zbuffer.

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.

## ◆ lmac4() [1/2]

v4cacc80 lmac4 | ( | v4cacc80 | acc,
|  | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets
| ) |  |

Complex multiply-accumulate intrinsic function with dynamic x buffer conjugation .

acc0 += z00*x00
acc1 += z10*x10
acc2 += z20*x20
acc3 += z30*x30

Returns
  Returned accumulation vector (4 x cint80 lanes)

Parameters

  acc | Incoming accumulation vector (4 x cint80 lanes)
  xbuff | Input buffer of 16 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.

## ◆ lmac4() [2/2]

v4cacc80 lmac4 | ( | v4cacc80 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets
| ) |  |

Complex multiply-accumulate intrinsic function with dynamic x buffer conjugation using small X input buffer.

acc0 += z00*x00
acc1 += z10*x10
acc2 += z20*x20
acc3 += z30*x30

Returns
  Returned accumulation vector (4 x cint80 lanes)

Parameters

  acc | Incoming accumulation vector (4 x cint80 lanes)
  xbuff | Input buffer of 8 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.

## ◆ lmsc2() [1/2]

v2cacc80 lmsc2 | ( | v2cacc80 | acc,
|  | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep
| ) |  |

Complex multiply-subtract intrinsic function with dynamic x buffer conjugation .

acc0 -= z00*x00 + z01*x01
acc1 -= z10*x10 + z11*x11

Returns
  Returned accumulation vector (2 x cint80 lanes)

Parameters

  acc | Incoming accumulation vector (2 x cint80 lanes)
  xbuff | Input buffer of 16 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xstep | Step between each column for selection in the xbuffer.
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
  zstep | Step between each column for selection in the zbuffer.

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.

## ◆ lmsc2() [2/2]

v2cacc80 lmsc2 | ( | v2cacc80 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep
| ) |  |

Complex multiply-subtract intrinsic function with dynamic x buffer conjugation using small X input buffer.

acc0 -= z00*x00 + z01*x01
acc1 -= z10*x10 + z11*x11

Returns
  Returned accumulation vector (2 x cint80 lanes)

Parameters

  acc | Incoming accumulation vector (2 x cint80 lanes)
  xbuff | Input buffer of 8 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xstep | Step between each column for selection in the xbuffer.
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
  zstep | Step between each column for selection in the zbuffer.

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.

## ◆ lmsc4() [1/2]

v4cacc80 lmsc4 | ( | v4cacc80 | acc,
|  | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets
| ) |  |

Complex multiply-subtract intrinsic function with dynamic x buffer conjugation .

acc0 -= z00*x00
acc1 -= z10*x10
acc2 -= z20*x20
acc3 -= z30*x30

Returns
  Returned accumulation vector (4 x cint80 lanes)

Parameters

  acc | Incoming accumulation vector (4 x cint80 lanes)
  xbuff | Input buffer of 16 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.

## ◆ lmsc4() [2/2]

v4cacc80 lmsc4 | ( | v4cacc80 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets
| ) |  |

Complex multiply-subtract intrinsic function with dynamic x buffer conjugation using small X input buffer.

acc0 -= z00*x00
acc1 -= z10*x10
acc2 -= z20*x20
acc3 -= z30*x30

Returns
  Returned accumulation vector (4 x cint80 lanes)

Parameters

  acc | Incoming accumulation vector (4 x cint80 lanes)
  xbuff | Input buffer of 8 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.

## ◆ lmul2() [1/2]

v2cacc80 lmul2 | ( | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep
| ) |  |

Complex multiply intrinsic function with dynamic x buffer conjugation .

acc0 = z00*x00 + z01*x01
acc1 = z10*x10 + z11*x11

Returns
  Returned accumulation vector (2 x cint80 lanes)

Parameters

  xbuff | Input buffer of 16 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xstep | Step between each column for selection in the xbuffer.
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
  zstep | Step between each column for selection in the zbuffer.

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.

## ◆ lmul2() [2/2]

v2cacc80 lmul2 | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep
| ) |  |

Complex multiply intrinsic function with dynamic x buffer conjugation using small X input buffer.

acc0 = z00*x00 + z01*x01
acc1 = z10*x10 + z11*x11

Returns
  Returned accumulation vector (2 x cint80 lanes)

Parameters

  xbuff | Input buffer of 8 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xstep | Step between each column for selection in the xbuffer.
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
  zstep | Step between each column for selection in the zbuffer.

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.

## ◆ lmul4() [1/2]

v4cacc80 lmul4 | ( | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets
| ) |  |

Complex multiply intrinsic function with dynamic x buffer conjugation .

acc0 = z00*x00
acc1 = z10*x10
acc2 = z20*x20
acc3 = z30*x30

Returns
  Returned accumulation vector (4 x cint80 lanes)

Parameters

  xbuff | Input buffer of 16 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.

## ◆ lmul4() [2/2]

v4cacc80 lmul4 | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets
| ) |  |

Complex multiply intrinsic function with dynamic x buffer conjugation using small X input buffer.

acc0 = z00*x00
acc1 = z10*x10
acc2 = z20*x20
acc3 = z30*x30

Returns
  Returned accumulation vector (4 x cint80 lanes)

Parameters

  xbuff | Input buffer of 8 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.

## ◆ lnegmul2() [1/2]

v2cacc80 lnegmul2 | ( | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep
| ) |  |

Complex multiply-negate intrinsic function with dynamic x buffer conjugation .

acc0 = -( z00*x00 + z01*x01 )
acc1 = -( z10*x10 + z11*x11 )

Returns
  Returned accumulation vector (2 x cint80 lanes)

Parameters

  xbuff | Input buffer of 16 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xstep | Step between each column for selection in the xbuffer.
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
  zstep | Step between each column for selection in the zbuffer.

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.

## ◆ lnegmul2() [2/2]

v2cacc80 lnegmul2 | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep
| ) |  |

Complex multiply-negate intrinsic function with dynamic x buffer conjugation using small X input buffer.

acc0 = -( z00*x00 + z01*x01 )
acc1 = -( z10*x10 + z11*x11 )

Returns
  Returned accumulation vector (2 x cint80 lanes)

Parameters

  xbuff | Input buffer of 8 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xstep | Step between each column for selection in the xbuffer.
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane
  zstep | Step between each column for selection in the zbuffer.

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.

## ◆ lnegmul4() [1/2]

v4cacc80 lnegmul4 | ( | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets
| ) |  |

Complex multiply-negate intrinsic function with dynamic x buffer conjugation .

acc0 = -( z00*x00 )
acc1 = -( z10*x10 )
acc2 = -( z20*x20 )
acc3 = -( z30*x30 )

Returns
  Returned accumulation vector (4 x cint80 lanes)

Parameters

  xbuff | Input buffer of 16 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.

## ◆ lnegmul4() [2/2]

v4cacc80 lnegmul4 | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | bool | xyconj,
|  | v8int32 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets
| ) |  |

Complex multiply-negate intrinsic function with dynamic x buffer conjugation using small X input buffer.

acc0 = -( z00*x00 )
acc1 = -( z10*x10 )
acc2 = -( z20*x20 )
acc3 = -( z30*x30 )

Returns
  Returned accumulation vector (4 x cint80 lanes)

Parameters

  xbuff | Input buffer of 8 elements of type cint32
  xstart | Starting position offset applied to all lanes of input from X buffer.
  xoffsets | 4b offset for each lane, applied to the x buffer. LSB apply to first lane
  xyconj | Selector for conjugation in X and Y buffers
  zbuff | Input buffer of 8 elements of type int32
  zstart | 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 | 4b offset for each lane, applied to input from Z buffer. LSB apply to first lane

Note
  - For more information on how data selection works from the buffers go here. The data buffer and coefficient buffer in this intrinsic use the general scheme.
  - Parameter 'zstart' must be a compile time constant.