| AI Engine Intrinsics User Guide (v2026.1)

Loading...
Searching...
No Matches
Functions
Simple
Intrinsics » Vector Operations » MAC intrinsics » Self-Multiplication

## Overview

Simple intrinsics for buffer self-multiplication. For more information in lane selection please refer to here.

## Functions
v8acc48 | mac8 (v8acc48 acc, v8int16 xbuff)
| Self multiplication with accumulate on a single buffer (equivalent to lane by lane power of 2). For more information in lane selection please refer to here.
v8acc48 | mul8 (v8int16 xbuff)
| Self multiplication on a single buffer (equivalent to lane by lane power of 2). For more information in lane selection please refer to here.

## Without squares
These intrinsics have a default x/y square of 0x3210.
v8acc48 | mac8 (v8acc48 acc, v64int16 xbuff, int xstart, int xoffsets, int xstep, int zstart, int zoffsets, int zstep)
| Self multiplication with accumulate on a single buffer. For more information in lane selection please refer to here.
v8acc48 | mac8 (v8acc48 acc, v32int16 xbuff0, v32int16 xbuff1, int xstart, int xoffsets, int xstep, int zstart, int zoffsets, int zstep)
| Self multiplication with accumulate combining two buffers into one. For more information in lane selection please refer to here.
v8acc48 | mul8 (v64int16 xbuff, int xstart, int xoffsets, int xstep, int zstart, int zoffsets, int zstep)
| Self multiplication on a single buffer. For more information in lane selection please refer to here.

## Function Documentation

## ◆ mac8() [1/3]

v8acc48 mac8 | ( | v8acc48 | acc,
|  | v32int16 | xbuff0,
|  | v32int16 | xbuff1,
|  | int | xstart,
|  | int | xoffsets,
|  | int | xstep,
|  | int | zstart,
|  | int | zoffsets,
|  | int | zstep )

Self multiplication with accumulate combining two buffers into one. For more information in lane selection please refer to here.

## ◆ mac8() [2/3]

v8acc48 mac8 | ( | v8acc48 | acc,
|  | v64int16 | xbuff,
|  | int | xstart,
|  | int | xoffsets,
|  | int | xstep,
|  | int | zstart,
|  | int | zoffsets,
|  | int | zstep )

Self multiplication with accumulate on a single buffer. For more information in lane selection please refer to here.

## ◆ mac8() [3/3]

v8acc48 mac8 | ( | v8acc48 | acc,
|  | v8int16 | xbuff )

Self multiplication with accumulate on a single buffer (equivalent to lane by lane power of 2). For more information in lane selection please refer to here.

## ◆ mul8() [1/2]

v8acc48 mul8 | ( | v64int16 | xbuff,
|  | int | xstart,
|  | int | xoffsets,
|  | int | xstep,
|  | int | zstart,
|  | int | zoffsets,
|  | int | zstep )

Self multiplication on a single buffer. For more information in lane selection please refer to here.

## ◆ mul8() [2/2]

v8acc48 mul8 | ( | v8int16 | xbuff | ) |

Self multiplication on a single buffer (equivalent to lane by lane power of 2). For more information in lane selection please refer to here.