6 #ifndef JLM_HLS_BACKEND_RVSDG2RHLS_DISTRIBUTE_CONSTANTS_HPP
7 #define JLM_HLS_BACKEND_RVSDG2RHLS_DISTRIBUTE_CONSTANTS_HPP
35 Run(rvsdg::
RvsdgModule & rvsdgModule, util::StatisticsCollector & statisticsCollector) override;
41 constantDistribution.
Run(rvsdgModule, statisticsCollector);
static void distributeConstantsInRootRegion(rvsdg::Region ®ion)
static util::HashSet< rvsdg::Output * > collectOutputs(const rvsdg::SimpleNode &constantNode)
static void distributeConstantsInLambda(const rvsdg::LambdaNode &lambdaNode)
void Run(rvsdg::RvsdgModule &rvsdgModule, util::StatisticsCollector &statisticsCollector) override
Perform RVSDG transformation.
~ConstantDistribution() noexcept override
static util::HashSet< rvsdg::SimpleNode * > collectConstants(rvsdg::Region ®ion)
static void CreateAndRun(rvsdg::RvsdgModule &rvsdgModule, util::StatisticsCollector &statisticsCollector)
Represent acyclic RVSDG subgraphs.