Skip to content

kernel.async.gather.mask

kernel dialect

Predicated form of kernel.async.gather. False predicates perform no source or destination access for the current invocation but still produce a completed token, preserving a uniform async group shape for tails and guarded tiles.

Operation contract

Property Value
Semantic phase
Target contracts kernel.async
Memory effects read source, write dest

Signature

Kind Name Type Cardinality Description
Operand source view required Per-invocation global-like source fragment.
Operand dest view required Subgroup-uniform workgroup destination tile with a leading subgroup-lane axis.
Operand predicate i1 required Scalar predicate controlling this invocation's gather.
Result token any required Opaque async-copy token for the predicated gather.
Attribute cache_scope enum CacheScope required Required cache/coherency scope for the transfer.
Attribute cache_temporal enum CacheTemporal required Required temporal cache hint for the transfer.

Examples

%copy = kernel.async.gather.mask %src_lane to %lds_tile, %in_bounds {cache_scope = cu, cache_temporal = regular} : view<4xi8> to view<[%wave]x4xi8>, i1 -> kernel.async.token