Struct CellTableInputs¶
Defined in File cell_table_builder.hpp
Struct Documentation¶
-
struct CellTableInputs¶
Inputs to
build_cell_table:the finished ordered schedule plus the per-value callbacks the table derivation needs but does not itself own the source of (sliced-mode set, volatility, batch count of a loop instance).Public Members
-
OrderedSchedule const *ordered = nullptr¶
-
RichSchedule const *rich = nullptr¶
-
SlicedModeAssignment const *sliced = nullptr¶
the per-occurrence seam facts the reads loop consults; required.
-
std::function<bool(std::size_t)> volatile_of¶
-
std::function<container::svector<std::size_t>(std::size_t)> operands_of¶
Optional: the value’s direct operand value ids with repetition — one entry per leg of its production tree, so a value contracted with itself appears twice. Both
ordered_schedule_dep_graph'sdepends_onand theOrderedSchedule::operand_vidscopied from it de-duplicate their operand lists, and a de-duplicated list loses exactly the read the runtime does perform (a home access per leg); a caller that can see the production tree (the forest node’s two children, resolved back to value ids) supplies it here. When unset, the builder falls back to the de-duplicateddepends_onand a self-contracting consumer gets one read instead of two.
-
OrderedSchedule const *ordered = nullptr¶