Jlm
Namespaces | Typedefs | Functions
NodeNormalization.hpp File Reference
#include <jlm/rvsdg/node.hpp>
#include <jlm/rvsdg/region.hpp>
#include <jlm/rvsdg/simple-node.hpp>
#include <jlm/util/common.hpp>
#include <functional>
#include <optional>
#include <vector>
Include dependency graph for NodeNormalization.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 jlm
 
 jlm::rvsdg
 

Typedefs

template<class TOperation >
using jlm::rvsdg::NodeNormalization = std::function< std::optional< std::vector< Output * > >(const TOperation &, const std::vector< Output * > &)>
 

Functions

template<class TOperation >
std::optional< std::vector< Output * > > jlm::rvsdg::NormalizeSequence (const std::vector< NodeNormalization< TOperation >> &nodeNormalizations, const TOperation &operation, const std::vector< Output * > &operands)
 
template<class TOperation >
bool jlm::rvsdg::ReduceNode (const NodeNormalization< TOperation > &nodeNormalization, SimpleNode &node)