3#include <nlohmann/json_fwd.hpp>
32 virtual std::string
name()
const override;
39 virtual void to_json(nlohmann::json& j)
const override;
Note: Even though the class references unique_ptr, it will never delete an SDFG it has a reference to...
Definition structured_sdfg_builder.h:44
Simple computational operation in the dataflow graph.
Definition tasklet.h:348
virtual std::string name() const override
Get the name of this transformation.
virtual bool can_be_applied(builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager) override
Check if this transformation can be safely applied.
virtual void to_json(nlohmann::json &j) const override
Serialize this transformation to JSON.
data_flow::Tasklet * add() const
The fp_add tasklet created by apply(), or nullptr before.
const std::string & product() const
The transient scalar holding the product, empty before apply().
virtual void apply(builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager) override
Apply this transformation to the SDFG.
UnfuseFMA(data_flow::Tasklet &fma)
data_flow::Tasklet * multiply() const
The fp_mul tasklet created by apply(), or nullptr before.
static UnfuseFMA from_json(builder::StructuredSDFGBuilder &builder, const nlohmann::json &j)
Definition function_builder.h:10
Definition kernel_builder.h:18
Simple computational operations in the dataflow graph.