| AI Engine Intrinsics User Guide (v2026.1)

Loading...
Searching...
No Matches
Functions
No conjugation
Intrinsics » Vector Operations » MAC intrinsics » Multiplication » Advanced » Integer » Vector MAC with pre-adding » 32 bit x 16 bit » 32 bit Complex x 16 bit Real

## Overview

32 bit complex by 16 bit real using no conjugation

## Functions
v4cacc80 | lmac4_sym (v4cacc80 acc, v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-accumulate intrinsic function with pre-add from x input buffer .
v4cacc80 | lmac4_sym (v4cacc80 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-accumulate intrinsic function with pre-add from x input buffer using small X input buffer.
v4cacc80 | lmac4_sym (v4cacc80 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8cint32 ybuff, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-accumulate intrinsic function with pre-add from x and y input buffers using small X input buffer.
v4cacc80 | lmsc4_sym (v4cacc80 acc, v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-subtract intrinsic function with pre-add from x input buffer .
v4cacc80 | lmsc4_sym (v4cacc80 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-subtract intrinsic function with pre-add from x input buffer using small X input buffer.
v4cacc80 | lmsc4_sym (v4cacc80 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8cint32 ybuff, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-subtract intrinsic function with pre-add from x and y input buffers using small X input buffer.
v4cacc80 | lmul4_sym (v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply intrinsic function with pre-add from x input buffer .
v4cacc80 | lmul4_sym (v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply intrinsic function with pre-add from x input buffer using small X input buffer.
v4cacc80 | lmul4_sym (v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8cint32 ybuff, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply intrinsic function with pre-add from x and y input buffers using small X input buffer.
v4cacc80 | lnegmul4_sym (v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-negate intrinsic function with pre-add from x input buffer .
v4cacc80 | lnegmul4_sym (v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-negate intrinsic function with pre-add from x input buffer using small X input buffer.
v4cacc80 | lnegmul4_sym (v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8cint32 ybuff, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-negate intrinsic function with pre-add from x and y input buffers using small X input buffer.
v4cacc48 | mac4_sym (v4cacc48 acc, v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-accumulate intrinsic function with pre-add from x input buffer .
v4cacc48 | mac4_sym (v4cacc48 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-accumulate intrinsic function with pre-add from x input buffer using small X input buffer.
v4cacc48 | mac4_sym (v4cacc48 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8cint32 ybuff, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-accumulate intrinsic function with pre-add from x and y input buffers using small X input buffer.
v8cacc48 | mac8_sym (v8cacc48 acc, v16cint32 xbuff, int xstart, unsigned int xoffsets, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets)
| Complex symetric multiply-accumulate intrinsic function with pre-add from x input buffer .
v8cacc48 | mac8_sym (v8cacc48 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets)
| Complex symetric multiply-accumulate intrinsic function with pre-add from x input buffer using small X input buffer.
v8cacc48 | mac8_sym (v8cacc48 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, v8cint32 ybuff, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets)
| Complex symetric multiply-accumulate intrinsic function with pre-add from x and y input buffers using small X input buffer.
v4cacc48 | msc4_sym (v4cacc48 acc, v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-subtract intrinsic function with pre-add from x input buffer .
v4cacc48 | msc4_sym (v4cacc48 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-subtract intrinsic function with pre-add from x input buffer using small X input buffer.
v4cacc48 | msc4_sym (v4cacc48 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8cint32 ybuff, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-subtract intrinsic function with pre-add from x and y input buffers using small X input buffer.
v8cacc48 | msc8_sym (v8cacc48 acc, v16cint32 xbuff, int xstart, unsigned int xoffsets, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets)
| Complex symetric multiply-subtract intrinsic function with pre-add from x input buffer .
v8cacc48 | msc8_sym (v8cacc48 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets)
| Complex symetric multiply-subtract intrinsic function with pre-add from x input buffer using small X input buffer.
v8cacc48 | msc8_sym (v8cacc48 acc, v8cint32 xbuff, int xstart, unsigned int xoffsets, v8cint32 ybuff, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets)
| Complex symetric multiply-subtract intrinsic function with pre-add from x and y input buffers using small X input buffer.
v4cacc48 | mul4_sym (v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply intrinsic function with pre-add from x input buffer .
v4cacc48 | mul4_sym (v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply intrinsic function with pre-add from x input buffer using small X input buffer.
v4cacc48 | mul4_sym (v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8cint32 ybuff, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply intrinsic function with pre-add from x and y input buffers using small X input buffer.
v8cacc48 | mul8_sym (v16cint32 xbuff, int xstart, unsigned int xoffsets, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets)
| Complex symetric multiply intrinsic function with pre-add from x input buffer .
v8cacc48 | mul8_sym (v8cint32 xbuff, int xstart, unsigned int xoffsets, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets)
| Complex symetric multiply intrinsic function with pre-add from x input buffer using small X input buffer.
v8cacc48 | mul8_sym (v8cint32 xbuff, int xstart, unsigned int xoffsets, v8cint32 ybuff, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets)
| Complex symetric multiply intrinsic function with pre-add from x and y input buffers using small X input buffer.
v4cacc48 | negmul4_sym (v16cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-negate intrinsic function with pre-add from x input buffer .
v4cacc48 | negmul4_sym (v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-negate intrinsic function with pre-add from x input buffer using small X input buffer.
v4cacc48 | negmul4_sym (v8cint32 xbuff, int xstart, unsigned int xoffsets, int xstep, v8cint32 ybuff, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-negate intrinsic function with pre-add from x and y input buffers using small X input buffer.
v8cacc48 | negmul8_sym (v16cint32 xbuff, int xstart, unsigned int xoffsets, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets)
| Complex symetric multiply-negate intrinsic function with pre-add from x input buffer .
v8cacc48 | negmul8_sym (v8cint32 xbuff, int xstart, unsigned int xoffsets, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets)
| Complex symetric multiply-negate intrinsic function with pre-add from x input buffer using small X input buffer.
v8cacc48 | negmul8_sym (v8cint32 xbuff, int xstart, unsigned int xoffsets, v8cint32 ybuff, int ystart, v16int16 zbuff, int zstart, unsigned int zoffsets)
| Complex symetric multiply-negate intrinsic function with pre-add from x and y input buffers using small X input buffer.

## Function Documentation

## ◆ lmac4_sym() [1/3]

v4cacc80 lmac4_sym | ( | v4cacc80 | acc,
|  | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-accumulate intrinsic function with pre-add from x input buffer .

acc0 += z00*(x00 + y00) + z01*(x01 + y01)
acc1 += z10*(x10 + y10) + z11*(x11 + y11)
acc2 += z20*(x20 + y20) + z21*(x21 + y21)
acc3 += z30*(x30 + y30) + z31*(x31 + y31)

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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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_sym() [2/3]

v4cacc80 lmac4_sym | ( | v4cacc80 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-accumulate intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 += z00*(x00 + y00) + z01*(x01 + y01)
acc1 += z10*(x10 + y10) + z11*(x11 + y11)
acc2 += z20*(x20 + y20) + z21*(x21 + y21)
acc3 += z30*(x30 + y30) + z31*(x31 + y31)

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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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_sym() [3/3]

v4cacc80 lmac4_sym | ( | v4cacc80 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | v8cint32 | ybuff,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-accumulate intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 += z00*(x00 + y00) + z01*(x01 + y01)
acc1 += z10*(x10 + y10) + z11*(x11 + y11)
acc2 += z20*(x20 + y20) + z21*(x21 + y21)
acc3 += z30*(x30 + y30) + z31*(x31 + y31)

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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ybuff | Right input buffer of 8 elements of type cint32
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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_sym() [1/3]

v4cacc80 lmsc4_sym | ( | v4cacc80 | acc,
|  | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-subtract intrinsic function with pre-add from x input buffer .

acc0 -= z00*(x00 + y00) + z01*(x01 + y01)
acc1 -= z10*(x10 + y10) + z11*(x11 + y11)
acc2 -= z20*(x20 + y20) + z21*(x21 + y21)
acc3 -= z30*(x30 + y30) + z31*(x31 + y31)

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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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_sym() [2/3]

v4cacc80 lmsc4_sym | ( | v4cacc80 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-subtract intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 -= z00*(x00 + y00) + z01*(x01 + y01)
acc1 -= z10*(x10 + y10) + z11*(x11 + y11)
acc2 -= z20*(x20 + y20) + z21*(x21 + y21)
acc3 -= z30*(x30 + y30) + z31*(x31 + y31)

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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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_sym() [3/3]

v4cacc80 lmsc4_sym | ( | v4cacc80 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | v8cint32 | ybuff,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-subtract intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 -= z00*(x00 + y00) + z01*(x01 + y01)
acc1 -= z10*(x10 + y10) + z11*(x11 + y11)
acc2 -= z20*(x20 + y20) + z21*(x21 + y21)
acc3 -= z30*(x30 + y30) + z31*(x31 + y31)

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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ybuff | Right input buffer of 8 elements of type cint32
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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_sym() [1/3]

v4cacc80 lmul4_sym | ( | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply intrinsic function with pre-add from x input buffer .

acc0 = z00*(x00 + y00) + z01*(x01 + y01)
acc1 = z10*(x10 + y10) + z11*(x11 + y11)
acc2 = z20*(x20 + y20) + z21*(x21 + y21)
acc3 = z30*(x30 + y30) + z31*(x31 + y31)

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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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_sym() [2/3]

v4cacc80 lmul4_sym | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 = z00*(x00 + y00) + z01*(x01 + y01)
acc1 = z10*(x10 + y10) + z11*(x11 + y11)
acc2 = z20*(x20 + y20) + z21*(x21 + y21)
acc3 = z30*(x30 + y30) + z31*(x31 + y31)

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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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_sym() [3/3]

v4cacc80 lmul4_sym | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | v8cint32 | ybuff,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 = z00*(x00 + y00) + z01*(x01 + y01)
acc1 = z10*(x10 + y10) + z11*(x11 + y11)
acc2 = z20*(x20 + y20) + z21*(x21 + y21)
acc3 = z30*(x30 + y30) + z31*(x31 + y31)

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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ybuff | Right input buffer of 8 elements of type cint32
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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_sym() [1/3]

v4cacc80 lnegmul4_sym | ( | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-negate intrinsic function with pre-add from x input buffer .

acc0 = -( z00*(x00 + y00) + z01*(x01 + y01) )
acc1 = -( z10*(x10 + y10) + z11*(x11 + y11) )
acc2 = -( z20*(x20 + y20) + z21*(x21 + y21) )
acc3 = -( z30*(x30 + y30) + z31*(x31 + y31) )

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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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_sym() [2/3]

v4cacc80 lnegmul4_sym | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-negate intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 = -( z00*(x00 + y00) + z01*(x01 + y01) )
acc1 = -( z10*(x10 + y10) + z11*(x11 + y11) )
acc2 = -( z20*(x20 + y20) + z21*(x21 + y21) )
acc3 = -( z30*(x30 + y30) + z31*(x31 + y31) )

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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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_sym() [3/3]

v4cacc80 lnegmul4_sym | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | v8cint32 | ybuff,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-negate intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 = -( z00*(x00 + y00) + z01*(x01 + y01) )
acc1 = -( z10*(x10 + y10) + z11*(x11 + y11) )
acc2 = -( z20*(x20 + y20) + z21*(x21 + y21) )
acc3 = -( z30*(x30 + y30) + z31*(x31 + y31) )

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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ybuff | Right input buffer of 8 elements of type cint32
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ mac4_sym() [1/3]

v4cacc48 mac4_sym | ( | v4cacc48 | acc,
|  | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-accumulate intrinsic function with pre-add from x input buffer .

acc0 += z00*(x00 + y00) + z01*(x01 + y01)
acc1 += z10*(x10 + y10) + z11*(x11 + y11)
acc2 += z20*(x20 + y20) + z21*(x21 + y21)
acc3 += z30*(x30 + y30) + z31*(x31 + y31)

Returns
  Returned accumulation vector (4 x cint48 lanes)

Parameters

  acc | Incoming accumulation vector (4 x cint48 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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ mac4_sym() [2/3]

v4cacc48 mac4_sym | ( | v4cacc48 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-accumulate intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 += z00*(x00 + y00) + z01*(x01 + y01)
acc1 += z10*(x10 + y10) + z11*(x11 + y11)
acc2 += z20*(x20 + y20) + z21*(x21 + y21)
acc3 += z30*(x30 + y30) + z31*(x31 + y31)

Returns
  Returned accumulation vector (4 x cint48 lanes)

Parameters

  acc | Incoming accumulation vector (4 x cint48 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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ mac4_sym() [3/3]

v4cacc48 mac4_sym | ( | v4cacc48 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | v8cint32 | ybuff,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-accumulate intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 += z00*(x00 + y00) + z01*(x01 + y01)
acc1 += z10*(x10 + y10) + z11*(x11 + y11)
acc2 += z20*(x20 + y20) + z21*(x21 + y21)
acc3 += z30*(x30 + y30) + z31*(x31 + y31)

Returns
  Returned accumulation vector (4 x cint48 lanes)

Parameters

  acc | Incoming accumulation vector (4 x cint48 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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ybuff | Right input buffer of 8 elements of type cint32
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ mac8_sym() [1/3]

v8cacc48 mac8_sym | ( | v8cacc48 | acc,
|  | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets )

Complex symetric multiply-accumulate intrinsic function with pre-add from x input buffer .

acc0 += z00*(x00 + y00)
acc1 += z10*(x10 + y10)
acc2 += z20*(x20 + y20)
acc3 += z30*(x30 + y30)
acc4 += z40*(x40 + y40)
acc5 += z50*(x50 + y50)
acc6 += z60*(x60 + y60)
acc7 += z70*(x70 + y70)

Returns
  Returned accumulation vector (8 x cint48 lanes)

Parameters

  acc | Incoming accumulation vector (8 x cint48 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 both x and y buffers. LSB apply to first lane
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ mac8_sym() [2/3]

v8cacc48 mac8_sym | ( | v8cacc48 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets )

Complex symetric multiply-accumulate intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 += z00*(x00 + y00)
acc1 += z10*(x10 + y10)
acc2 += z20*(x20 + y20)
acc3 += z30*(x30 + y30)
acc4 += z40*(x40 + y40)
acc5 += z50*(x50 + y50)
acc6 += z60*(x60 + y60)
acc7 += z70*(x70 + y70)

Returns
  Returned accumulation vector (8 x cint48 lanes)

Parameters

  acc | Incoming accumulation vector (8 x cint48 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 both x and y buffers. LSB apply to first lane
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ mac8_sym() [3/3]

v8cacc48 mac8_sym | ( | v8cacc48 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | v8cint32 | ybuff,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets )

Complex symetric multiply-accumulate intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 += z00*(x00 + y00)
acc1 += z10*(x10 + y10)
acc2 += z20*(x20 + y20)
acc3 += z30*(x30 + y30)
acc4 += z40*(x40 + y40)
acc5 += z50*(x50 + y50)
acc6 += z60*(x60 + y60)
acc7 += z70*(x70 + y70)

Returns
  Returned accumulation vector (8 x cint48 lanes)

Parameters

  acc | Incoming accumulation vector (8 x cint48 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 both x and y buffers. LSB apply to first lane
  ybuff | Right input buffer of 8 elements of type cint32
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ msc4_sym() [1/3]

v4cacc48 msc4_sym | ( | v4cacc48 | acc,
|  | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-subtract intrinsic function with pre-add from x input buffer .

acc0 -= z00*(x00 + y00) + z01*(x01 + y01)
acc1 -= z10*(x10 + y10) + z11*(x11 + y11)
acc2 -= z20*(x20 + y20) + z21*(x21 + y21)
acc3 -= z30*(x30 + y30) + z31*(x31 + y31)

Returns
  Returned accumulation vector (4 x cint48 lanes)

Parameters

  acc | Incoming accumulation vector (4 x cint48 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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ msc4_sym() [2/3]

v4cacc48 msc4_sym | ( | v4cacc48 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-subtract intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 -= z00*(x00 + y00) + z01*(x01 + y01)
acc1 -= z10*(x10 + y10) + z11*(x11 + y11)
acc2 -= z20*(x20 + y20) + z21*(x21 + y21)
acc3 -= z30*(x30 + y30) + z31*(x31 + y31)

Returns
  Returned accumulation vector (4 x cint48 lanes)

Parameters

  acc | Incoming accumulation vector (4 x cint48 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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ msc4_sym() [3/3]

v4cacc48 msc4_sym | ( | v4cacc48 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | v8cint32 | ybuff,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-subtract intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 -= z00*(x00 + y00) + z01*(x01 + y01)
acc1 -= z10*(x10 + y10) + z11*(x11 + y11)
acc2 -= z20*(x20 + y20) + z21*(x21 + y21)
acc3 -= z30*(x30 + y30) + z31*(x31 + y31)

Returns
  Returned accumulation vector (4 x cint48 lanes)

Parameters

  acc | Incoming accumulation vector (4 x cint48 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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ybuff | Right input buffer of 8 elements of type cint32
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ msc8_sym() [1/3]

v8cacc48 msc8_sym | ( | v8cacc48 | acc,
|  | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets )

Complex symetric multiply-subtract intrinsic function with pre-add from x input buffer .

acc0 -= z00*(x00 + y00)
acc1 -= z10*(x10 + y10)
acc2 -= z20*(x20 + y20)
acc3 -= z30*(x30 + y30)
acc4 -= z40*(x40 + y40)
acc5 -= z50*(x50 + y50)
acc6 -= z60*(x60 + y60)
acc7 -= z70*(x70 + y70)

Returns
  Returned accumulation vector (8 x cint48 lanes)

Parameters

  acc | Incoming accumulation vector (8 x cint48 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 both x and y buffers. LSB apply to first lane
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ msc8_sym() [2/3]

v8cacc48 msc8_sym | ( | v8cacc48 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets )

Complex symetric multiply-subtract intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 -= z00*(x00 + y00)
acc1 -= z10*(x10 + y10)
acc2 -= z20*(x20 + y20)
acc3 -= z30*(x30 + y30)
acc4 -= z40*(x40 + y40)
acc5 -= z50*(x50 + y50)
acc6 -= z60*(x60 + y60)
acc7 -= z70*(x70 + y70)

Returns
  Returned accumulation vector (8 x cint48 lanes)

Parameters

  acc | Incoming accumulation vector (8 x cint48 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 both x and y buffers. LSB apply to first lane
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ msc8_sym() [3/3]

v8cacc48 msc8_sym | ( | v8cacc48 | acc,
|  | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | v8cint32 | ybuff,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets )

Complex symetric multiply-subtract intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 -= z00*(x00 + y00)
acc1 -= z10*(x10 + y10)
acc2 -= z20*(x20 + y20)
acc3 -= z30*(x30 + y30)
acc4 -= z40*(x40 + y40)
acc5 -= z50*(x50 + y50)
acc6 -= z60*(x60 + y60)
acc7 -= z70*(x70 + y70)

Returns
  Returned accumulation vector (8 x cint48 lanes)

Parameters

  acc | Incoming accumulation vector (8 x cint48 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 both x and y buffers. LSB apply to first lane
  ybuff | Right input buffer of 8 elements of type cint32
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ mul4_sym() [1/3]

v4cacc48 mul4_sym | ( | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply intrinsic function with pre-add from x input buffer .

acc0 = z00*(x00 + y00) + z01*(x01 + y01)
acc1 = z10*(x10 + y10) + z11*(x11 + y11)
acc2 = z20*(x20 + y20) + z21*(x21 + y21)
acc3 = z30*(x30 + y30) + z31*(x31 + y31)

Returns
  Returned accumulation vector (4 x cint48 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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ mul4_sym() [2/3]

v4cacc48 mul4_sym | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 = z00*(x00 + y00) + z01*(x01 + y01)
acc1 = z10*(x10 + y10) + z11*(x11 + y11)
acc2 = z20*(x20 + y20) + z21*(x21 + y21)
acc3 = z30*(x30 + y30) + z31*(x31 + y31)

Returns
  Returned accumulation vector (4 x cint48 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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ mul4_sym() [3/3]

v4cacc48 mul4_sym | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | v8cint32 | ybuff,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 = z00*(x00 + y00) + z01*(x01 + y01)
acc1 = z10*(x10 + y10) + z11*(x11 + y11)
acc2 = z20*(x20 + y20) + z21*(x21 + y21)
acc3 = z30*(x30 + y30) + z31*(x31 + y31)

Returns
  Returned accumulation vector (4 x cint48 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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ybuff | Right input buffer of 8 elements of type cint32
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ mul8_sym() [1/3]

v8cacc48 mul8_sym | ( | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets )

Complex symetric multiply intrinsic function with pre-add from x input buffer .

acc0 = z00*(x00 + y00)
acc1 = z10*(x10 + y10)
acc2 = z20*(x20 + y20)
acc3 = z30*(x30 + y30)
acc4 = z40*(x40 + y40)
acc5 = z50*(x50 + y50)
acc6 = z60*(x60 + y60)
acc7 = z70*(x70 + y70)

Returns
  Returned accumulation vector (8 x cint48 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 both x and y buffers. LSB apply to first lane
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ mul8_sym() [2/3]

v8cacc48 mul8_sym | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets )

Complex symetric multiply intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 = z00*(x00 + y00)
acc1 = z10*(x10 + y10)
acc2 = z20*(x20 + y20)
acc3 = z30*(x30 + y30)
acc4 = z40*(x40 + y40)
acc5 = z50*(x50 + y50)
acc6 = z60*(x60 + y60)
acc7 = z70*(x70 + y70)

Returns
  Returned accumulation vector (8 x cint48 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 both x and y buffers. LSB apply to first lane
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ mul8_sym() [3/3]

v8cacc48 mul8_sym | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | v8cint32 | ybuff,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets )

Complex symetric multiply intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 = z00*(x00 + y00)
acc1 = z10*(x10 + y10)
acc2 = z20*(x20 + y20)
acc3 = z30*(x30 + y30)
acc4 = z40*(x40 + y40)
acc5 = z50*(x50 + y50)
acc6 = z60*(x60 + y60)
acc7 = z70*(x70 + y70)

Returns
  Returned accumulation vector (8 x cint48 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 both x and y buffers. LSB apply to first lane
  ybuff | Right input buffer of 8 elements of type cint32
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ negmul4_sym() [1/3]

v4cacc48 negmul4_sym | ( | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-negate intrinsic function with pre-add from x input buffer .

acc0 = -( z00*(x00 + y00) + z01*(x01 + y01) )
acc1 = -( z10*(x10 + y10) + z11*(x11 + y11) )
acc2 = -( z20*(x20 + y20) + z21*(x21 + y21) )
acc3 = -( z30*(x30 + y30) + z31*(x31 + y31) )

Returns
  Returned accumulation vector (4 x cint48 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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ negmul4_sym() [2/3]

v4cacc48 negmul4_sym | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-negate intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 = -( z00*(x00 + y00) + z01*(x01 + y01) )
acc1 = -( z10*(x10 + y10) + z11*(x11 + y11) )
acc2 = -( z20*(x20 + y20) + z21*(x21 + y21) )
acc3 = -( z30*(x30 + y30) + z31*(x31 + y31) )

Returns
  Returned accumulation vector (4 x cint48 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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ negmul4_sym() [3/3]

v4cacc48 negmul4_sym | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | xstep,
|  | v8cint32 | ybuff,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-negate intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 = -( z00*(x00 + y00) + z01*(x01 + y01) )
acc1 = -( z10*(x10 + y10) + z11*(x11 + y11) )
acc2 = -( z20*(x20 + y20) + z21*(x21 + y21) )
acc3 = -( z30*(x30 + y30) + z31*(x31 + y31) )

Returns
  Returned accumulation vector (4 x cint48 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 both x and y buffers. LSB apply to first lane
  xstep | Step between each column for selection in the x and y buffers. Ystep is symmetric to xstep (ystep advances by -xstep).
  ybuff | Right input buffer of 8 elements of type cint32
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ negmul8_sym() [1/3]

v8cacc48 negmul8_sym | ( | v16cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets )

Complex symetric multiply-negate intrinsic function with pre-add from x input buffer .

acc0 = -( z00*(x00 + y00) )
acc1 = -( z10*(x10 + y10) )
acc2 = -( z20*(x20 + y20) )
acc3 = -( z30*(x30 + y30) )
acc4 = -( z40*(x40 + y40) )
acc5 = -( z50*(x50 + y50) )
acc6 = -( z60*(x60 + y60) )
acc7 = -( z70*(x70 + y70) )

Returns
  Returned accumulation vector (8 x cint48 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 both x and y buffers. LSB apply to first lane
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ negmul8_sym() [2/3]

v8cacc48 negmul8_sym | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets )

Complex symetric multiply-negate intrinsic function with pre-add from x input buffer using small X input buffer.

acc0 = -( z00*(x00 + y00) )
acc1 = -( z10*(x10 + y10) )
acc2 = -( z20*(x20 + y20) )
acc3 = -( z30*(x30 + y30) )
acc4 = -( z40*(x40 + y40) )
acc5 = -( z50*(x50 + y50) )
acc6 = -( z60*(x60 + y60) )
acc7 = -( z70*(x70 + y70) )

Returns
  Returned accumulation vector (8 x cint48 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 both x and y buffers. LSB apply to first lane
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.

## ◆ negmul8_sym() [3/3]

v8cacc48 negmul8_sym | ( | v8cint32 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | v8cint32 | ybuff,
|  | int | ystart,
|  | v16int16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets )

Complex symetric multiply-negate intrinsic function with pre-add from x and y input buffers using small X input buffer.

acc0 = -( z00*(x00 + y00) )
acc1 = -( z10*(x10 + y10) )
acc2 = -( z20*(x20 + y20) )
acc3 = -( z30*(x30 + y30) )
acc4 = -( z40*(x40 + y40) )
acc5 = -( z50*(x50 + y50) )
acc6 = -( z60*(x60 + y60) )
acc7 = -( z70*(x70 + y70) )

Returns
  Returned accumulation vector (8 x cint48 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 both x and y buffers. LSB apply to first lane
  ybuff | Right input buffer of 8 elements of type cint32
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  zbuff | Input buffer of 16 elements of type int16
  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.