Skip to content

vector.fmai

vector dialect

Lanewise fused integer multiply-add a*b + c over same-typed vector operands. Optional overflow flags state required no-wrap facts for every lane.

Operation contract

Property Value
Semantic phase executable
Traits Pure, Elementwise

Signature

Kind Name Type Cardinality Description
Operand a vector required
Operand b vector required
Operand c vector required
Result result vector required
Attribute overflow flags IntOverflowFlags optional

Verification constraints

  • HasIntegerElement(result)
  • SameType(a, b, c, result)

Examples

%r = vector.fmai %a, %b, %c : vector<16xi32>