Enum OutputKind¶
Defined in File ordered_schedule.hpp
Enum Documentation¶
-
enum class sequant::eval::OutputKind¶
The
OrderedScheduleIR — an ordered tree of loop blocks and build steps. Purely data + a structuralwell_formedcheck; the sequencer and executor live elsewhere (ordered_executor.hpp).OrderedSchedulethreads builds and child loop blocks through a single ordered sequence (ScopeBlock::steps): a value built after a child block in that sequence may read the child block’s accumulated output, so relative order among steps is load-bearing, not incidental — unlike an unordered per-scope bag of homed values, which cannot express that dependence.What happens to a value at the close of its home
ScopeBlock.Values:
-
enumerator Transient¶
the value’s home is this block; nothing carries out.
Note
a Transient value never appears in any block’s
outputslist — it is realized purely as a plainBuildStep, and an explicit Transientoutputsentry would double-produce it (violatingwell_formed'ssingle-producer check). Do not scanoutputsfor Transient; it is the absence of an escape output, not a recorded one.
-
enumerator AccumulateSum¶
reduction: summed into an outer accumulator
-
enumerator AccumulateScatter¶
loop-carried: scattered into a disjoint outer slice
-
enumerator Transient¶