Enum LoopRole¶
Defined in File legality.hpp
Enum Documentation¶
-
enum class sequant::eval::LoopRole¶
Legality analysis output types of the ordered scheduler: per-value classification of which batch-loop axes a value’s computation depends on, and whether it is legal to home the value at each such axis.
The role a batch-loop axis plays at one value (
analyze_legalityfillsCellLegality::per_axiswith these).Values:
-
enumerator LoopLocal¶
a carried axis some occurrence reads in lockstep, inside the loop instance that slices it: the value is built per batch there (and also escapes assembled when another occurrence reads it where that instance is not running, see
OccurrenceRole)
-
enumerator Reduction¶
the axis is summed (contracted) at or below the value
-
enumerator LoopCarried¶
a carried axis no occurrence reads in lockstep: the value is needed only assembled over it
-
enumerator LoopInvariant¶
the axis encloses the value but the value does not depend on it (a pure replication context)
-
enumerator LoopLocal¶