Skip to content

scalar.assume

scalar dialect

Identity with predicate constraints on scalar payload results. Use index.assume for index or offset values.

Operation contract

Property Value
Semantic phase
Traits Pure, FactIdentity

Signature

Kind Name Type Cardinality Description
Operand values payload_scalar variadic
Result results payload_scalar variadic
Attribute predicates predicate_list required

Verification constraints

  • VariadicValuesMatch(values, results)

Examples

%n2 = scalar.assume %n [mul(%n, 16)] : i64
%n2, %k2 = scalar.assume %n, %k [mul(%n, 16), lt(%k, 1024)] : i64, i64
%x2 = scalar.assume %x [finite(%x)] : f32