|
docc 0.8.3 (0d44999b)
C++ API Reference
|
Functions | |
| std::unique_ptr< StructuredSDFG > | cutout (sdfg::StructuredSDFG &sdfg, sdfg::analysis::AnalysisManager &analysis_manager, structured_control_flow::ControlFlowNode &node) |
| void | apply_cutout (builder::StructuredSDFGBuilder &builder, size_t element_id, StructuredSDFG &cutout_sdfg) |
| Replace the control-flow node with element_id in builder.subject() by the children of cutout_sdfg's root (the inverse of cutout). | |
| void sdfg::util::apply_cutout | ( | builder::StructuredSDFGBuilder & | builder, |
| size_t | element_id, | ||
| StructuredSDFG & | cutout_sdfg ) |
Replace the control-flow node with element_id in builder.subject() by the children of cutout_sdfg's root (the inverse of cutout).
Arguments and externals of cutout_sdfg keep their names so they bind to the target's containers; colliding transients are renamed and missing containers are added as transients, so the target's signature is preserved. Merged nodes receive fresh element ids from the target; each outermost merged loop records element_id as its source loop id.
| std::runtime_error | if no control-flow node with element_id exists or it has no parent scope. |
| std::unique_ptr< StructuredSDFG > sdfg::util::cutout | ( | sdfg::StructuredSDFG & | sdfg, |
| sdfg::analysis::AnalysisManager & | analysis_manager, | ||
| structured_control_flow::ControlFlowNode & | node ) |