There is a limited set of intrinsics with which a multitude of operations can be performed. All of them return either a vector<float,8>
or vector<cfloat,4>
, 256-bit vectors.
The basic addition, subtraction, and negation functions are as follows:
fpadd
fpadd_abs
fpsub
fpsub_abs
fpneg
fpneg_abs
fpabs
The simple multiplier function is available with the following options:
fpmul
fpabs_mul
fpneg_mul
fpneg_abs_mul
The multiplication accumulation/subtraction function has the following options:
fpmac
fpmac_abs
fpmsc
fpmsc_abs
On top of these various intrinsics, you have a fully configurable version multiplier and multiply-accumulate:
fpmul_conf
fpmac_conf