|
Jlm
|
#include <NodeReduction.hpp>


Classes | |
| class | Statistics |
Public Member Functions | |
| ~NodeReduction () noexcept override | |
| NodeReduction () | |
| NodeReduction (const NodeReduction &)=delete | |
| NodeReduction (NodeReduction &&)=delete | |
| NodeReduction & | operator= (const NodeReduction &)=delete |
| NodeReduction & | operator= (NodeReduction &&)=delete |
| void | Run (rvsdg::RvsdgModule &rvsdgModule, util::StatisticsCollector &statisticsCollector) override |
| Perform RVSDG transformation. | |
Public Member Functions inherited from jlm::rvsdg::Transformation | |
| virtual | ~Transformation () noexcept |
| Transformation (std::string_view Name) | |
| const std::string_view & | GetName () const noexcept |
| void | Run (RvsdgModule &module) |
| Perform RVSDG transformation. | |
Private Member Functions | |
| void | ReduceNodesInRegion (rvsdg::Region ®ion) |
| bool | ReduceStructuralNode (rvsdg::StructuralNode &structuralNode) |
| bool | ReduceGammaNode (rvsdg::GammaNode &gammaNode) |
| bool | ReduceSimpleNode (rvsdg::SimpleNode &simpleNode) |
Private Attributes | |
| std::unique_ptr< Statistics > | Statistics_ |
The node reduction transformation performs a series of peephole optimizations in the RVSDG. The nodes in a region are visited top-down and reductions are performed until a fix-point is reached, i.e., until no peephole optimization can be applied any longer to any node in a region.
Definition at line 33 of file NodeReduction.hpp.
|
overridedefaultnoexcept |
| jlm::llvm::NodeReduction::NodeReduction | ( | ) |
Definition at line 293 of file NodeReduction.cpp.
|
delete |
|
delete |
|
delete |
|
delete |
|
private |
Definition at line 376 of file NodeReduction.cpp.
|
private |
Definition at line 314 of file NodeReduction.cpp.
|
private |
Definition at line 389 of file NodeReduction.cpp.
|
private |
Reduces the structural node structuralNode.
| structuralNode | The structural node that is supposed to be reduced. |
Definition at line 349 of file NodeReduction.cpp.
|
overridevirtual |
Perform RVSDG transformation.
| module | RVSDG module the transformation is performed on. |
| statisticsCollector | Statistics collector for collecting transformation statistics. |
Implements jlm::rvsdg::Transformation.
Definition at line 298 of file NodeReduction.cpp.
|
private |
Definition at line 77 of file NodeReduction.hpp.