mjplusplus  v0.4.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
firm::CommonSubexpressionEliminator Class Reference

#include <CommonSubexpressionEliminator.hpp>

Inheritance diagram for firm::CommonSubexpressionEliminator:
firm::GraphHandler

Public Member Functions

 CommonSubexpressionEliminator (ir_graph *irg)
 
virtual void handle (Node)
 
virtual void cleanUp (Node node)
 
- Public Member Functions inherited from firm::GraphHandler
 GraphHandler (ir_graph *irg)
 
void replaceNode (Node oldNode, Node newNode, bool keepTarval=false)
 
bool graphChanged () const
 
void processChildren (Node node, std::function< void(Node leftChild, Node rightChild)> fun)
 
bool tarvalIsZero (Tarval tarval)
 
shptr< std::set< ir_node * > > getNewNodes () const
 

Protected Member Functions

void handleConst (Node node)
 
void handleArithmetic (Node node)
 
- Protected Member Functions inherited from firm::GraphHandler
void markOutNodesAsNew (ir_node *node)
 

Protected Attributes

std::unordered_map< long int,
Node
const_Is_nodes
 
std::unordered_map< uint64_t,
Node
const_Lu_nodes
 
std::unordered_map< nodeInfo,
Node
comp_nodes
 
- Protected Attributes inherited from firm::GraphHandler
ir_graph * irg
 
shptr< std::set< ir_node * > > newNodes
 
bool changed
 

Constructor & Destructor Documentation

firm::CommonSubexpressionEliminator::CommonSubexpressionEliminator ( ir_graph *  irg)

Member Function Documentation

void firm::CommonSubexpressionEliminator::cleanUp ( Node  node)
virtual

Implements firm::GraphHandler.

void firm::CommonSubexpressionEliminator::handle ( Node  node)
virtual

Implements firm::GraphHandler.

void firm::CommonSubexpressionEliminator::handleArithmetic ( Node  node)
protected
void firm::CommonSubexpressionEliminator::handleConst ( Node  node)
protected

Member Data Documentation

std::unordered_map<nodeInfo, Node> firm::CommonSubexpressionEliminator::comp_nodes
protected
std::unordered_map<long int, Node> firm::CommonSubexpressionEliminator::const_Is_nodes
protected
std::unordered_map<uint64_t, Node> firm::CommonSubexpressionEliminator::const_Lu_nodes
protected

The documentation for this class was generated from the following files: