| AI Engine Intrinsics User Guide (v2026.1)

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

## Overview

16 bit complex by 16 bit complex using X buffer conjugation

## Functions
v4cacc48 | mac4_sym_ct_cn (v4cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-accumulate intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x input buffer using small X input buffer.
v4cacc48 | mac4_sym_ct_cn (v4cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, v16cint16 ybuff, int ystart, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-accumulate intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x and y input buffers using small X input buffer.
v4cacc48 | mac4_sym_ct_cn (v4cacc48 acc, v32cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-accumulate intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x input buffer .
v4cacc48 | msc4_sym_ct_cn (v4cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-subtract intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x input buffer using small X input buffer.
v4cacc48 | msc4_sym_ct_cn (v4cacc48 acc, v16cint16 xbuff, int xstart, unsigned int xoffsets, v16cint16 ybuff, int ystart, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-subtract intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x and y input buffers using small X input buffer.
v4cacc48 | msc4_sym_ct_cn (v4cacc48 acc, v32cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-subtract intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x input buffer .
v4cacc48 | mul4_sym_ct_cn (v16cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x input buffer using small X input buffer.
v4cacc48 | mul4_sym_ct_cn (v16cint16 xbuff, int xstart, unsigned int xoffsets, v16cint16 ybuff, int ystart, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x and y input buffers using small X input buffer.
v4cacc48 | mul4_sym_ct_cn (v32cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x input buffer .
v4cacc48 | negmul4_sym_ct_cn (v16cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-negate intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x input buffer using small X input buffer.
v4cacc48 | negmul4_sym_ct_cn (v16cint16 xbuff, int xstart, unsigned int xoffsets, v16cint16 ybuff, int ystart, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-negate intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x and y input buffers using small X input buffer.
v4cacc48 | negmul4_sym_ct_cn (v32cint16 xbuff, int xstart, unsigned int xoffsets, int ystart, unsigned int mtap, v8cint16 zbuff, int zstart, unsigned int zoffsets, int zstep)
| Complex symetric multiply-negate intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x input buffer .

## Function Documentation

## ◆ mac4_sym_ct_cn() [1/3]

v4cacc48 mac4_sym_ct_cn | ( | v4cacc48 | acc,
|  | v16cint16 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | unsigned int | mtap,
|  | v8cint16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

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

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

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 cint16
  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.
  mtap | Selector for partial pre-adding relative to xstart
  zbuff | Input buffer of 8 elements of type cint16
  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_ct_cn() [2/3]

v4cacc48 mac4_sym_ct_cn | ( | v4cacc48 | acc,
|  | v16cint16 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | v16cint16 | ybuff,
|  | int | ystart,
|  | unsigned int | mtap,
|  | v8cint16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

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

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

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 cint16
  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 16 elements of type cint16
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  mtap | Selector for partial pre-adding relative to xstart
  zbuff | Input buffer of 8 elements of type cint16
  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_ct_cn() [3/3]

v4cacc48 mac4_sym_ct_cn | ( | v4cacc48 | acc,
|  | v32cint16 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | unsigned int | mtap,
|  | v8cint16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-accumulate intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x input buffer .

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

Returns
  Returned accumulation vector (4 x cint48 lanes)

Parameters

  acc | Incoming accumulation vector (4 x cint48 lanes)
  xbuff | Input buffer of 32 elements of type cint16
  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.
  mtap | Selector for partial pre-adding relative to xstart
  zbuff | Input buffer of 8 elements of type cint16
  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_ct_cn() [1/3]

v4cacc48 msc4_sym_ct_cn | ( | v4cacc48 | acc,
|  | v16cint16 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | unsigned int | mtap,
|  | v8cint16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

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

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

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 cint16
  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.
  mtap | Selector for partial pre-adding relative to xstart
  zbuff | Input buffer of 8 elements of type cint16
  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_ct_cn() [2/3]

v4cacc48 msc4_sym_ct_cn | ( | v4cacc48 | acc,
|  | v16cint16 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | v16cint16 | ybuff,
|  | int | ystart,
|  | unsigned int | mtap,
|  | v8cint16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

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

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

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 cint16
  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 16 elements of type cint16
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  mtap | Selector for partial pre-adding relative to xstart
  zbuff | Input buffer of 8 elements of type cint16
  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_ct_cn() [3/3]

v4cacc48 msc4_sym_ct_cn | ( | v4cacc48 | acc,
|  | v32cint16 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | unsigned int | mtap,
|  | v8cint16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-subtract intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x input buffer .

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

Returns
  Returned accumulation vector (4 x cint48 lanes)

Parameters

  acc | Incoming accumulation vector (4 x cint48 lanes)
  xbuff | Input buffer of 32 elements of type cint16
  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.
  mtap | Selector for partial pre-adding relative to xstart
  zbuff | Input buffer of 8 elements of type cint16
  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_ct_cn() [1/3]

v4cacc48 mul4_sym_ct_cn | ( | v16cint16 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | unsigned int | mtap,
|  | v8cint16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

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

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

Returns
  Returned accumulation vector (4 x cint48 lanes)

Parameters

  xbuff | Input buffer of 16 elements of type cint16
  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.
  mtap | Selector for partial pre-adding relative to xstart
  zbuff | Input buffer of 8 elements of type cint16
  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_ct_cn() [2/3]

v4cacc48 mul4_sym_ct_cn | ( | v16cint16 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | v16cint16 | ybuff,
|  | int | ystart,
|  | unsigned int | mtap,
|  | v8cint16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

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

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

Returns
  Returned accumulation vector (4 x cint48 lanes)

Parameters

  xbuff | Input buffer of 16 elements of type cint16
  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 16 elements of type cint16
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  mtap | Selector for partial pre-adding relative to xstart
  zbuff | Input buffer of 8 elements of type cint16
  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_ct_cn() [3/3]

v4cacc48 mul4_sym_ct_cn | ( | v32cint16 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | unsigned int | mtap,
|  | v8cint16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x input buffer .

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

Returns
  Returned accumulation vector (4 x cint48 lanes)

Parameters

  xbuff | Input buffer of 32 elements of type cint16
  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.
  mtap | Selector for partial pre-adding relative to xstart
  zbuff | Input buffer of 8 elements of type cint16
  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_ct_cn() [1/3]

v4cacc48 negmul4_sym_ct_cn | ( | v16cint16 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | unsigned int | mtap,
|  | v8cint16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

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

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

Returns
  Returned accumulation vector (4 x cint48 lanes)

Parameters

  xbuff | Input buffer of 16 elements of type cint16
  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.
  mtap | Selector for partial pre-adding relative to xstart
  zbuff | Input buffer of 8 elements of type cint16
  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_ct_cn() [2/3]

v4cacc48 negmul4_sym_ct_cn | ( | v16cint16 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | v16cint16 | ybuff,
|  | int | ystart,
|  | unsigned int | mtap,
|  | v8cint16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

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

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

Returns
  Returned accumulation vector (4 x cint48 lanes)

Parameters

  xbuff | Input buffer of 16 elements of type cint16
  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 16 elements of type cint16
  ystart | Starting position offset applied to all lanes for input from Y buffer.
  mtap | Selector for partial pre-adding relative to xstart
  zbuff | Input buffer of 8 elements of type cint16
  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_ct_cn() [3/3]

v4cacc48 negmul4_sym_ct_cn | ( | v32cint16 | xbuff,
|  | int | xstart,
|  | unsigned int | xoffsets,
|  | int | ystart,
|  | unsigned int | mtap,
|  | v8cint16 | zbuff,
|  | int | zstart,
|  | unsigned int | zoffsets,
|  | int | zstep )

Complex symetric multiply-negate intrinsic function with center-tap optimization with x buffer conjugation with pre-add from x input buffer .

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

Returns
  Returned accumulation vector (4 x cint48 lanes)

Parameters

  xbuff | Input buffer of 32 elements of type cint16
  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.
  mtap | Selector for partial pre-adding relative to xstart
  zbuff | Input buffer of 8 elements of type cint16
  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.