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

Go to the source code of this file.

Classes

class  jlm::rvsdg::SimpleNode
 

Namespaces

 jlm
 
 jlm::rvsdg
 

Functions

std::optional< std::vector< rvsdg::Output * > > jlm::rvsdg::NormalizeSimpleOperationCommonNodeElimination (Region &region, const SimpleOperation &operation, const std::vector< rvsdg::Output * > &operands)
 Performs common node elimination for a given operation and operands in a region. More...
 
template<typename OperatorType , typename... OperatorArguments>
SimpleNode & jlm::rvsdg::CreateOpNode (const std::vector< Output * > &operands, OperatorArguments... operatorArguments)
 Creates a simple node characterized by its operator. More...
 
template<typename OperatorType , typename... OperatorArguments>
SimpleNode & jlm::rvsdg::CreateOpNode (Region &region, OperatorArguments... operatorArguments)
 Creates a simple node characterized by its operator. More...
 
template<typename TOperation >
std::pair< SimpleNode *, const TOperation * > jlm::rvsdg::TryGetSimpleNodeAndOptionalOp (const Input &input) noexcept
 Checks if this is an input to a SimpleNode and of specified operation type. More...
 
template<typename TOperation >
std::pair< SimpleNode *, const TOperation * > jlm::rvsdg::TryGetSimpleNodeAndOptionalOp (const Output &output) noexcept
 Checks if this is an output to a SimpleNode and of specified operation type. More...
 
template<typename TOperation >
std::pair< const SimpleNode *, const TOperation * > jlm::rvsdg::TryGetSimpleNodeAndOptionalOp (const Node &node) noexcept
 Checks if the node is a SimpleNode of the specified operation type. More...